TopCoder - SRM 424 DIV 2: 250
今回も英語に苦しみました・・・。英語勉強しないとですね。今回の問題は英大文字の文字列の中から、'A'と'Z'を抜き出し、その文字列の中で順番を反転するというもの。コードはソースコードビューアに保存しました。いつも思うけどおれのコードは長い。
public class MagicSpell { public String fixTheSpell(String spell) { char[] c = spell.toCharArray(); int r = c.length; for (int i=0;i<c.length;i++) { if (c[i]=='A'||c[i]=='Z'){ System.out.println("i:"+c[i]); for (int j=r;j>0;j--) { if (c[j-1]=='A'||c[j-1]=='Z'){ System.out.println("j:"+c[j-1]); char temp = c[j-1]; c[j-1]=c[i]; c[i]=temp; r=j-1; break; } } } if (i>=r-1) { break; } } return new String(c); } }
コメント
コメントを投稿