回答編集履歴
2
全角数字の変換を追加
answer
CHANGED
@@ -32,4 +32,10 @@
|
|
32
32
|
}
|
33
33
|
}
|
34
34
|
|
35
|
-
```
|
35
|
+
```
|
36
|
+
**追記**
|
37
|
+
全角数字の変換が抜けていました。
|
38
|
+
if (c >= 'A' && c <= 'Z' || c >= 'a' && c <= 'z') {
|
39
|
+
を
|
40
|
+
if (c>='A' && c<='Z' || c>='a' && c<='z' || c>='0' && c<='9') {
|
41
|
+
に修正してください。
|
1
import と k の削除
answer
CHANGED
@@ -1,23 +1,21 @@
|
|
1
1
|
作ってみました。
|
2
2
|
```
|
3
|
-
import java.util.*;
|
4
|
-
|
5
3
|
class HanZen {
|
6
4
|
final static char[] ktab =
|
7
5
|
("ヲァィゥェォャュョッーアイウエオカキクケコサシスセソタチツテト" +
|
8
|
-
|
6
|
+
"ナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン").toCharArray();
|
9
7
|
final static char[] ptab =
|
10
8
|
("................111111111111111.....22222...............").toCharArray();
|
11
9
|
|
12
10
|
public static String conv(String s) {
|
13
|
-
int n = s.length(), j = 0
|
11
|
+
int n = s.length(), j = 0;
|
14
12
|
char p = 0, t[] = new char[n];
|
15
13
|
for (int i = 0; i < n; i++) {
|
16
14
|
char c = s.charAt(i);
|
17
15
|
if (c >= 'A' && c <= 'Z' || c >= 'a' && c <= 'z') {
|
18
16
|
t[j++] = (char)(c - ('A' - 'A')); p = 0;
|
19
17
|
}
|
20
|
-
else if (c >= 'ヲ' && c <= 'ン') {
|
18
|
+
else if (c >= 'ヲ' && c <= 'ン') { t[j++] = ktab[c-'ヲ']; p = ptab[c-'ヲ']; }
|
21
19
|
else if (c == '゙' && p >= '1') { t[--j] = (char)(t[j++] + 1); p = 0; }
|
22
20
|
else if (c == '゚' && p == '2') { t[--j] = (char)(t[j++] + 2); p = 0; }
|
23
21
|
else { t[j++] = c; p = 0; }
|
@@ -33,4 +31,5 @@
|
|
33
31
|
System.out.println(HanZen.conv(s));
|
34
32
|
}
|
35
33
|
}
|
34
|
+
|
36
35
|
```
|