- 浏览: 304141 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (271)
- jBPM (0)
- WebService (10)
- Flex (0)
- RubyOnRails (1)
- Java (56)
- J2EE (2)
- SQL (5)
- Tapestry (2)
- Dom4j (1)
- Japanese (9)
- English (4)
- JavaScript (3)
- Ajax (12)
- MyDiary (3)
- Log4j (2)
- XML (3)
- UML (1)
- Struts (3)
- Others (8)
- Funny (7)
- ProjectManagement (3)
- Tomcat (1)
- Servlet&Jsp (6)
- Html (4)
- iBATIS (1)
- EasyMock (1)
- Astronomy (1)
- Biology (1)
- Food and Health (0)
最新评论
-
yet8telecom:
good
js数组 sort方法的分析 转自NorthSnow HOME -
imain:
最后的结果是:1,5,3,4,6,2
js数组 sort方法的分析 转自NorthSnow HOME -
lixiaoqing:
最后一个输出结果应该是3,5,1,4,2,6 吧?
js数组 sort方法的分析 转自NorthSnow HOME -
benxiaohai1212:
请问如果输入参数是数组array类型,怎么处理?谢谢!
实例讲解:JAVA SOAP技术 -
netdisk:
这个建议可以用在电子文档管理上
软件文档管理指南
public class CnToStrokeCount {
/**
* 测试
* @param args String[]
*/
public static void main(String[] args) {
String cnStr = "测试数据";
char[] chars = cnStr.toCharArray();
System.out.print("<" + cnStr + ">的笔画数分别是:");
for (int i = 0; i < chars.length; i++) {
System.out.print("*" + CnToStrokeCount.getStrokeCount(chars[i]));
}
System.out.println("*");
cnStr = "CSDN - 专家门诊 - Java";
chars = cnStr.toCharArray();
System.out.print("<" + cnStr + ">的笔画数分别是:");
for (int i = 0; i < chars.length; i++) {
System.out.print("*" + CnToStrokeCount.getStrokeCount(chars[i]));
}
System.out.println("*");
cnStr = "=====提问技巧,请大家注意!!=====";
chars = cnStr.toCharArray();
System.out.print("<" + cnStr + ">的笔画数分别是:");
for (int i = 0; i < chars.length; i++) {
System.out.print("*" + CnToStrokeCount.getStrokeCount(chars[i]));
}
System.out.println("*");
}
/**
* 根据汉字字符获得笔画数,拼音和非法字符默认为0
* @param charcator char
* @return int
*/
public static int getStrokeCount(char charcator) {
byte[] bytes = (String.valueOf(charcator)).getBytes();
if (bytes == null || bytes.length > 2 || bytes.length <= 0) {
//错误引用,非合法字符
return 0;
}
if (bytes.length == 1) {
//英文字符
return 0;
}
if (bytes.length == 2) {
//中文字符
int highByte = 256 + bytes[0];
int lowByte = 256 + bytes[1];
return getStrokeCount(highByte, lowByte);
}
//未知错误
return 0;
}
/**
*
* @param highByte int:高位字节
* @param lowByte int:低位字节
* @return int
*/
private static int getStrokeCount(int highByte, int lowByte) {
if (highByte < 0xB0 || highByte > 0xF7 || lowByte < 0xA1 || lowByte > 0xFE) {
//非GB2312合法字符
return -1;
}
int offset = (highByte - 0xB0) * (0xFE - 0xA0) + (lowByte - 0xA1);
return gb2312StrokeCount[offset];
}
//GB2312的字符集的笔划列表,可以参考gb2312字符全集
private static int[] gb2312StrokeCount = {
/* B0 */
10, 7, 10, 10, 8, 10, 9, 11,
17, 14, 13, 5, 13, 10, 12, 15,
10, 6, 10, 9, 13, 8, 10, 10,
8, 8, 10, 5, 10, 14, 16, 9,
12, 12, 15, 15, 7, 10, 5, 5,
7, 10, 2, 9, 4, 8, 12, 13,
7, 10, 7, 21, 10, 8, 5, 9,
6, 13, 8, 8, 9, 13, 12, 10,
13, 7, 10, 10, 8, 8, 7, 8,
7, 19, 5, 4, 8, 5, 9, 10,
14, 14, 9, 12, 15, 10, 15, 12,
12, 8, 9, 5, 15, 10,
/* B1 */
16, 13, 9, 12, 8, 8, 8, 7,
15, 10, 13, 19, 8, 13, 12, 8,
5, 12, 9, 4, 9, 10, 7, 8,
12, 12, 10, 8, 8, 5, 11, 11,
11, 9, 9, 18, 9, 12, 14, 4,
13, 10, 8, 14, 13, 14, 6, 10,
9, 4, 7, 13, 6, 11, 14, 5,
13, 16, 17, 16, 9, 18, 5, 12,
8, 9, 9, 8, 4, 16, 16, 17,
12, 9, 11, 15, 8, 19, 16, 7,
15, 11, 12, 16, 13, 10, 13, 7,
6, 9, 5, 8, 9, 9,
/* B2 */
10, 6, 8, 11, 15, 8, 10, 8,
12, 9, 13, 10, 14, 7, 8, 11,
11, 14, 12, 8, 7, 10, 2, 10,
7, 11, 4, 5, 7, 19, 10, 8,
17, 11, 12, 7, 3, 7, 12, 15,
8, 11, 11, 14, 16, 8, 10, 9,
11, 11, 7, 7, 10, 4, 7, 17,
16, 16, 15, 11, 9, 8, 12, 8,
5, 9, 7, 19, 12, 3, 9, 9,
9, 14, 12, 14, 7, 9, 8, 8,
10, 10, 12, 11, 14, 12, 11, 13,
11, 6, 11, 19, 8, 11,
/* B3 */
6, 9, 11, 4, 11, 7, 2, 12,
8, 11, 10, 12, 7, 9, 12, 15,
15, 11, 7, 8, 4, 7, 15, 12,
7, 15, 10, 6, 7, 6, 11, 7,
7, 7, 12, 8, 15, 10, 9, 16,
6, 7, 10, 12, 12, 15, 8, 8,
10, 10, 10, 6, 13, 9, 11, 6,
7, 6, 6, 10, 8, 8, 4, 7,
10, 5, 9, 6, 6, 6, 11, 8,
8, 13, 12, 14, 13, 13, 13, 4,
11, 14, 4, 10, 7, 5, 16, 12,
18, 12, 13, 12, 9, 13,
/* B4 */
10, 12, 24, 13, 13, 5, 12, 3,
9, 13, 7, 11, 12, 7, 9, 12,
15, 7, 6, 6, 7, 8, 11, 13,
8, 9, 13, 15, 10, 11, 7, 21,
18, 11, 11, 9, 14, 14, 13, 13,
10, 7, 6, 8, 12, 6, 15, 12,
7, 5, 4, 5, 11, 11, 15, 17,
9, 19, 16, 12, 14, 11, 13, 10,
13, 14, 11, 14, 7, 6, 3, 14,
15, 12, 11, 10, 13, 12, 6, 12,
14, 5, 3, 7, 4, 12, 17, 9,
9, 5, 9, 11, 9, 11,
/* B5 */
9, 10, 8, 4, 8, 10, 11, 9,
5, 12, 7, 11, 11, 8, 11, 11,
6, 9, 10, 9, 10, 2, 10, 17,
10, 7, 11, 6, 8, 15, 11, 12,
11, 15, 11, 8, 19, 6, 12, 12,
17, 14, 4, 12, 7, 14, 8, 10,
11, 7, 10, 14, 14, 8, 8, 6,
12, 11, 9, 7, 10, 12, 16, 11,
13, 13, 9, 8, 16, 9, 5, 7,
7, 8, 11, 12, 11, 13, 13, 5,
16, 10, 2, 11, 6, 8, 10, 12,
10, 14, 15, 8, 11, 13,
/* B6 */
2, 7, 5, 7, 8, 12, 13, 8,
4, 6, 5, 5, 12, 15, 6, 9,
8, 9, 7, 9, 11, 7, 4, 9,
7, 10, 12, 10, 13, 9, 12, 9,
10, 11, 13, 12, 7, 14, 7, 9,
12, 7, 14, 12, 14, 9, 11, 12,
11, 7, 4, 5, 15, 7, 19, 12,
10, 7, 9, 9, 12, 11, 9, 6,
6, 9, 13, 6, 13, 11, 8, 12,
11, 13, 10, 12, 9, 15, 6, 10,
10, 4, 7, 12, 11, 10, 10, 6,
2, 6, 5, 9, 9, 2,
/* B7 */
9, 5, 9, 12, 6, 4, 9, 8,
9, 18, 6, 12, 18, 15, 8, 8,
17, 3, 10, 4, 7, 8, 8, 5,
7, 7, 7, 7, 4, 8, 8, 6,
7, 6, 6, 7, 8, 11, 8, 11,
3, 8, 10, 10, 7, 8, 8, 8,
9, 7, 11, 7, 8, 4, 7, 7,
12, 7, 10, 8, 6, 8, 12, 12,
4, 9, 8, 13, 10, 12, 4, 9,
11, 10, 5, 13, 6, 8, 4, 7,
7, 4, 15, 8, 14, 7, 8, 13,
12, 9, 11, 6, 9, 8,
/* B8 */
10, 11, 13, 11, 5, 7, 7, 11,
10, 10, 8, 11, 12, 8, 14, 9,
11, 18, 12, 9, 12, 5, 8, 4,
13, 6, 12, 4, 7, 6, 13, 8,
15, 14, 8, 7, 13, 9, 11, 12,
3, 5, 7, 9, 9, 7, 10, 13,
8, 11, 21, 4, 6, 9, 9, 7,
7, 7, 12, 7, 16, 10, 10, 14,
10, 16, 13, 15, 15, 7, 10, 14,
12, 4, 11, 10, 8, 12, 9, 12,
10, 12, 9, 12, 11, 3, 6, 9,
10, 13, 10, 7, 8, 19,
/* B9 */
10, 10, 11, 3, 7, 5, 10, 11,
8, 10, 4, 9, 3, 6, 7, 9,
7, 6, 9, 4, 7, 8, 8, 9,
8, 8, 11, 12, 11, 8, 14, 7,
8, 8, 8, 13, 5, 11, 9, 7,
8, 9, 10, 8, 12, 8, 5, 9,
14, 9, 13, 8, 8, 8, 12, 6,
8, 9, 6, 14, 11, 23, 12, 20,
8, 6, 3, 10, 13, 8, 6, 11,
5, 7, 9, 6, 9, 8, 9, 10,
8, 13, 9, 8, 12, 13, 12, 12,
10, 8, 8, 14, 6, 9,
15, 9, 10, 10, 6, 10, 9, 12,
14, 7, 12, 7, 11, 12, 8, 12,
7, 16, 16, 10, 7, 16, 10, 11,
6, 5, 5, 8, 10, 17, 17, 14,
11, 9, 6, 10, 5, 10, 8, 12,
10, 11, 10, 5, 8, 7, 6, 11,
13, 9, 8, 11, 14, 14, 15, 9,
15, 12, 11, 9, 9, 9, 10, 7,
15, 16, 9, 8, 9, 10, 9, 11,
9, 7, 5, 6, 12, 9, 12, 7,
9, 10, 6, 8, 5, 8, 13, 10,
12, 9, 15, 8, 15, 12,
/* BB */
8, 8, 11, 7, 4, 7, 4, 7,
9, 6, 12, 12, 8, 6, 4, 8,
13, 9, 7, 11, 7, 6, 8, 10,
7, 12, 10, 11, 10, 12, 13, 11,
10, 9, 4, 9, 12, 11, 16, 15,
17, 9, 11, 12, 13, 10, 13, 9,
11, 6, 9, 12, 17, 9, 12, 6,
13, 10, 15, 5, 12, 11, 10, 11,
6, 10, 5, 6, 9, 9, 9, 8,
11, 13, 9, 11, 17, 9, 6, 4,
10, 8, 12, 16, 8, 11, 5, 6,
11, 6, 13, 15, 10, 14,
/* BC */
6, 5, 9, 16, 4, 7, 10, 11,
12, 6, 7, 12, 13, 20, 12, 3,
9, 10, 6, 7, 13, 6, 9, 2,
10, 3, 13, 7, 16, 8, 6, 11,
8, 11, 9, 11, 11, 4, 5, 9,
7, 7, 7, 10, 6, 14, 9, 6,
8, 10, 5, 9, 12, 10, 5, 10,
11, 15, 6, 9, 8, 13, 7, 10,
7, 6, 11, 7, 13, 10, 8, 8,
6, 12, 9, 11, 9, 14, 12, 8,
10, 13, 9, 11, 11, 9, 14, 13,
12, 9, 4, 13, 15, 6,
/* BD */
10, 10, 9, 8, 11, 12, 10, 8,
15, 9, 9, 10, 6, 19, 12, 10,
9, 6, 6, 13, 8, 15, 12, 17,
12, 10, 6, 8, 9, 9, 9, 20,
12, 11, 11, 8, 11, 9, 7, 9,
16, 9, 13, 11, 14, 10, 10, 5,
12, 12, 11, 9, 11, 12, 6, 14,
7, 5, 10, 8, 11, 13, 14, 9,
9, 13, 8, 7, 17, 7, 9, 10,
4, 9, 9, 8, 3, 12, 4, 8,
4, 9, 18, 10, 13, 4, 13, 7,
13, 10, 13, 7, 10, 10,
/* BE */
6, 7, 9, 14, 8, 13, 12, 16,
8, 11, 14, 13, 8, 4, 19, 12,
11, 14, 14, 12, 16, 8, 10, 13,
11, 10, 8, 9, 12, 12, 7, 5,
7, 9, 3, 7, 2, 10, 11, 11,
5, 6, 13, 8, 12, 8, 17, 8,
8, 10, 8, 8, 11, 7, 8, 9,
9, 8, 14, 7, 11, 4, 8, 11,
15, 13, 10, 5, 11, 8, 10, 10,
12, 10, 10, 11, 8, 10, 15, 23,
7, 11, 10, 17, 9, 6, 6, 9,
7, 11, 9, 6, 7, 10,
/* BF */
9, 12, 10, 9, 10, 12, 8, 5,
9, 4, 12, 13, 8, 12, 5, 12,
11, 7, 9, 9, 11, 14, 17, 6,
7, 4, 8, 6, 9, 10, 15, 8,
8, 9, 12, 15, 14, 9, 7, 9,
5, 12, 7, 8, 9, 10, 8, 11,
9, 10, 7, 7, 8, 10, 4, 11,
7, 3, 6, 11, 9, 10, 13, 8,
14, 7, 12, 6, 9, 9, 13, 10,
7, 13, 8, 7, 10, 12, 6, 12,
7, 10, 8, 11, 7, 7, 3, 11,
8, 13, 12, 9, 13, 11,
/* C0 */
12, 12, 12, 8, 8, 10, 7, 9,
6, 13, 12, 8, 8, 12, 14, 12,
14, 11, 10, 7, 13, 13, 11, 9,
8, 16, 12, 5, 15, 14, 12, 9,
16, 12, 9, 13, 11, 12, 10, 11,
8, 10, 10, 10, 7, 7, 6, 8,
9, 13, 10, 10, 11, 5, 13, 18,
16, 15, 11, 17, 9, 16, 6, 9,
8, 12, 13, 7, 9, 11, 11, 15,
16, 10, 10, 13, 11, 7, 7, 15,
5, 10, 9, 6, 10, 7, 5, 7,
10, 4, 7, 12, 8, 9,
/* C1 */
12, 5, 11, 7, 8, 2, 14, 10,
9, 12, 10, 7, 18, 13, 8, 10,
8, 11, 11, 12, 10, 9, 8, 13,
10, 11, 13, 7, 7, 11, 12, 12,
9, 10, 15, 11, 14, 7, 16, 14,
5, 15, 2, 14, 17, 14, 10, 6,
12, 10, 6, 11, 12, 8, 17, 16,
9, 7, 20, 11, 15, 10, 7, 8,
9, 11, 13, 13, 10, 7, 11, 10,
7, 10, 8, 11, 5, 5, 13, 11,
14, 12, 13, 10, 6, 15, 10, 9,
4, 5, 11, 8, 11, 16,
/* C2 */
11, 8, 8, 7, 13, 9, 12, 15,
14, 8, 7, 5, 11, 7, 8, 11,
7, 8, 12, 19, 13, 21, 13, 10,
11, 16, 12, 8, 7, 15, 7, 6,
11, 8, 10, 15, 12, 12, 10, 12,
9, 11, 13, 11, 9, 10, 9, 13,
7, 7, 11, 11, 7, 8, 6, 4,
7, 7, 6, 11, 17, 8, 11, 13,
14, 14, 13, 12, 9, 9, 9, 6,
11, 7, 8, 9, 3, 9, 14, 6,
10, 6, 7, 8, 6, 9, 15, 14,
12, 13, 14, 11, 14, 14,
/* C3 */
13, 6, 9, 8, 8, 6, 10, 11,
8, 13, 4, 5, 10, 5, 8, 9,
12, 14, 9, 3, 8, 8, 11, 14,
15, 13, 7, 9, 12, 14, 7, 9,
9, 12, 8, 12, 3, 7, 5, 11,
13, 17, 13, 13, 11, 11, 8, 11,
15, 19, 17, 9, 11, 8, 6, 10,
8, 8, 14, 11, 12, 12, 10, 11,
11, 7, 9, 10, 12, 9, 8, 11,
13, 17, 9, 12, 8, 7, 14, 5,
5, 8, 5, 11, 10, 9, 8, 16,
8, 11, 6, 8, 13, 13,
/* C4 */
14, 19, 14, 14, 16, 15, 20, 8,
5, 10, 15, 16, 8, 13, 13, 8,
11, 6, 9, 8, 7, 7, 8, 5,
13, 14, 13, 12, 14, 4, 5, 13,
8, 16, 10, 9, 7, 9, 6, 9,
7, 6, 2, 5, 9, 8, 9, 7,
10, 22, 9, 10, 9, 8, 11, 8,
10, 4, 14, 10, 8, 16, 10, 8,
5, 7, 7, 10, 13, 9, 13, 14,
8, 6, 15, 15, 11, 8, 10, 14,
5, 7, 10, 10, 19, 11, 15, 15,
10, 11, 9, 8, 16, 5,
/* C5 */
8, 8, 4, 7, 9, 7, 10, 9,
6, 7, 5, 7, 9, 3, 13, 9,
8, 9, 17, 20, 10, 10, 8, 9,
8, 18, 7, 11, 7, 11, 9, 8,
8, 8, 12, 8, 11, 12, 11, 12,
9, 19, 15, 11, 15, 9, 10, 7,
9, 6, 8, 10, 16, 9, 7, 8,
7, 9, 10, 12, 8, 8, 9, 11,
14, 12, 10, 10, 8, 7, 12, 9,
10, 8, 11, 15, 12, 13, 12, 13,
16, 16, 8, 13, 11, 13, 8, 9,
21, 7, 8, 15, 12, 9,
/* C6 */
11, 12, 10, 5, 4, 12, 15, 7,
20, 15, 11, 4, 12, 15, 14, 16,
11, 14, 16, 9, 13, 8, 9, 13,
6, 8, 8, 11, 5, 8, 10, 7,
9, 8, 8, 11, 11, 10, 14, 8,
11, 10, 5, 12, 4, 10, 12, 11,
13, 10, 6, 10, 12, 10, 14, 19,
18, 12, 12, 10, 11, 8, 2, 10,
14, 9, 7, 8, 12, 8, 8, 11,
11, 10, 6, 14, 8, 6, 11, 10,
6, 3, 6, 7, 9, 9, 16, 4,
6, 7, 7, 8, 5, 11,
/* C7 */
9, 9, 9, 6, 8, 10, 3, 6,
13, 5, 12, 11, 16, 10, 10, 9,
15, 13, 8, 15, 11, 12, 4, 14,
8, 7, 12, 7, 14, 14, 12, 7,
16, 14, 14, 10, 10, 17, 6, 8,
5, 16, 15, 12, 10, 9, 10, 4,
8, 5, 8, 9, 9, 9, 9, 10,
12, 13, 7, 15, 12, 13, 7, 8,
9, 9, 10, 10, 11, 16, 12, 12,
11, 8, 10, 6, 12, 7, 9, 5,
7, 11, 7, 5, 9, 8, 12, 4,
11, 6, 11, 8, 7, 11,
/* C8 */
8, 11, 17, 15, 5, 11, 23, 6,
16, 10, 6, 11, 10, 4, 8, 4,
10, 8, 16, 7, 13, 14, 12, 11,
12, 13, 12, 16, 5, 9, 22, 20,
20, 20, 5, 9, 7, 9, 12, 10,
4, 4, 2, 7, 7, 6, 4, 3,
7, 6, 5, 4, 4, 6, 9, 13,
9, 16, 14, 13, 10, 9, 4, 12,
9, 6, 9, 20, 16, 17, 6, 10,
8, 6, 2, 15, 8, 6, 15, 13,
12, 7, 10, 8, 10, 15, 9, 11,
13, 17, 13, 14, 3, 8,
/* C9 */
6, 12, 10, 13, 8, 12, 12, 6,
12, 13, 6, 10, 12, 14, 10, 9,
6, 8, 7, 7, 13, 11, 13, 12,
10, 9, 8, 7, 3, 7, 14, 8,
5, 8, 16, 17, 16, 12, 6, 10,
15, 14, 6, 11, 12, 10, 3, 8,
14, 11, 10, 12, 10, 6, 3, 14,
4, 10, 7, 8, 11, 11, 11, 6,
8, 11, 13, 10, 13, 10, 7, 6,
10, 5, 8, 7, 7, 11, 10, 8,
9, 7, 8, 11, 9, 8, 13, 11,
7, 5, 12, 9, 4, 11,
/* CA */
9, 11, 12, 9, 5, 6, 5, 9,
9, 12, 8, 3, 8, 2, 5, 9,
7, 4, 9, 9, 8, 7, 5, 5,
8, 9, 8, 8, 6, 5, 3, 5,
9, 8, 9, 14, 10, 8, 9, 13,
16, 9, 5, 8, 12, 8, 4, 5,
9, 9, 8, 8, 6, 4, 9, 6,
7, 11, 11, 8, 14, 11, 15, 8,
11, 10, 7, 13, 8, 12, 11, 12,
4, 12, 11, 15, 16, 12, 17, 13,
13, 12, 13, 12, 5, 8, 9, 7,
6, 9, 14, 11, 13, 14,
/* CB */
10, 8, 9, 14, 10, 5, 5, 10,
9, 17, 4, 11, 10, 4, 13, 12,
7, 17, 9, 12, 9, 11, 10, 9,
12, 15, 15, 9, 7, 5, 5, 6,
13, 6, 13, 5, 7, 6, 8, 3,
8, 10, 8, 10, 9, 7, 6, 9,
12, 15, 16, 14, 7, 12, 9, 10,
10, 12, 14, 13, 13, 11, 7, 8,
14, 13, 14, 9, 11, 11, 10, 21,
13, 6, 17, 12, 14, 10, 6, 10,
10, 13, 11, 10, 14, 11, 10, 12,
8, 13, 5, 5, 6, 12,
/* CC */
16, 9, 17, 15, 9, 8, 8, 5,
10, 11, 4, 8, 7, 7, 13, 8,
15, 13, 7, 17, 13, 15, 14, 10,
8, 12, 10, 14, 11, 5, 9, 6,
13, 13, 11, 12, 15, 10, 16, 10,
15, 11, 15, 10, 11, 10, 13, 10,
11, 10, 9, 11, 10, 5, 10, 10,
18, 13, 10, 13, 11, 10, 15, 12,
12, 15, 16, 12, 7, 12, 17, 11,
10, 9, 8, 4, 11, 13, 5, 11,
9, 14, 12, 9, 7, 8, 11, 13,
9, 10, 8, 4, 7, 9,
/* CD */
5, 6, 11, 9, 9, 9, 12, 10,
10, 13, 17, 6, 11, 7, 12, 11,
10, 12, 9, 12, 11, 7, 5, 10,
5, 7, 9, 8, 10, 10, 10, 11,
3, 6, 8, 12, 6, 11, 13, 13,
13, 14, 9, 7, 4, 17, 8, 6,
11, 10, 7, 6, 8, 12, 7, 8,
12, 9, 9, 12, 9, 9, 4, 10,
9, 5, 15, 9, 12, 8, 10, 3,
11, 7, 13, 10, 11, 12, 11, 8,
11, 3, 12, 7, 4, 3, 8, 6,
8, 8, 11, 7, 6, 9,
/* CE */
20, 13, 6, 4, 7, 10, 7, 11,
11, 4, 14, 11, 7, 11, 8, 6,
6, 7, 7, 5, 14, 8, 9, 9,
12, 17, 7, 12, 11, 11, 15, 3,
14, 12, 10, 4, 9, 7, 7, 14,
10, 6, 13, 10, 8, 9, 13, 10,
12, 7, 14, 8, 12, 7, 7, 7,
9, 4, 6, 9, 9, 4, 7, 11,
7, 7, 4, 8, 4, 10, 4, 14,
6, 9, 7, 5, 13, 11, 8, 4,
5, 10, 9, 8, 14, 8, 6, 11,
8, 12, 15, 6, 13, 10,
/* CF */
12, 10, 7, 11, 15, 3, 11, 14,
11, 13, 6, 12, 17, 11, 10, 3,
13, 12, 11, 9, 7, 12, 6, 8,
15, 9, 7, 17, 14, 13, 9, 8,
9, 3, 12, 10, 6, 11, 13, 6,
5, 14, 6, 9, 8, 11, 11, 7,
9, 8, 13, 9, 9, 8, 13, 7,
13, 11, 12, 9, 10, 8, 8, 9,
11, 22, 9, 15, 17, 12, 3, 12,
10, 8, 13, 9, 8, 9, 9, 15,
13, 6, 11, 11, 12, 15, 9, 10,
18, 12, 10, 10, 11, 10,
/* D0 */
3, 7, 10, 7, 11, 10, 10, 13,
8, 13, 15, 15, 6, 9, 13, 6,
11, 8, 11, 5, 11, 9, 19, 16,
8, 8, 12, 10, 16, 7, 12, 8,
7, 13, 7, 4, 9, 11, 9, 13,
12, 12, 6, 6, 9, 7, 6, 6,
16, 8, 7, 8, 8, 5, 4, 10,
6, 7, 12, 14, 6, 9, 10, 6,
13, 12, 7, 10, 10, 14, 6, 14,
11, 14, 9, 10, 6, 13, 11, 9,
6, 7, 10, 9, 12, 12, 11, 11,
7, 12, 9, 11, 11, 5,
/* D1 */
9, 19, 10, 9, 13, 16, 8, 5,
11, 6, 9, 14, 12, 6, 8, 6,
6, 6, 10, 6, 5, 5, 9, 6,
6, 8, 9, 10, 7, 3, 7, 4,
10, 11, 13, 11, 12, 9, 6, 6,
11, 9, 11, 10, 11, 10, 7, 9,
12, 8, 7, 7, 15, 11, 8, 8,
8, 11, 11, 9, 14, 10, 12, 16,
6, 9, 12, 10, 9, 12, 10, 11,
10, 9, 5, 10, 10, 7, 6, 8,
8, 6, 9, 6, 10, 6, 11, 9,
10, 14, 16, 13, 7, 14,
/* D2 */
13, 6, 13, 11, 12, 9, 9, 10,
9, 9, 20, 12, 15, 8, 6, 11,
7, 3, 6, 11, 5, 5, 6, 12,
8, 11, 1, 12, 7, 12, 11, 8,
6, 6, 13, 6, 12, 11, 5, 10,
14, 7, 8, 9, 18, 12, 9, 10,
3, 1, 7, 4, 4, 7, 8, 7,
6, 3, 7, 17, 11, 13, 9, 6,
13, 13, 15, 4, 3, 10, 13, 8,
5, 10, 7, 6, 17, 11, 8, 9,
9, 6, 10, 9, 6, 8, 7, 11,
11, 11, 7, 4, 4, 11,
/* D3 */
5, 8, 15, 11, 18, 7, 14, 10,
11, 11, 9, 14, 7, 17, 9, 15,
13, 12, 9, 9, 8, 7, 17, 10,
11, 13, 14, 13, 8, 8, 10, 5,
11, 9, 5, 9, 6, 11, 7, 4,
5, 7, 10, 7, 8, 12, 7, 6,
4, 5, 7, 12, 9, 2, 5, 6,
11, 3, 8, 13, 13, 13, 14, 7,
9, 12, 8, 12, 12, 11, 11, 4,
10, 8, 3, 6, 9, 6, 9, 6,
5, 11, 6, 8, 6, 12, 12, 10,
12, 13, 11, 9, 8, 13,
/* D4 */
10, 12, 12, 10, 15, 5, 10, 11,
10, 4, 9, 10, 10, 12, 14, 7,
7, 10, 13, 13, 12, 7, 8, 14,
9, 9, 4, 6, 12, 11, 9, 8,
12, 4, 10, 10, 10, 4, 9, 4,
9, 4, 7, 15, 11, 10, 13, 5,
5, 10, 6, 10, 9, 7, 10, 10,
6, 6, 9, 19, 12, 16, 10, 10,
12, 14, 17, 12, 19, 8, 6, 16,
9, 20, 16, 10, 7, 7, 17, 8,
8, 6, 8, 10, 9, 15, 15, 12,
16, 4, 12, 12, 5, 5,
/* D5 */
11, 8, 9, 9, 14, 8, 5, 9,
7, 14, 10, 6, 10, 10, 14, 18,
9, 13, 11, 8, 10, 8, 14, 11,
10, 22, 9, 5, 9, 10, 12, 11,
15, 11, 14, 14, 7, 12, 10, 7,
3, 7, 8, 5, 8, 16, 13, 8,
9, 7, 8, 9, 13, 13, 6, 14,
5, 14, 7, 10, 12, 16, 8, 13,
14, 7, 10, 9, 13, 10, 13, 10,
16, 6, 7, 8, 8, 10, 7, 15,
10, 15, 6, 13, 9, 11, 8, 9,
6, 8, 16, 9, 5, 9,
/* D6 */
9, 10, 8, 7, 6, 8, 4, 7,
14, 8, 8, 10, 5, 3, 8, 11,
8, 12, 12, 6, 10, 8, 7, 9,
4, 11, 5, 6, 7, 7, 10, 11,
6, 10, 13, 8, 9, 8, 12, 10,
13, 8, 8, 11, 12, 8, 11, 4,
9, 8, 9, 10, 8, 9, 8, 9,
6, 6, 6, 8, 6, 9, 7, 12,
9, 7, 8, 8, 10, 8, 9, 17,
10, 10, 12, 6, 11, 10, 8, 10,
6, 10, 12, 8, 17, 15, 5, 11,
9, 7, 11, 8, 12, 12,
/* D7 */
7, 8, 9, 8, 7, 4, 9, 4,
9, 8, 15, 14, 15, 10, 6, 12,
6, 15, 6, 7, 12, 13, 9, 14,
7, 11, 10, 10, 10, 8, 8, 10,
12, 8, 10, 11, 11, 7, 9, 9,
9, 10, 9, 12, 11, 7, 12, 5,
9, 13, 3, 6, 11, 6, 18, 12,
15, 8, 11, 9, 7, 7, 7, 9,
12, 10, 7, 8, 11, 9, 7, 7,
8, 10, 20, 16, 15, 12, 13, 12,
15, 9, 5, 7, 9, 11, 7, 7,
10, 0, 0, 0, 0, 0,
/* D8 */
3, 3, 3, 4, 4, 4, 5, 6,
6, 10, 10, 16, 1, 8, 1, 2,
3, 4, 4, 5, 5, 6, 9, 11,
14, 14, 19, 1, 8, 14, 2, 6,
4, 7, 7, 11, 14, 4, 6, 10,
11, 12, 14, 15, 16, 2, 5, 8,
11, 11, 15, 8, 7, 2, 4, 6,
7, 8, 8, 8, 9, 10, 10, 10,
13, 13, 14, 14, 15, 16, 2, 8,
2, 4, 4, 4, 5, 5, 5, 5,
6, 6, 6, 6, 6, 6, 6, 6,
6, 7, 7, 7, 7, 7,
/* D9 */
7, 7, 7, 7, 8, 8, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8,
9, 9, 9, 9, 9, 9, 9, 9,
9, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 10, 10, 11, 11,
11, 11, 11, 11, 11, 12, 12, 12,
13, 14, 14, 14, 14, 14, 14, 15,
15, 5, 6, 7, 7, 9, 17, 6,
8, 4, 12, 16, 17, 18, 21, 2,
9, 9, 11, 6, 6, 7, 2, 8,
10, 10, 11, 12, 12, 12, 13, 16,
19, 19, 2, 6, 8, 8,
/* DA */
10, 2, 10, 10, 2, 5, 5, 5,
6, 6, 6, 7, 7, 7, 7, 7,
7, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 8, 9, 9, 9, 9,
10, 10, 10, 10, 10, 10, 10, 11,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 12, 12, 12, 12, 12, 13,
13, 14, 14, 14, 15, 15, 19, 2,
8, 2, 5, 5, 6, 6, 7, 7,
7, 7, 8, 9, 9, 10, 10, 10,
11, 11, 11, 16, 5, 5, 5, 5,
6, 6, 7, 7, 7, 7,
/* DB */
7, 7, 8, 8, 8, 8, 8, 8,
8, 9, 9, 9, 9, 9, 10, 10,
11, 11, 13, 13, 13, 14, 14, 16,
19, 17, 5, 7, 5, 7, 7, 8,
10, 10, 11, 15, 9, 17, 20, 2,
2, 6, 10, 2, 5, 10, 12, 7,
9, 9, 14, 16, 16, 17, 6, 6,
6, 6, 6, 6, 6, 7, 7, 7,
8, 8, 8, 8, 8, 8, 8, 8,
8, 8, 9, 9, 9, 9, 9, 9,
9, 9, 9, 10, 10, 10, 10, 10,
10, 11, 11, 11, 11, 11,
/* DC */
11, 11, 11, 11, 11, 12, 12, 12,
12, 13, 13, 14, 14, 14, 15, 20,
21, 22, 3, 5, 5, 6, 6, 6,
6, 6, 6, 6, 7, 7, 7, 7,
7, 7, 7, 7, 7, 7, 7, 7,
7, 7, 7, 7, 7, 7, 7, 7,
7, 7, 7, 8, 8, 8, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 8, 8, 8, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9,
/* DD */
9, 9, 9, 9, 9, 9, 9, 10,
10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 13,
13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 14,
14, 14, 14, 14, 14, 14,
/* DE */
14, 14, 14, 14, 15, 15, 15, 15,
15, 15, 15, 15, 15, 16, 16, 16,
16, 16, 16, 16, 16, 16, 17, 17,
17, 17, 17, 18, 19, 19, 19, 20,
20, 22, 3, 9, 6, 7, 9, 9,
10, 10, 11, 3, 5, 5, 12, 3,
6, 7, 8, 8, 8, 8, 9, 9,
9, 10, 10, 10, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11,
12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 13, 13, 13, 13, 13, 13,
13, 13, 14, 14, 14, 14,
/* DF */
14, 15, 15, 15, 15, 16, 16, 16,
17, 17, 19, 23, 25, 3, 7, 8,
12, 5, 5, 5, 5, 5, 5, 6,
6, 6, 7, 7, 7, 7, 7, 7,
7, 7, 7, 7, 7, 8, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8,
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9,
10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11,
/* E0 */
11, 11, 11, 11, 11, 11, 11, 11,
12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 12,
12, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 14, 14,
14, 14, 14, 14, 14, 14, 14, 15,
15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 16, 16, 16, 16, 16, 16,
17, 17, 19, 25, 3, 6, 6, 7,
7, 8, 9, 10, 11, 11, 16, 7,
8, 8, 8, 10, 11, 11,
/* E1 */
11, 12, 14, 14, 15, 15, 6, 6,
7, 7, 7, 7, 7, 7, 7, 7,
7, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 9, 9, 9, 9, 10,
10, 11, 11, 11, 11, 11, 11, 11,
12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 13, 13, 13, 14, 15, 15,
17, 17, 19, 3, 7, 8, 9, 9,
9, 10, 11, 11, 12, 13, 15, 16,
24, 3, 3, 5, 6, 6, 6, 7,
7, 8, 8, 8, 9, 9, 9, 9,
10, 10, 10, 10, 10, 10,
/* E2 */
10, 11, 11, 11, 11, 11, 11, 11,
12, 12, 12, 12, 12, 12, 14, 14,
15, 15, 16, 17, 20, 6, 14, 12,
14, 3, 3, 6, 7, 7, 7, 7,
7, 8, 9, 10, 10, 11, 12, 12,
13, 13, 14, 15, 15, 25, 5, 7,
7, 8, 9, 9, 11, 11, 11, 11,
12, 13, 14, 15, 16, 16, 17, 3,
5, 6, 6, 7, 7, 7, 7, 7,
7, 7, 7, 7, 7, 7, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8,
8, 9, 9, 9, 9, 9,
/* E3 */
9, 9, 10, 10, 10, 10, 10, 10,
10, 10, 11, 11, 11, 11, 11, 11,
11, 11, 12, 12, 12, 12, 12, 12,
12, 13, 13, 14, 15, 15, 15, 16,
16, 18, 8, 17, 4, 6, 7, 7,
7, 7, 9, 9, 10, 10, 10, 11,
11, 11, 11, 11, 11, 12, 12, 13,
13, 13, 14, 3, 4, 8, 3, 6,
6, 6, 7, 7, 7, 7, 7, 7,
7, 7, 7, 7, 7, 7, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 8, 8, 8,
/* E4 */
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 10, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 12,
13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13,
13, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 15,
15, 15, 15, 15, 15, 16,
/* E5 */
16, 16, 16, 16, 16, 17, 17, 17,
17, 17, 19, 19, 19, 20, 20, 21,
24, 3, 5, 8, 8, 9, 10, 12,
13, 14, 14, 15, 16, 16, 17, 17,
3, 7, 7, 8, 8, 8, 8, 8,
8, 8, 9, 9, 10, 10, 10, 10,
10, 10, 11, 11, 11, 11, 12, 12,
12, 12, 13, 13, 13, 13, 15, 15,
16, 16, 17, 17, 18, 3, 11, 9,
12, 5, 9, 10, 10, 12, 14, 15,
21, 8, 8, 9, 11, 12, 22, 3,
6, 6, 7, 7, 7, 7,
/* E6 */
7, 7, 7, 7, 7, 7, 8, 8,
8, 8, 9, 9, 9, 9, 9, 9,
9, 10, 10, 10, 10, 10, 10, 10,
10, 11, 11, 11, 11, 11, 11, 11,
12, 12, 12, 12, 13, 13, 13, 13,
13, 13, 14, 14, 14, 14, 14, 14,
14, 15, 16, 16, 17, 17, 20, 5,
9, 7, 8, 12, 3, 3, 8, 8,
8, 8, 8, 8, 8, 8, 9, 9,
9, 10, 11, 11, 11, 11, 12, 12,
13, 13, 13, 14, 14, 15, 19, 20,
3, 6, 6, 6, 6, 6,
/* E7 */
7, 7, 7, 8, 8, 8, 8, 8,
8, 8, 9, 9, 9, 10, 10, 10,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, 13, 13, 13,
13, 13, 13, 13, 13, 14, 14, 14,
14, 14, 15, 15, 15, 16, 16, 16,
16, 19, 3, 15, 3, 8, 10, 6,
6, 8, 8, 8, 9, 9, 9, 9,
9, 9, 9, 9, 10, 10, 10, 10,
10, 10, 10, 10, 10, 11, 12, 12,
12, 12, 12, 12, 12, 12,
/* E8 */
12, 12, 13, 13, 13, 13, 13, 14,
14, 15, 15, 15, 15, 15, 15, 15,
16, 17, 17, 17, 18, 20, 20, 13,
13, 14, 7, 7, 7, 7, 7, 8,
8, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 8, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 10,
10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 11, 11, 11, 11, 11, 11,
11, 12, 12, 12, 12, 12,
/* E9 */
12, 12, 12, 12, 12, 12, 12, 13,
13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 15,
15, 15, 15, 15, 15, 15, 15, 16,
16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 17, 17, 17, 17, 18, 13,
14, 8, 9, 9, 9, 11, 11, 11,
12, 12, 14, 16, 7, 8, 9, 9,
9, 9, 9, 9, 9, 9, 9, 10,
10, 10, 10, 11, 12, 12,
/* EA */
12, 12, 13, 15, 16, 10, 5, 8,
11, 12, 12, 13, 13, 13, 14, 14,
8, 9, 12, 16, 16, 17, 4, 6,
6, 7, 8, 8, 8, 8, 8, 8,
8, 9, 9, 9, 9, 9, 9, 10,
10, 10, 10, 10, 10, 11, 11, 12,
13, 13, 14, 14, 16, 18, 18, 20,
21, 9, 9, 9, 9, 10, 10, 10,
10, 11, 11, 11, 12, 12, 14, 9,
10, 11, 12, 13, 14, 15, 15, 9,
13, 6, 8, 9, 11, 11, 12, 12,
12, 13, 14, 10, 11, 12,
/* EB */
14, 17, 10, 10, 12, 12, 12, 13,
15, 16, 16, 22, 5, 6, 7, 7,
9, 10, 10, 11, 13, 4, 11, 13,
12, 13, 15, 9, 15, 6, 7, 7,
7, 8, 8, 8, 8, 8, 8, 8,
8, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 10, 10,
10, 10, 10, 10, 10, 10, 10, 11,
11, 11, 11, 11, 11, 12, 12, 12,
12, 12, 12, 12, 13, 13, 13, 13,
13, 13, 13, 13, 14, 14, 14, 15,
15, 16, 17, 17, 17, 17,
/* EC */
17, 16, 7, 11, 12, 13, 13, 16,
9, 9, 12, 13, 16, 16, 4, 13,
13, 17, 12, 15, 16, 8, 10, 10,
10, 11, 11, 13, 14, 7, 8, 8,
8, 9, 9, 9, 9, 9, 10, 10,
11, 11, 11, 12, 12, 13, 13, 13,
13, 13, 13, 13, 13, 14, 15, 15,
15, 15, 16, 16, 16, 18, 21, 30,
4, 11, 13, 16, 8, 8, 9, 11,
12, 4, 7, 8, 8, 9, 9, 9,
9, 9, 9, 9, 10, 10, 12, 12,
13, 14, 16, 21, 7, 7,
/* ED */
9, 10, 10, 10, 10, 10, 10, 11,
13, 13, 14, 16, 16, 17, 17, 24,
4, 6, 8, 9, 12, 7, 8, 8,
9, 9, 9, 9, 9, 9, 9, 10,
10, 10, 10, 10, 10, 10, 10, 10,
10, 11, 11, 11, 11, 11, 11, 11,
11, 12, 13, 13, 13, 13, 13, 14,
14, 14, 14, 14, 15, 15, 15, 16,
16, 17, 17, 18, 19, 18, 21, 11,
12, 17, 19, 8, 9, 9, 9, 9,
9, 10, 10, 10, 11, 11, 11, 11,
12, 12, 12, 12, 13, 13,
/* EE */
13, 13, 14, 14, 14, 14, 15, 15,
16, 16, 16, 17, 18, 7, 8, 9,
9, 9, 10, 12, 13, 17, 9, 10,
10, 12, 13, 14, 14, 16, 17, 17,
10, 16, 23, 5, 6, 6, 7, 7,
7, 8, 8, 8, 8, 8, 8, 9,
9, 9, 9, 9, 9, 9, 9, 9,
9, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11,
/* EF */
11, 11, 11, 11, 11, 11, 11, 11,
12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 12,
12, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14,
14, 15, 15, 15, 15, 15, 15, 15,
15, 16, 16, 16, 16, 16, 16, 16,
16, 17, 17, 17, 17, 17, 17, 17,
17, 17, 17, 18, 18, 18, 19, 20,
14, 9, 12, 13, 9, 9, 10, 10,
11, 12, 12, 12, 13, 13,
/* F0 */
15, 15, 16, 17, 18, 22, 9, 11,
12, 13, 17, 10, 11, 7, 7, 8,
9, 9, 10, 10, 10, 10, 10, 10,
11, 11, 11, 11, 11, 12, 12, 12,
12, 12, 12, 13, 13, 13, 13, 13,
14, 14, 14, 14, 14, 15, 15, 16,
16, 16, 17, 17, 17, 17, 18, 18,
22, 5, 7, 7, 8, 8, 9, 9,
10, 10, 10, 10, 10, 10, 10, 10,
11, 11, 12, 12, 12, 12, 12, 12,
13, 13, 13, 13, 13, 13, 13, 14,
14, 14, 14, 14, 14, 14,
/* F1 */
15, 15, 15, 15, 16, 16, 16, 16,
16, 16, 16, 16, 17, 18, 18, 18,
18, 21, 23, 11, 12, 8, 8, 9,
9, 10, 11, 13, 13, 14, 14, 14,
15, 5, 8, 9, 9, 9, 9, 10,
11, 11, 11, 11, 12, 12, 12, 12,
13, 13, 13, 13, 13, 13, 14, 14,
14, 14, 14, 15, 15, 16, 17, 19,
24, 5, 9, 11, 12, 9, 6, 9,
10, 12, 12, 13, 14, 15, 15, 16,
16, 22, 12, 8, 11, 11, 11, 12,
15, 16, 12, 9, 10, 10,
/* F2 */
12, 12, 12, 12, 13, 15, 15, 16,
16, 16, 18, 20, 21, 6, 10, 7,
8, 9, 9, 9, 9, 10, 10, 10,
10, 10, 10, 10, 10, 10, 10, 11,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 13, 13,
13, 13, 13, 13, 13, 13, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 16, 16, 16, 16,
/* F3 */
16, 16, 16, 16, 16, 16, 17, 17,
17, 17, 17, 17, 17, 17, 17, 17,
17, 18, 18, 18, 18, 19, 19, 19,
19, 20, 21, 24, 26, 6, 14, 17,
17, 10, 8, 9, 9, 9, 10, 10,
10, 10, 10, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 12,
12, 12, 12, 12, 12, 13, 13, 13,
13, 13, 13, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 15,
15, 15, 15, 16, 16, 16, 16, 16,
17, 17, 17, 17, 17, 17,
/* F4 */
18, 18, 18, 19, 19, 19, 8, 9,
11, 12, 10, 10, 9, 9, 9, 10,
10, 10, 10, 11, 11, 11, 11, 12,
13, 13, 14, 15, 17, 18, 19, 10,
10, 11, 13, 13, 19, 11, 11, 13,
15, 15, 16, 9, 10, 10, 11, 11,
12, 12, 13, 14, 14, 14, 15, 15,
15, 15, 15, 16, 18, 6, 15, 9,
11, 12, 14, 14, 15, 15, 16, 17,
6, 12, 14, 14, 17, 25, 11, 19,
9, 12, 13, 13, 23, 11, 15, 10,
11, 9, 10, 10, 10, 12,
/* F5 */
12, 12, 13, 13, 13, 14, 14, 14,
14, 14, 15, 15, 16, 16, 16, 17,
17, 18, 19, 19, 19, 20, 20, 21,
7, 16, 10, 13, 14, 18, 18, 10,
10, 11, 11, 11, 12, 12, 12, 12,
12, 12, 12, 12, 13, 13, 13, 13,
13, 13, 13, 14, 14, 15, 15, 15,
15, 15, 15, 15, 15, 16, 16, 16,
16, 16, 16, 16, 16, 17, 17, 17,
19, 19, 19, 19, 19, 20, 21, 22,
22, 23, 24, 7, 12, 13, 13, 17,
17, 11, 11, 12, 12, 13,
/* F6 */
13, 14, 15, 13, 18, 12, 11, 12,
12, 14, 14, 16, 16, 16, 19, 19,
20, 22, 10, 13, 13, 13, 14, 14,
15, 15, 17, 8, 12, 20, 8, 10,
10, 13, 14, 18, 18, 14, 14, 15,
16, 17, 18, 18, 21, 24, 12, 12,
13, 13, 13, 13, 13, 13, 13, 13,
14, 14, 14, 14, 14, 14, 14, 14,
15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 17, 17,
17, 17, 17, 17, 17, 17,
/* F7 */
18, 18, 18, 18, 18, 19, 19, 19,
19, 19, 19, 20, 20, 20, 21, 14,
14, 15, 15, 16, 18, 18, 18, 19,
19, 13, 13, 14, 14, 14, 15, 15,
17, 17, 18, 18, 19, 19, 22, 14,
14, 15, 16, 16, 17, 19, 12, 15,
18, 22, 22, 10, 13, 14, 15, 15,
16, 16, 16, 18, 19, 20, 23, 25,
14, 15, 17, 13, 16, 16, 17, 19,
19, 21, 23, 17, 17, 17, 18, 18,
19, 20, 20, 20, 20, 21, 17, 18,
20, 23, 23, 16, 17, 23,
/* F8 */
}
}
/**
* 测试
* @param args String[]
*/
public static void main(String[] args) {
String cnStr = "测试数据";
char[] chars = cnStr.toCharArray();
System.out.print("<" + cnStr + ">的笔画数分别是:");
for (int i = 0; i < chars.length; i++) {
System.out.print("*" + CnToStrokeCount.getStrokeCount(chars[i]));
}
System.out.println("*");
cnStr = "CSDN - 专家门诊 - Java";
chars = cnStr.toCharArray();
System.out.print("<" + cnStr + ">的笔画数分别是:");
for (int i = 0; i < chars.length; i++) {
System.out.print("*" + CnToStrokeCount.getStrokeCount(chars[i]));
}
System.out.println("*");
cnStr = "=====提问技巧,请大家注意!!=====";
chars = cnStr.toCharArray();
System.out.print("<" + cnStr + ">的笔画数分别是:");
for (int i = 0; i < chars.length; i++) {
System.out.print("*" + CnToStrokeCount.getStrokeCount(chars[i]));
}
System.out.println("*");
}
/**
* 根据汉字字符获得笔画数,拼音和非法字符默认为0
* @param charcator char
* @return int
*/
public static int getStrokeCount(char charcator) {
byte[] bytes = (String.valueOf(charcator)).getBytes();
if (bytes == null || bytes.length > 2 || bytes.length <= 0) {
//错误引用,非合法字符
return 0;
}
if (bytes.length == 1) {
//英文字符
return 0;
}
if (bytes.length == 2) {
//中文字符
int highByte = 256 + bytes[0];
int lowByte = 256 + bytes[1];
return getStrokeCount(highByte, lowByte);
}
//未知错误
return 0;
}
/**
*
* @param highByte int:高位字节
* @param lowByte int:低位字节
* @return int
*/
private static int getStrokeCount(int highByte, int lowByte) {
if (highByte < 0xB0 || highByte > 0xF7 || lowByte < 0xA1 || lowByte > 0xFE) {
//非GB2312合法字符
return -1;
}
int offset = (highByte - 0xB0) * (0xFE - 0xA0) + (lowByte - 0xA1);
return gb2312StrokeCount[offset];
}
//GB2312的字符集的笔划列表,可以参考gb2312字符全集
private static int[] gb2312StrokeCount = {
/* B0 */
10, 7, 10, 10, 8, 10, 9, 11,
17, 14, 13, 5, 13, 10, 12, 15,
10, 6, 10, 9, 13, 8, 10, 10,
8, 8, 10, 5, 10, 14, 16, 9,
12, 12, 15, 15, 7, 10, 5, 5,
7, 10, 2, 9, 4, 8, 12, 13,
7, 10, 7, 21, 10, 8, 5, 9,
6, 13, 8, 8, 9, 13, 12, 10,
13, 7, 10, 10, 8, 8, 7, 8,
7, 19, 5, 4, 8, 5, 9, 10,
14, 14, 9, 12, 15, 10, 15, 12,
12, 8, 9, 5, 15, 10,
/* B1 */
16, 13, 9, 12, 8, 8, 8, 7,
15, 10, 13, 19, 8, 13, 12, 8,
5, 12, 9, 4, 9, 10, 7, 8,
12, 12, 10, 8, 8, 5, 11, 11,
11, 9, 9, 18, 9, 12, 14, 4,
13, 10, 8, 14, 13, 14, 6, 10,
9, 4, 7, 13, 6, 11, 14, 5,
13, 16, 17, 16, 9, 18, 5, 12,
8, 9, 9, 8, 4, 16, 16, 17,
12, 9, 11, 15, 8, 19, 16, 7,
15, 11, 12, 16, 13, 10, 13, 7,
6, 9, 5, 8, 9, 9,
/* B2 */
10, 6, 8, 11, 15, 8, 10, 8,
12, 9, 13, 10, 14, 7, 8, 11,
11, 14, 12, 8, 7, 10, 2, 10,
7, 11, 4, 5, 7, 19, 10, 8,
17, 11, 12, 7, 3, 7, 12, 15,
8, 11, 11, 14, 16, 8, 10, 9,
11, 11, 7, 7, 10, 4, 7, 17,
16, 16, 15, 11, 9, 8, 12, 8,
5, 9, 7, 19, 12, 3, 9, 9,
9, 14, 12, 14, 7, 9, 8, 8,
10, 10, 12, 11, 14, 12, 11, 13,
11, 6, 11, 19, 8, 11,
/* B3 */
6, 9, 11, 4, 11, 7, 2, 12,
8, 11, 10, 12, 7, 9, 12, 15,
15, 11, 7, 8, 4, 7, 15, 12,
7, 15, 10, 6, 7, 6, 11, 7,
7, 7, 12, 8, 15, 10, 9, 16,
6, 7, 10, 12, 12, 15, 8, 8,
10, 10, 10, 6, 13, 9, 11, 6,
7, 6, 6, 10, 8, 8, 4, 7,
10, 5, 9, 6, 6, 6, 11, 8,
8, 13, 12, 14, 13, 13, 13, 4,
11, 14, 4, 10, 7, 5, 16, 12,
18, 12, 13, 12, 9, 13,
/* B4 */
10, 12, 24, 13, 13, 5, 12, 3,
9, 13, 7, 11, 12, 7, 9, 12,
15, 7, 6, 6, 7, 8, 11, 13,
8, 9, 13, 15, 10, 11, 7, 21,
18, 11, 11, 9, 14, 14, 13, 13,
10, 7, 6, 8, 12, 6, 15, 12,
7, 5, 4, 5, 11, 11, 15, 17,
9, 19, 16, 12, 14, 11, 13, 10,
13, 14, 11, 14, 7, 6, 3, 14,
15, 12, 11, 10, 13, 12, 6, 12,
14, 5, 3, 7, 4, 12, 17, 9,
9, 5, 9, 11, 9, 11,
/* B5 */
9, 10, 8, 4, 8, 10, 11, 9,
5, 12, 7, 11, 11, 8, 11, 11,
6, 9, 10, 9, 10, 2, 10, 17,
10, 7, 11, 6, 8, 15, 11, 12,
11, 15, 11, 8, 19, 6, 12, 12,
17, 14, 4, 12, 7, 14, 8, 10,
11, 7, 10, 14, 14, 8, 8, 6,
12, 11, 9, 7, 10, 12, 16, 11,
13, 13, 9, 8, 16, 9, 5, 7,
7, 8, 11, 12, 11, 13, 13, 5,
16, 10, 2, 11, 6, 8, 10, 12,
10, 14, 15, 8, 11, 13,
/* B6 */
2, 7, 5, 7, 8, 12, 13, 8,
4, 6, 5, 5, 12, 15, 6, 9,
8, 9, 7, 9, 11, 7, 4, 9,
7, 10, 12, 10, 13, 9, 12, 9,
10, 11, 13, 12, 7, 14, 7, 9,
12, 7, 14, 12, 14, 9, 11, 12,
11, 7, 4, 5, 15, 7, 19, 12,
10, 7, 9, 9, 12, 11, 9, 6,
6, 9, 13, 6, 13, 11, 8, 12,
11, 13, 10, 12, 9, 15, 6, 10,
10, 4, 7, 12, 11, 10, 10, 6,
2, 6, 5, 9, 9, 2,
/* B7 */
9, 5, 9, 12, 6, 4, 9, 8,
9, 18, 6, 12, 18, 15, 8, 8,
17, 3, 10, 4, 7, 8, 8, 5,
7, 7, 7, 7, 4, 8, 8, 6,
7, 6, 6, 7, 8, 11, 8, 11,
3, 8, 10, 10, 7, 8, 8, 8,
9, 7, 11, 7, 8, 4, 7, 7,
12, 7, 10, 8, 6, 8, 12, 12,
4, 9, 8, 13, 10, 12, 4, 9,
11, 10, 5, 13, 6, 8, 4, 7,
7, 4, 15, 8, 14, 7, 8, 13,
12, 9, 11, 6, 9, 8,
/* B8 */
10, 11, 13, 11, 5, 7, 7, 11,
10, 10, 8, 11, 12, 8, 14, 9,
11, 18, 12, 9, 12, 5, 8, 4,
13, 6, 12, 4, 7, 6, 13, 8,
15, 14, 8, 7, 13, 9, 11, 12,
3, 5, 7, 9, 9, 7, 10, 13,
8, 11, 21, 4, 6, 9, 9, 7,
7, 7, 12, 7, 16, 10, 10, 14,
10, 16, 13, 15, 15, 7, 10, 14,
12, 4, 11, 10, 8, 12, 9, 12,
10, 12, 9, 12, 11, 3, 6, 9,
10, 13, 10, 7, 8, 19,
/* B9 */
10, 10, 11, 3, 7, 5, 10, 11,
8, 10, 4, 9, 3, 6, 7, 9,
7, 6, 9, 4, 7, 8, 8, 9,
8, 8, 11, 12, 11, 8, 14, 7,
8, 8, 8, 13, 5, 11, 9, 7,
8, 9, 10, 8, 12, 8, 5, 9,
14, 9, 13, 8, 8, 8, 12, 6,
8, 9, 6, 14, 11, 23, 12, 20,
8, 6, 3, 10, 13, 8, 6, 11,
5, 7, 9, 6, 9, 8, 9, 10,
8, 13, 9, 8, 12, 13, 12, 12,
10, 8, 8, 14, 6, 9,
15, 9, 10, 10, 6, 10, 9, 12,
14, 7, 12, 7, 11, 12, 8, 12,
7, 16, 16, 10, 7, 16, 10, 11,
6, 5, 5, 8, 10, 17, 17, 14,
11, 9, 6, 10, 5, 10, 8, 12,
10, 11, 10, 5, 8, 7, 6, 11,
13, 9, 8, 11, 14, 14, 15, 9,
15, 12, 11, 9, 9, 9, 10, 7,
15, 16, 9, 8, 9, 10, 9, 11,
9, 7, 5, 6, 12, 9, 12, 7,
9, 10, 6, 8, 5, 8, 13, 10,
12, 9, 15, 8, 15, 12,
/* BB */
8, 8, 11, 7, 4, 7, 4, 7,
9, 6, 12, 12, 8, 6, 4, 8,
13, 9, 7, 11, 7, 6, 8, 10,
7, 12, 10, 11, 10, 12, 13, 11,
10, 9, 4, 9, 12, 11, 16, 15,
17, 9, 11, 12, 13, 10, 13, 9,
11, 6, 9, 12, 17, 9, 12, 6,
13, 10, 15, 5, 12, 11, 10, 11,
6, 10, 5, 6, 9, 9, 9, 8,
11, 13, 9, 11, 17, 9, 6, 4,
10, 8, 12, 16, 8, 11, 5, 6,
11, 6, 13, 15, 10, 14,
/* BC */
6, 5, 9, 16, 4, 7, 10, 11,
12, 6, 7, 12, 13, 20, 12, 3,
9, 10, 6, 7, 13, 6, 9, 2,
10, 3, 13, 7, 16, 8, 6, 11,
8, 11, 9, 11, 11, 4, 5, 9,
7, 7, 7, 10, 6, 14, 9, 6,
8, 10, 5, 9, 12, 10, 5, 10,
11, 15, 6, 9, 8, 13, 7, 10,
7, 6, 11, 7, 13, 10, 8, 8,
6, 12, 9, 11, 9, 14, 12, 8,
10, 13, 9, 11, 11, 9, 14, 13,
12, 9, 4, 13, 15, 6,
/* BD */
10, 10, 9, 8, 11, 12, 10, 8,
15, 9, 9, 10, 6, 19, 12, 10,
9, 6, 6, 13, 8, 15, 12, 17,
12, 10, 6, 8, 9, 9, 9, 20,
12, 11, 11, 8, 11, 9, 7, 9,
16, 9, 13, 11, 14, 10, 10, 5,
12, 12, 11, 9, 11, 12, 6, 14,
7, 5, 10, 8, 11, 13, 14, 9,
9, 13, 8, 7, 17, 7, 9, 10,
4, 9, 9, 8, 3, 12, 4, 8,
4, 9, 18, 10, 13, 4, 13, 7,
13, 10, 13, 7, 10, 10,
/* BE */
6, 7, 9, 14, 8, 13, 12, 16,
8, 11, 14, 13, 8, 4, 19, 12,
11, 14, 14, 12, 16, 8, 10, 13,
11, 10, 8, 9, 12, 12, 7, 5,
7, 9, 3, 7, 2, 10, 11, 11,
5, 6, 13, 8, 12, 8, 17, 8,
8, 10, 8, 8, 11, 7, 8, 9,
9, 8, 14, 7, 11, 4, 8, 11,
15, 13, 10, 5, 11, 8, 10, 10,
12, 10, 10, 11, 8, 10, 15, 23,
7, 11, 10, 17, 9, 6, 6, 9,
7, 11, 9, 6, 7, 10,
/* BF */
9, 12, 10, 9, 10, 12, 8, 5,
9, 4, 12, 13, 8, 12, 5, 12,
11, 7, 9, 9, 11, 14, 17, 6,
7, 4, 8, 6, 9, 10, 15, 8,
8, 9, 12, 15, 14, 9, 7, 9,
5, 12, 7, 8, 9, 10, 8, 11,
9, 10, 7, 7, 8, 10, 4, 11,
7, 3, 6, 11, 9, 10, 13, 8,
14, 7, 12, 6, 9, 9, 13, 10,
7, 13, 8, 7, 10, 12, 6, 12,
7, 10, 8, 11, 7, 7, 3, 11,
8, 13, 12, 9, 13, 11,
/* C0 */
12, 12, 12, 8, 8, 10, 7, 9,
6, 13, 12, 8, 8, 12, 14, 12,
14, 11, 10, 7, 13, 13, 11, 9,
8, 16, 12, 5, 15, 14, 12, 9,
16, 12, 9, 13, 11, 12, 10, 11,
8, 10, 10, 10, 7, 7, 6, 8,
9, 13, 10, 10, 11, 5, 13, 18,
16, 15, 11, 17, 9, 16, 6, 9,
8, 12, 13, 7, 9, 11, 11, 15,
16, 10, 10, 13, 11, 7, 7, 15,
5, 10, 9, 6, 10, 7, 5, 7,
10, 4, 7, 12, 8, 9,
/* C1 */
12, 5, 11, 7, 8, 2, 14, 10,
9, 12, 10, 7, 18, 13, 8, 10,
8, 11, 11, 12, 10, 9, 8, 13,
10, 11, 13, 7, 7, 11, 12, 12,
9, 10, 15, 11, 14, 7, 16, 14,
5, 15, 2, 14, 17, 14, 10, 6,
12, 10, 6, 11, 12, 8, 17, 16,
9, 7, 20, 11, 15, 10, 7, 8,
9, 11, 13, 13, 10, 7, 11, 10,
7, 10, 8, 11, 5, 5, 13, 11,
14, 12, 13, 10, 6, 15, 10, 9,
4, 5, 11, 8, 11, 16,
/* C2 */
11, 8, 8, 7, 13, 9, 12, 15,
14, 8, 7, 5, 11, 7, 8, 11,
7, 8, 12, 19, 13, 21, 13, 10,
11, 16, 12, 8, 7, 15, 7, 6,
11, 8, 10, 15, 12, 12, 10, 12,
9, 11, 13, 11, 9, 10, 9, 13,
7, 7, 11, 11, 7, 8, 6, 4,
7, 7, 6, 11, 17, 8, 11, 13,
14, 14, 13, 12, 9, 9, 9, 6,
11, 7, 8, 9, 3, 9, 14, 6,
10, 6, 7, 8, 6, 9, 15, 14,
12, 13, 14, 11, 14, 14,
/* C3 */
13, 6, 9, 8, 8, 6, 10, 11,
8, 13, 4, 5, 10, 5, 8, 9,
12, 14, 9, 3, 8, 8, 11, 14,
15, 13, 7, 9, 12, 14, 7, 9,
9, 12, 8, 12, 3, 7, 5, 11,
13, 17, 13, 13, 11, 11, 8, 11,
15, 19, 17, 9, 11, 8, 6, 10,
8, 8, 14, 11, 12, 12, 10, 11,
11, 7, 9, 10, 12, 9, 8, 11,
13, 17, 9, 12, 8, 7, 14, 5,
5, 8, 5, 11, 10, 9, 8, 16,
8, 11, 6, 8, 13, 13,
/* C4 */
14, 19, 14, 14, 16, 15, 20, 8,
5, 10, 15, 16, 8, 13, 13, 8,
11, 6, 9, 8, 7, 7, 8, 5,
13, 14, 13, 12, 14, 4, 5, 13,
8, 16, 10, 9, 7, 9, 6, 9,
7, 6, 2, 5, 9, 8, 9, 7,
10, 22, 9, 10, 9, 8, 11, 8,
10, 4, 14, 10, 8, 16, 10, 8,
5, 7, 7, 10, 13, 9, 13, 14,
8, 6, 15, 15, 11, 8, 10, 14,
5, 7, 10, 10, 19, 11, 15, 15,
10, 11, 9, 8, 16, 5,
/* C5 */
8, 8, 4, 7, 9, 7, 10, 9,
6, 7, 5, 7, 9, 3, 13, 9,
8, 9, 17, 20, 10, 10, 8, 9,
8, 18, 7, 11, 7, 11, 9, 8,
8, 8, 12, 8, 11, 12, 11, 12,
9, 19, 15, 11, 15, 9, 10, 7,
9, 6, 8, 10, 16, 9, 7, 8,
7, 9, 10, 12, 8, 8, 9, 11,
14, 12, 10, 10, 8, 7, 12, 9,
10, 8, 11, 15, 12, 13, 12, 13,
16, 16, 8, 13, 11, 13, 8, 9,
21, 7, 8, 15, 12, 9,
/* C6 */
11, 12, 10, 5, 4, 12, 15, 7,
20, 15, 11, 4, 12, 15, 14, 16,
11, 14, 16, 9, 13, 8, 9, 13,
6, 8, 8, 11, 5, 8, 10, 7,
9, 8, 8, 11, 11, 10, 14, 8,
11, 10, 5, 12, 4, 10, 12, 11,
13, 10, 6, 10, 12, 10, 14, 19,
18, 12, 12, 10, 11, 8, 2, 10,
14, 9, 7, 8, 12, 8, 8, 11,
11, 10, 6, 14, 8, 6, 11, 10,
6, 3, 6, 7, 9, 9, 16, 4,
6, 7, 7, 8, 5, 11,
/* C7 */
9, 9, 9, 6, 8, 10, 3, 6,
13, 5, 12, 11, 16, 10, 10, 9,
15, 13, 8, 15, 11, 12, 4, 14,
8, 7, 12, 7, 14, 14, 12, 7,
16, 14, 14, 10, 10, 17, 6, 8,
5, 16, 15, 12, 10, 9, 10, 4,
8, 5, 8, 9, 9, 9, 9, 10,
12, 13, 7, 15, 12, 13, 7, 8,
9, 9, 10, 10, 11, 16, 12, 12,
11, 8, 10, 6, 12, 7, 9, 5,
7, 11, 7, 5, 9, 8, 12, 4,
11, 6, 11, 8, 7, 11,
/* C8 */
8, 11, 17, 15, 5, 11, 23, 6,
16, 10, 6, 11, 10, 4, 8, 4,
10, 8, 16, 7, 13, 14, 12, 11,
12, 13, 12, 16, 5, 9, 22, 20,
20, 20, 5, 9, 7, 9, 12, 10,
4, 4, 2, 7, 7, 6, 4, 3,
7, 6, 5, 4, 4, 6, 9, 13,
9, 16, 14, 13, 10, 9, 4, 12,
9, 6, 9, 20, 16, 17, 6, 10,
8, 6, 2, 15, 8, 6, 15, 13,
12, 7, 10, 8, 10, 15, 9, 11,
13, 17, 13, 14, 3, 8,
/* C9 */
6, 12, 10, 13, 8, 12, 12, 6,
12, 13, 6, 10, 12, 14, 10, 9,
6, 8, 7, 7, 13, 11, 13, 12,
10, 9, 8, 7, 3, 7, 14, 8,
5, 8, 16, 17, 16, 12, 6, 10,
15, 14, 6, 11, 12, 10, 3, 8,
14, 11, 10, 12, 10, 6, 3, 14,
4, 10, 7, 8, 11, 11, 11, 6,
8, 11, 13, 10, 13, 10, 7, 6,
10, 5, 8, 7, 7, 11, 10, 8,
9, 7, 8, 11, 9, 8, 13, 11,
7, 5, 12, 9, 4, 11,
/* CA */
9, 11, 12, 9, 5, 6, 5, 9,
9, 12, 8, 3, 8, 2, 5, 9,
7, 4, 9, 9, 8, 7, 5, 5,
8, 9, 8, 8, 6, 5, 3, 5,
9, 8, 9, 14, 10, 8, 9, 13,
16, 9, 5, 8, 12, 8, 4, 5,
9, 9, 8, 8, 6, 4, 9, 6,
7, 11, 11, 8, 14, 11, 15, 8,
11, 10, 7, 13, 8, 12, 11, 12,
4, 12, 11, 15, 16, 12, 17, 13,
13, 12, 13, 12, 5, 8, 9, 7,
6, 9, 14, 11, 13, 14,
/* CB */
10, 8, 9, 14, 10, 5, 5, 10,
9, 17, 4, 11, 10, 4, 13, 12,
7, 17, 9, 12, 9, 11, 10, 9,
12, 15, 15, 9, 7, 5, 5, 6,
13, 6, 13, 5, 7, 6, 8, 3,
8, 10, 8, 10, 9, 7, 6, 9,
12, 15, 16, 14, 7, 12, 9, 10,
10, 12, 14, 13, 13, 11, 7, 8,
14, 13, 14, 9, 11, 11, 10, 21,
13, 6, 17, 12, 14, 10, 6, 10,
10, 13, 11, 10, 14, 11, 10, 12,
8, 13, 5, 5, 6, 12,
/* CC */
16, 9, 17, 15, 9, 8, 8, 5,
10, 11, 4, 8, 7, 7, 13, 8,
15, 13, 7, 17, 13, 15, 14, 10,
8, 12, 10, 14, 11, 5, 9, 6,
13, 13, 11, 12, 15, 10, 16, 10,
15, 11, 15, 10, 11, 10, 13, 10,
11, 10, 9, 11, 10, 5, 10, 10,
18, 13, 10, 13, 11, 10, 15, 12,
12, 15, 16, 12, 7, 12, 17, 11,
10, 9, 8, 4, 11, 13, 5, 11,
9, 14, 12, 9, 7, 8, 11, 13,
9, 10, 8, 4, 7, 9,
/* CD */
5, 6, 11, 9, 9, 9, 12, 10,
10, 13, 17, 6, 11, 7, 12, 11,
10, 12, 9, 12, 11, 7, 5, 10,
5, 7, 9, 8, 10, 10, 10, 11,
3, 6, 8, 12, 6, 11, 13, 13,
13, 14, 9, 7, 4, 17, 8, 6,
11, 10, 7, 6, 8, 12, 7, 8,
12, 9, 9, 12, 9, 9, 4, 10,
9, 5, 15, 9, 12, 8, 10, 3,
11, 7, 13, 10, 11, 12, 11, 8,
11, 3, 12, 7, 4, 3, 8, 6,
8, 8, 11, 7, 6, 9,
/* CE */
20, 13, 6, 4, 7, 10, 7, 11,
11, 4, 14, 11, 7, 11, 8, 6,
6, 7, 7, 5, 14, 8, 9, 9,
12, 17, 7, 12, 11, 11, 15, 3,
14, 12, 10, 4, 9, 7, 7, 14,
10, 6, 13, 10, 8, 9, 13, 10,
12, 7, 14, 8, 12, 7, 7, 7,
9, 4, 6, 9, 9, 4, 7, 11,
7, 7, 4, 8, 4, 10, 4, 14,
6, 9, 7, 5, 13, 11, 8, 4,
5, 10, 9, 8, 14, 8, 6, 11,
8, 12, 15, 6, 13, 10,
/* CF */
12, 10, 7, 11, 15, 3, 11, 14,
11, 13, 6, 12, 17, 11, 10, 3,
13, 12, 11, 9, 7, 12, 6, 8,
15, 9, 7, 17, 14, 13, 9, 8,
9, 3, 12, 10, 6, 11, 13, 6,
5, 14, 6, 9, 8, 11, 11, 7,
9, 8, 13, 9, 9, 8, 13, 7,
13, 11, 12, 9, 10, 8, 8, 9,
11, 22, 9, 15, 17, 12, 3, 12,
10, 8, 13, 9, 8, 9, 9, 15,
13, 6, 11, 11, 12, 15, 9, 10,
18, 12, 10, 10, 11, 10,
/* D0 */
3, 7, 10, 7, 11, 10, 10, 13,
8, 13, 15, 15, 6, 9, 13, 6,
11, 8, 11, 5, 11, 9, 19, 16,
8, 8, 12, 10, 16, 7, 12, 8,
7, 13, 7, 4, 9, 11, 9, 13,
12, 12, 6, 6, 9, 7, 6, 6,
16, 8, 7, 8, 8, 5, 4, 10,
6, 7, 12, 14, 6, 9, 10, 6,
13, 12, 7, 10, 10, 14, 6, 14,
11, 14, 9, 10, 6, 13, 11, 9,
6, 7, 10, 9, 12, 12, 11, 11,
7, 12, 9, 11, 11, 5,
/* D1 */
9, 19, 10, 9, 13, 16, 8, 5,
11, 6, 9, 14, 12, 6, 8, 6,
6, 6, 10, 6, 5, 5, 9, 6,
6, 8, 9, 10, 7, 3, 7, 4,
10, 11, 13, 11, 12, 9, 6, 6,
11, 9, 11, 10, 11, 10, 7, 9,
12, 8, 7, 7, 15, 11, 8, 8,
8, 11, 11, 9, 14, 10, 12, 16,
6, 9, 12, 10, 9, 12, 10, 11,
10, 9, 5, 10, 10, 7, 6, 8,
8, 6, 9, 6, 10, 6, 11, 9,
10, 14, 16, 13, 7, 14,
/* D2 */
13, 6, 13, 11, 12, 9, 9, 10,
9, 9, 20, 12, 15, 8, 6, 11,
7, 3, 6, 11, 5, 5, 6, 12,
8, 11, 1, 12, 7, 12, 11, 8,
6, 6, 13, 6, 12, 11, 5, 10,
14, 7, 8, 9, 18, 12, 9, 10,
3, 1, 7, 4, 4, 7, 8, 7,
6, 3, 7, 17, 11, 13, 9, 6,
13, 13, 15, 4, 3, 10, 13, 8,
5, 10, 7, 6, 17, 11, 8, 9,
9, 6, 10, 9, 6, 8, 7, 11,
11, 11, 7, 4, 4, 11,
/* D3 */
5, 8, 15, 11, 18, 7, 14, 10,
11, 11, 9, 14, 7, 17, 9, 15,
13, 12, 9, 9, 8, 7, 17, 10,
11, 13, 14, 13, 8, 8, 10, 5,
11, 9, 5, 9, 6, 11, 7, 4,
5, 7, 10, 7, 8, 12, 7, 6,
4, 5, 7, 12, 9, 2, 5, 6,
11, 3, 8, 13, 13, 13, 14, 7,
9, 12, 8, 12, 12, 11, 11, 4,
10, 8, 3, 6, 9, 6, 9, 6,
5, 11, 6, 8, 6, 12, 12, 10,
12, 13, 11, 9, 8, 13,
/* D4 */
10, 12, 12, 10, 15, 5, 10, 11,
10, 4, 9, 10, 10, 12, 14, 7,
7, 10, 13, 13, 12, 7, 8, 14,
9, 9, 4, 6, 12, 11, 9, 8,
12, 4, 10, 10, 10, 4, 9, 4,
9, 4, 7, 15, 11, 10, 13, 5,
5, 10, 6, 10, 9, 7, 10, 10,
6, 6, 9, 19, 12, 16, 10, 10,
12, 14, 17, 12, 19, 8, 6, 16,
9, 20, 16, 10, 7, 7, 17, 8,
8, 6, 8, 10, 9, 15, 15, 12,
16, 4, 12, 12, 5, 5,
/* D5 */
11, 8, 9, 9, 14, 8, 5, 9,
7, 14, 10, 6, 10, 10, 14, 18,
9, 13, 11, 8, 10, 8, 14, 11,
10, 22, 9, 5, 9, 10, 12, 11,
15, 11, 14, 14, 7, 12, 10, 7,
3, 7, 8, 5, 8, 16, 13, 8,
9, 7, 8, 9, 13, 13, 6, 14,
5, 14, 7, 10, 12, 16, 8, 13,
14, 7, 10, 9, 13, 10, 13, 10,
16, 6, 7, 8, 8, 10, 7, 15,
10, 15, 6, 13, 9, 11, 8, 9,
6, 8, 16, 9, 5, 9,
/* D6 */
9, 10, 8, 7, 6, 8, 4, 7,
14, 8, 8, 10, 5, 3, 8, 11,
8, 12, 12, 6, 10, 8, 7, 9,
4, 11, 5, 6, 7, 7, 10, 11,
6, 10, 13, 8, 9, 8, 12, 10,
13, 8, 8, 11, 12, 8, 11, 4,
9, 8, 9, 10, 8, 9, 8, 9,
6, 6, 6, 8, 6, 9, 7, 12,
9, 7, 8, 8, 10, 8, 9, 17,
10, 10, 12, 6, 11, 10, 8, 10,
6, 10, 12, 8, 17, 15, 5, 11,
9, 7, 11, 8, 12, 12,
/* D7 */
7, 8, 9, 8, 7, 4, 9, 4,
9, 8, 15, 14, 15, 10, 6, 12,
6, 15, 6, 7, 12, 13, 9, 14,
7, 11, 10, 10, 10, 8, 8, 10,
12, 8, 10, 11, 11, 7, 9, 9,
9, 10, 9, 12, 11, 7, 12, 5,
9, 13, 3, 6, 11, 6, 18, 12,
15, 8, 11, 9, 7, 7, 7, 9,
12, 10, 7, 8, 11, 9, 7, 7,
8, 10, 20, 16, 15, 12, 13, 12,
15, 9, 5, 7, 9, 11, 7, 7,
10, 0, 0, 0, 0, 0,
/* D8 */
3, 3, 3, 4, 4, 4, 5, 6,
6, 10, 10, 16, 1, 8, 1, 2,
3, 4, 4, 5, 5, 6, 9, 11,
14, 14, 19, 1, 8, 14, 2, 6,
4, 7, 7, 11, 14, 4, 6, 10,
11, 12, 14, 15, 16, 2, 5, 8,
11, 11, 15, 8, 7, 2, 4, 6,
7, 8, 8, 8, 9, 10, 10, 10,
13, 13, 14, 14, 15, 16, 2, 8,
2, 4, 4, 4, 5, 5, 5, 5,
6, 6, 6, 6, 6, 6, 6, 6,
6, 7, 7, 7, 7, 7,
/* D9 */
7, 7, 7, 7, 8, 8, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8,
9, 9, 9, 9, 9, 9, 9, 9,
9, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 10, 10, 11, 11,
11, 11, 11, 11, 11, 12, 12, 12,
13, 14, 14, 14, 14, 14, 14, 15,
15, 5, 6, 7, 7, 9, 17, 6,
8, 4, 12, 16, 17, 18, 21, 2,
9, 9, 11, 6, 6, 7, 2, 8,
10, 10, 11, 12, 12, 12, 13, 16,
19, 19, 2, 6, 8, 8,
/* DA */
10, 2, 10, 10, 2, 5, 5, 5,
6, 6, 6, 7, 7, 7, 7, 7,
7, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 8, 9, 9, 9, 9,
10, 10, 10, 10, 10, 10, 10, 11,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 12, 12, 12, 12, 12, 13,
13, 14, 14, 14, 15, 15, 19, 2,
8, 2, 5, 5, 6, 6, 7, 7,
7, 7, 8, 9, 9, 10, 10, 10,
11, 11, 11, 16, 5, 5, 5, 5,
6, 6, 7, 7, 7, 7,
/* DB */
7, 7, 8, 8, 8, 8, 8, 8,
8, 9, 9, 9, 9, 9, 10, 10,
11, 11, 13, 13, 13, 14, 14, 16,
19, 17, 5, 7, 5, 7, 7, 8,
10, 10, 11, 15, 9, 17, 20, 2,
2, 6, 10, 2, 5, 10, 12, 7,
9, 9, 14, 16, 16, 17, 6, 6,
6, 6, 6, 6, 6, 7, 7, 7,
8, 8, 8, 8, 8, 8, 8, 8,
8, 8, 9, 9, 9, 9, 9, 9,
9, 9, 9, 10, 10, 10, 10, 10,
10, 11, 11, 11, 11, 11,
/* DC */
11, 11, 11, 11, 11, 12, 12, 12,
12, 13, 13, 14, 14, 14, 15, 20,
21, 22, 3, 5, 5, 6, 6, 6,
6, 6, 6, 6, 7, 7, 7, 7,
7, 7, 7, 7, 7, 7, 7, 7,
7, 7, 7, 7, 7, 7, 7, 7,
7, 7, 7, 8, 8, 8, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 8, 8, 8, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9,
/* DD */
9, 9, 9, 9, 9, 9, 9, 10,
10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 13,
13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 14,
14, 14, 14, 14, 14, 14,
/* DE */
14, 14, 14, 14, 15, 15, 15, 15,
15, 15, 15, 15, 15, 16, 16, 16,
16, 16, 16, 16, 16, 16, 17, 17,
17, 17, 17, 18, 19, 19, 19, 20,
20, 22, 3, 9, 6, 7, 9, 9,
10, 10, 11, 3, 5, 5, 12, 3,
6, 7, 8, 8, 8, 8, 9, 9,
9, 10, 10, 10, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11,
12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 13, 13, 13, 13, 13, 13,
13, 13, 14, 14, 14, 14,
/* DF */
14, 15, 15, 15, 15, 16, 16, 16,
17, 17, 19, 23, 25, 3, 7, 8,
12, 5, 5, 5, 5, 5, 5, 6,
6, 6, 7, 7, 7, 7, 7, 7,
7, 7, 7, 7, 7, 8, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8,
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9,
10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11,
/* E0 */
11, 11, 11, 11, 11, 11, 11, 11,
12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 12,
12, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 14, 14,
14, 14, 14, 14, 14, 14, 14, 15,
15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 16, 16, 16, 16, 16, 16,
17, 17, 19, 25, 3, 6, 6, 7,
7, 8, 9, 10, 11, 11, 16, 7,
8, 8, 8, 10, 11, 11,
/* E1 */
11, 12, 14, 14, 15, 15, 6, 6,
7, 7, 7, 7, 7, 7, 7, 7,
7, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 9, 9, 9, 9, 10,
10, 11, 11, 11, 11, 11, 11, 11,
12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 13, 13, 13, 14, 15, 15,
17, 17, 19, 3, 7, 8, 9, 9,
9, 10, 11, 11, 12, 13, 15, 16,
24, 3, 3, 5, 6, 6, 6, 7,
7, 8, 8, 8, 9, 9, 9, 9,
10, 10, 10, 10, 10, 10,
/* E2 */
10, 11, 11, 11, 11, 11, 11, 11,
12, 12, 12, 12, 12, 12, 14, 14,
15, 15, 16, 17, 20, 6, 14, 12,
14, 3, 3, 6, 7, 7, 7, 7,
7, 8, 9, 10, 10, 11, 12, 12,
13, 13, 14, 15, 15, 25, 5, 7,
7, 8, 9, 9, 11, 11, 11, 11,
12, 13, 14, 15, 16, 16, 17, 3,
5, 6, 6, 7, 7, 7, 7, 7,
7, 7, 7, 7, 7, 7, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8,
8, 9, 9, 9, 9, 9,
/* E3 */
9, 9, 10, 10, 10, 10, 10, 10,
10, 10, 11, 11, 11, 11, 11, 11,
11, 11, 12, 12, 12, 12, 12, 12,
12, 13, 13, 14, 15, 15, 15, 16,
16, 18, 8, 17, 4, 6, 7, 7,
7, 7, 9, 9, 10, 10, 10, 11,
11, 11, 11, 11, 11, 12, 12, 13,
13, 13, 14, 3, 4, 8, 3, 6,
6, 6, 7, 7, 7, 7, 7, 7,
7, 7, 7, 7, 7, 7, 8, 8,
8, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 8, 8, 8,
/* E4 */
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 10, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 12,
13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13,
13, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 15,
15, 15, 15, 15, 15, 16,
/* E5 */
16, 16, 16, 16, 16, 17, 17, 17,
17, 17, 19, 19, 19, 20, 20, 21,
24, 3, 5, 8, 8, 9, 10, 12,
13, 14, 14, 15, 16, 16, 17, 17,
3, 7, 7, 8, 8, 8, 8, 8,
8, 8, 9, 9, 10, 10, 10, 10,
10, 10, 11, 11, 11, 11, 12, 12,
12, 12, 13, 13, 13, 13, 15, 15,
16, 16, 17, 17, 18, 3, 11, 9,
12, 5, 9, 10, 10, 12, 14, 15,
21, 8, 8, 9, 11, 12, 22, 3,
6, 6, 7, 7, 7, 7,
/* E6 */
7, 7, 7, 7, 7, 7, 8, 8,
8, 8, 9, 9, 9, 9, 9, 9,
9, 10, 10, 10, 10, 10, 10, 10,
10, 11, 11, 11, 11, 11, 11, 11,
12, 12, 12, 12, 13, 13, 13, 13,
13, 13, 14, 14, 14, 14, 14, 14,
14, 15, 16, 16, 17, 17, 20, 5,
9, 7, 8, 12, 3, 3, 8, 8,
8, 8, 8, 8, 8, 8, 9, 9,
9, 10, 11, 11, 11, 11, 12, 12,
13, 13, 13, 14, 14, 15, 19, 20,
3, 6, 6, 6, 6, 6,
/* E7 */
7, 7, 7, 8, 8, 8, 8, 8,
8, 8, 9, 9, 9, 10, 10, 10,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, 13, 13, 13,
13, 13, 13, 13, 13, 14, 14, 14,
14, 14, 15, 15, 15, 16, 16, 16,
16, 19, 3, 15, 3, 8, 10, 6,
6, 8, 8, 8, 9, 9, 9, 9,
9, 9, 9, 9, 10, 10, 10, 10,
10, 10, 10, 10, 10, 11, 12, 12,
12, 12, 12, 12, 12, 12,
/* E8 */
12, 12, 13, 13, 13, 13, 13, 14,
14, 15, 15, 15, 15, 15, 15, 15,
16, 17, 17, 17, 18, 20, 20, 13,
13, 14, 7, 7, 7, 7, 7, 8,
8, 8, 8, 8, 8, 8, 8, 8,
8, 8, 8, 8, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 9, 10,
10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 11, 11, 11, 11, 11, 11,
11, 12, 12, 12, 12, 12,
/* E9 */
12, 12, 12, 12, 12, 12, 12, 13,
13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 15,
15, 15, 15, 15, 15, 15, 15, 16,
16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 17, 17, 17, 17, 18, 13,
14, 8, 9, 9, 9, 11, 11, 11,
12, 12, 14, 16, 7, 8, 9, 9,
9, 9, 9, 9, 9, 9, 9, 10,
10, 10, 10, 11, 12, 12,
/* EA */
12, 12, 13, 15, 16, 10, 5, 8,
11, 12, 12, 13, 13, 13, 14, 14,
8, 9, 12, 16, 16, 17, 4, 6,
6, 7, 8, 8, 8, 8, 8, 8,
8, 9, 9, 9, 9, 9, 9, 10,
10, 10, 10, 10, 10, 11, 11, 12,
13, 13, 14, 14, 16, 18, 18, 20,
21, 9, 9, 9, 9, 10, 10, 10,
10, 11, 11, 11, 12, 12, 14, 9,
10, 11, 12, 13, 14, 15, 15, 9,
13, 6, 8, 9, 11, 11, 12, 12,
12, 13, 14, 10, 11, 12,
/* EB */
14, 17, 10, 10, 12, 12, 12, 13,
15, 16, 16, 22, 5, 6, 7, 7,
9, 10, 10, 11, 13, 4, 11, 13,
12, 13, 15, 9, 15, 6, 7, 7,
7, 8, 8, 8, 8, 8, 8, 8,
8, 9, 9, 9, 9, 9, 9, 9,
9, 9, 9, 9, 9, 9, 10, 10,
10, 10, 10, 10, 10, 10, 10, 11,
11, 11, 11, 11, 11, 12, 12, 12,
12, 12, 12, 12, 13, 13, 13, 13,
13, 13, 13, 13, 14, 14, 14, 15,
15, 16, 17, 17, 17, 17,
/* EC */
17, 16, 7, 11, 12, 13, 13, 16,
9, 9, 12, 13, 16, 16, 4, 13,
13, 17, 12, 15, 16, 8, 10, 10,
10, 11, 11, 13, 14, 7, 8, 8,
8, 9, 9, 9, 9, 9, 10, 10,
11, 11, 11, 12, 12, 13, 13, 13,
13, 13, 13, 13, 13, 14, 15, 15,
15, 15, 16, 16, 16, 18, 21, 30,
4, 11, 13, 16, 8, 8, 9, 11,
12, 4, 7, 8, 8, 9, 9, 9,
9, 9, 9, 9, 10, 10, 12, 12,
13, 14, 16, 21, 7, 7,
/* ED */
9, 10, 10, 10, 10, 10, 10, 11,
13, 13, 14, 16, 16, 17, 17, 24,
4, 6, 8, 9, 12, 7, 8, 8,
9, 9, 9, 9, 9, 9, 9, 10,
10, 10, 10, 10, 10, 10, 10, 10,
10, 11, 11, 11, 11, 11, 11, 11,
11, 12, 13, 13, 13, 13, 13, 14,
14, 14, 14, 14, 15, 15, 15, 16,
16, 17, 17, 18, 19, 18, 21, 11,
12, 17, 19, 8, 9, 9, 9, 9,
9, 10, 10, 10, 11, 11, 11, 11,
12, 12, 12, 12, 13, 13,
/* EE */
13, 13, 14, 14, 14, 14, 15, 15,
16, 16, 16, 17, 18, 7, 8, 9,
9, 9, 10, 12, 13, 17, 9, 10,
10, 12, 13, 14, 14, 16, 17, 17,
10, 16, 23, 5, 6, 6, 7, 7,
7, 8, 8, 8, 8, 8, 8, 9,
9, 9, 9, 9, 9, 9, 9, 9,
9, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 10, 10, 10, 10,
10, 10, 10, 10, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11,
/* EF */
11, 11, 11, 11, 11, 11, 11, 11,
12, 12, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 12, 12,
12, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14,
14, 15, 15, 15, 15, 15, 15, 15,
15, 16, 16, 16, 16, 16, 16, 16,
16, 17, 17, 17, 17, 17, 17, 17,
17, 17, 17, 18, 18, 18, 19, 20,
14, 9, 12, 13, 9, 9, 10, 10,
11, 12, 12, 12, 13, 13,
/* F0 */
15, 15, 16, 17, 18, 22, 9, 11,
12, 13, 17, 10, 11, 7, 7, 8,
9, 9, 10, 10, 10, 10, 10, 10,
11, 11, 11, 11, 11, 12, 12, 12,
12, 12, 12, 13, 13, 13, 13, 13,
14, 14, 14, 14, 14, 15, 15, 16,
16, 16, 17, 17, 17, 17, 18, 18,
22, 5, 7, 7, 8, 8, 9, 9,
10, 10, 10, 10, 10, 10, 10, 10,
11, 11, 12, 12, 12, 12, 12, 12,
13, 13, 13, 13, 13, 13, 13, 14,
14, 14, 14, 14, 14, 14,
/* F1 */
15, 15, 15, 15, 16, 16, 16, 16,
16, 16, 16, 16, 17, 18, 18, 18,
18, 21, 23, 11, 12, 8, 8, 9,
9, 10, 11, 13, 13, 14, 14, 14,
15, 5, 8, 9, 9, 9, 9, 10,
11, 11, 11, 11, 12, 12, 12, 12,
13, 13, 13, 13, 13, 13, 14, 14,
14, 14, 14, 15, 15, 16, 17, 19,
24, 5, 9, 11, 12, 9, 6, 9,
10, 12, 12, 13, 14, 15, 15, 16,
16, 22, 12, 8, 11, 11, 11, 12,
15, 16, 12, 9, 10, 10,
/* F2 */
12, 12, 12, 12, 13, 15, 15, 16,
16, 16, 18, 20, 21, 6, 10, 7,
8, 9, 9, 9, 9, 10, 10, 10,
10, 10, 10, 10, 10, 10, 10, 11,
11, 11, 11, 11, 11, 11, 11, 11,
11, 11, 12, 12, 12, 12, 12, 12,
12, 12, 12, 12, 12, 12, 13, 13,
13, 13, 13, 13, 13, 13, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14,
14, 14, 14, 14, 15, 15, 15, 15,
15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 16, 16, 16, 16,
/* F3 */
16, 16, 16, 16, 16, 16, 17, 17,
17, 17, 17, 17, 17, 17, 17, 17,
17, 18, 18, 18, 18, 19, 19, 19,
19, 20, 21, 24, 26, 6, 14, 17,
17, 10, 8, 9, 9, 9, 10, 10,
10, 10, 10, 11, 11, 11, 11, 11,
11, 11, 11, 11, 11, 11, 11, 12,
12, 12, 12, 12, 12, 13, 13, 13,
13, 13, 13, 14, 14, 14, 14, 14,
14, 14, 14, 14, 14, 14, 14, 15,
15, 15, 15, 16, 16, 16, 16, 16,
17, 17, 17, 17, 17, 17,
/* F4 */
18, 18, 18, 19, 19, 19, 8, 9,
11, 12, 10, 10, 9, 9, 9, 10,
10, 10, 10, 11, 11, 11, 11, 12,
13, 13, 14, 15, 17, 18, 19, 10,
10, 11, 13, 13, 19, 11, 11, 13,
15, 15, 16, 9, 10, 10, 11, 11,
12, 12, 13, 14, 14, 14, 15, 15,
15, 15, 15, 16, 18, 6, 15, 9,
11, 12, 14, 14, 15, 15, 16, 17,
6, 12, 14, 14, 17, 25, 11, 19,
9, 12, 13, 13, 23, 11, 15, 10,
11, 9, 10, 10, 10, 12,
/* F5 */
12, 12, 13, 13, 13, 14, 14, 14,
14, 14, 15, 15, 16, 16, 16, 17,
17, 18, 19, 19, 19, 20, 20, 21,
7, 16, 10, 13, 14, 18, 18, 10,
10, 11, 11, 11, 12, 12, 12, 12,
12, 12, 12, 12, 13, 13, 13, 13,
13, 13, 13, 14, 14, 15, 15, 15,
15, 15, 15, 15, 15, 16, 16, 16,
16, 16, 16, 16, 16, 17, 17, 17,
19, 19, 19, 19, 19, 20, 21, 22,
22, 23, 24, 7, 12, 13, 13, 17,
17, 11, 11, 12, 12, 13,
/* F6 */
13, 14, 15, 13, 18, 12, 11, 12,
12, 14, 14, 16, 16, 16, 19, 19,
20, 22, 10, 13, 13, 13, 14, 14,
15, 15, 17, 8, 12, 20, 8, 10,
10, 13, 14, 18, 18, 14, 14, 15,
16, 17, 18, 18, 21, 24, 12, 12,
13, 13, 13, 13, 13, 13, 13, 13,
14, 14, 14, 14, 14, 14, 14, 14,
15, 15, 15, 15, 15, 15, 15, 15,
15, 15, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 17, 17,
17, 17, 17, 17, 17, 17,
/* F7 */
18, 18, 18, 18, 18, 19, 19, 19,
19, 19, 19, 20, 20, 20, 21, 14,
14, 15, 15, 16, 18, 18, 18, 19,
19, 13, 13, 14, 14, 14, 15, 15,
17, 17, 18, 18, 19, 19, 22, 14,
14, 15, 16, 16, 17, 19, 12, 15,
18, 22, 22, 10, 13, 14, 15, 15,
16, 16, 16, 18, 19, 20, 23, 25,
14, 15, 17, 13, 16, 16, 17, 19,
19, 21, 23, 17, 17, 17, 18, 18,
19, 20, 20, 20, 20, 21, 17, 18,
20, 23, 23, 16, 17, 23,
/* F8 */
}
}
发表评论
-
创建文件夹,用系统日期命名。
2006-06-08 17:46 962import java.util.*;import java. ... -
将不同目录下的文件,复制到同一个目录下。
2006-06-09 08:50 949import java.io.*;public class F ... -
字符串转换和toString()、字符截取charAt()、一次截取多个字符getChars()
2006-06-09 09:19 1343class Person{ String name; Stri ... -
对字符串数组进行排序,在冒泡法排序中使用compareTo()方法确定排序的顺序。
2006-06-09 11:13 1318//A bubble sort for Strings.pub ... -
使用substring()方法完成字符串替换.
2006-06-09 13:38 949/* 利用substring()方法可以截取字符串,它有两种形 ... -
JAVA编程规范
2006-06-09 16:51 991作者:李小敏 本文选自:IBM DW中国 2002年08月21 ... -
通过调用System.getProperty()方法来获得不同环境变量的值。
2006-06-10 20:11 1014class ShowUserDir{ public stati ... -
使用TreeSet()进行排序
2006-06-13 18:41 941/* TreeSet为使用树来进行存储的Set接口提供了一个工 ... -
使用LinkedList存储信箱地址
2006-06-13 18:51 865/* 除了在类集中存储用户定义的类之外,关于下面程序的另一个重 ... -
HashMap用法 示例
2006-06-14 08:48 1248/* 程序开始创建了一个散列映射,然后将名字的映射增加到平衡表 ... -
TreeMap用法 示例
2006-06-14 09:14 2178/* TreeMap类通过使用树来实现Map接口.TreeMa ... -
TreeSet() 类逆向排序(实现compare()方法以便按正常顺序的逆向进行操作)。
2006-06-14 10:28 2122/* 仔细观察实现Comparator并覆盖compare() ... -
TreeMap 排序
2006-06-14 15:34 2118/* 比较函数类TComp比较两个包含姓和名的字符串。它首先比 ... -
Arrays类中的一些方法 示例
2006-06-15 08:48 884//Demonstrate Arrays.import jav ... -
Vector Enumeration 示例
2006-06-15 09:47 1038//Demonstrate various vector op ... -
堆栈(Stack)示例
2006-06-15 10:44 848//Demonstrate the Stack class.i ... -
Hashtable 示例
2006-06-15 13:19 933//Demonstrate a Hashtable.impor ... -
Properties 示例
2006-06-15 14:48 895/* 为了更大的灵活性,当构造一个属性(Properties) ... -
Properties的store()方法和load()方法 示例
2006-06-15 15:31 1474/* Properties的一个最有用的方面是可以利用stor ... -
StringTokenizer(字符串标记) 示例
2006-06-15 16:56 864//Demonstrate StringTokenizer.i ...
相关推荐
为了准确地获取每个汉字的笔画数,本例中使用了一个预定义的数组`gb2312StrokeCount`,该数组包含了GB2312编码集中所有汉字的笔画数。对于任意一个汉字,首先将其转换为GB2312编码,再根据其高字节和低字节在数组中...
用java实现汉字的笔画数源代码,理解学习java
标题"java汉字笔画排序源码"表明这是一个关于使用Java编程语言实现汉字笔画排序的代码示例。通过源码分析,我们可以学习如何计算汉字的笔画数以及如何将这些信息用于实现排序算法。 描述中提到的链接指向了一篇CSDN...
总的来说,"计算汉字笔画数资源chineseGBKStroke"是一个包含关键组件的资源包,适用于Java开发者进行汉字处理工作,特别是需要计算汉字笔画数和进行简繁体转换的场景。通过理解并利用这些资源,开发者可以构建高效且...
利用java对基本汉字(unicode编码4E00-9FA5)进行笔画排序 资源更新查看:https://blog.csdn.net/u013271384/article/details/76549368
在给出的标题"java汉字笔画排序2例子及jar包"中,我们可以推断这是一个关于Java实现汉字笔画排序的项目,其中可能包含了两种不同的实现方式或者优化后的版本。 描述中提到,"对排序方法重新定义,减少占用,效率...
在Python编程语言中,查询汉字的笔画数是一项常见的任务,尤其在中文处理或数据分析时。这个主题涉及到几个关键知识点,包括Python的字符串操作、汉字编码以及如何利用数据资源来获取汉字笔画信息。 首先,我们需要...
Java汉字笔画排序是一个在中文处理领域常见的需求,特别是在数据整理、信息检索或者用户界面排序等方面。本项目提供的"java汉字笔画排序2源代码jar包"是一个优化过的解决方案,旨在减少内存占用并提高排序效率。 ...
总的来说,Java中获取汉字的拼音、部首、笔画和笔画数目需要结合使用特定的库和自定义的处理逻辑。这涉及到对汉字编码、自然语言处理以及数据结构的理解。HanDict文件则可能是提供这类信息的关键,它可能包含了汉字...
在标题"vbs计算汉字笔画数的代码"中,我们了解到这个项目是用VBScript编写的一个程序,它的主要功能是计算汉字的笔画数。笔画数是汉字的基本结构元素,通常用于汉字的学习、教学以及汉字输入法的实现。要实现这个...
完整的汉字笔画数笔顺数据库,包含ID、汉字、笔画数、笔顺、Unicode、GB码信息。 每个汉字带有笔顺,可以通过笔顺知道汉字的构造和书写顺序; 可以通过给定一个笔顺,快速知道笔画数。 该数据库为access的aoo数据库...
MySQL数据库文件,汉字笔画数笔顺数据库,字段为:ID、汉字、笔画数、笔顺码,unicode编码、gbcode编码,共20902个汉字。亲测可用,直接从mysql数据库导出。可直接导入到mysql数据库中。
汉字笔画 输入汉字 输出笔画数 VC++ 含全部源码 汉字笔画 输入汉字 输出笔画数 VC++ 含全部源码
c#计算汉字笔画数的类,方便进行汉字笔画数查询
汉字笔画数查询工具是IT领域中一种实用的软件应用,尤其对于学习中文、研究汉字或者进行汉字输入法开发的人员来说,具有重要的价值。它能够帮助用户快速准确地了解汉字的笔画数量,无论是简体汉字还是繁体汉字,都能...
在“ChineseUtility”压缩包文件中,就可能包含这样的中文笔画数列表,它可能是数据库或文本文件格式,以便于在不同的平台和应用中使用。开发者可以利用这些资源,将笔画数查询、学习辅助等实用功能集成到教育软件、...
"计算汉字笔画"这个主题涉及到计算机如何理解和处理汉字的结构,特别是如何通过编程来计算每个汉字的笔画数。这在自然语言处理(NLP)、信息检索、汉字教学软件以及各种文本分析应用中都有重要的应用。 汉字笔画是...
对于软件实现来说,通常会有一个汉字与笔画数的对应数据库或者算法,通过查询或计算得到每个汉字的笔画数。 该软件使用了Visual Basic(VB)作为开发语言,VB是一种面向对象的编程语言,适合于快速开发Windows应用...
mysql汉字笔画库,汉字查询笔画数量,包含普通汉字,UNicode、GB编码等,字段包含:汉字、笔画数、笔顺、UNicode、GB等
本文将深入探讨如何使用C#来获取汉字的笔画数,这是一个涉及字符编码、字符串处理以及可能的算法实现的知识点。 首先,我们要理解汉字的笔画数是由汉字的结构决定的,每个汉字都有其特定的笔画数量,这是汉字的基本...