作者bleed1979 (十三)
看板java
标题Re: [问题]今年台银IT人员招考试题
时间Fri Nov 19 08:32:06 2010
: : 题目请参考http://210.68.8.81/tw/ptc_99taiwan/doc/rinbancnw.pdf。
public class Encoding {
public static void main(String[] args) {
Compress c = new Compress("3", "MEET ME XYZ");
System.out.println(c.encoding);
}
}
class Compress {
String table = "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ";
String encoding;
public Compress(String A, String B) {
char c;
int a = Integer.parseInt(A);
if(a >= 0) {
a %= 26;
StringBuffer sb = new StringBuffer();
for(int i = 0; i < B.length(); ++i) {
c = B.charAt(i);
if(c >= 'A' && c <= 'Z') {
sb.append(table.charAt((c - 'A') + a));
}
else {
sb.append(c);
}
}
encoding = sb.toString();
}
else {
encoding = B;
}
}
}
缩排怪怪的,懒得弄,仅供参考。
Bleed
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.43.112.251
1F:→ jej:我比较笨..我会用两个map去ko他.. 懒得想太多.. 11/19 21:42
2F:→ jej:不过原考题有一个瑕疵..MEET ME..又没说空白的对应.. 11/19 23:04
3F:→ Jichang:上面有写不处理 .... 11/20 10:44
4F:→ derekQQ:c为'Z'带进去会得到? 11/21 23:20
5F:→ derekQQ:sb.append(table.charAt(26 + 3)) ? 11/21 23:22
6F:→ derekQQ:要再%26吗? 11/21 23:23
7F:→ bleed1979:不必,table的长度是26*2 11/22 02:14
8F:→ derekQQ:喔喔~sorry~没看清楚~ 11/22 21:42