へっぽこびんぼう野郎のnewbie日記

けろけーろ(´・ω・`)!

Javaでこれ解いてみた→http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0506

と言っても、ファイル入出力のところはやってない。

めんどくs(ry

ソース汚いけど、Java歴2ヶ月弱で、30分で解いたから上出来かなと思っている。

charをボクシング化せずに比較したかった。

あと無駄にflgとか使ってるけどいらない気がするよ!

 

 public class Aizu{

  static String changeStr(String str){

    Character b_diff = ' ';

    Character a_diff = ' ';

    int disp_times = 1;

    String next_str = ""; 

    boolean flg = false;

    for(int i=0; i<str.length(); i++){

      a_diff = str.charAt(i);

      if(b_diff.compareTo(a_diff)==0){

        disp_times++;

        b_diff = a_diff;

 

      } else if(flg == false) {

        b_diff = a_diff;

        flg = true;

      } else {

        next_str+=disp_times;

        next_str+=b_diff;

        b_diff = a_diff;

        disp_times = 1;

      }   

 

      if(i == str.length()-1){

        next_str+=disp_times;

        next_str+=b_diff;

      }   

    }   

 

    return next_str;

  }

 

  public static void main(String[] args){

    int times = 5;

    String str = "11";

 

    for(int i = 0; i < times; i++){

      str = changeStr(str);

    }

    System.out.println(str);

  }                                                                                                         }