ikemonn's blog

技術ネタをちょこちょこと

【TopCoder】SRM164 DIV2 Lv.1

問題文概略

与えれた配列の中で一番文字数が多い要素と同じ文字数になるように、空白をつけよ。

書いたコード

public class Justifier {

    public String[] justify(String[] textIn) {

        int max = 0;
        String x ="";

        for (int i = 0; i < textIn.length; i++){
            max = Math.max(max, textIn[i].length());
        }

        for (int j = 0; j < textIn.length; j++){
                for(int k = 1; k <= max - textIn[j].length(); k++) {
                     x += " ";
                }
                textIn[j] = x + textIn[j];
                x = "";
        }
        return textIn;
    }

}

他の参加者のコードを読んで修正した

public class Justifier {

    public String[] justify(String[] textIn) {

        int max = 0;
        for (int i = 0; i < textIn.length; i++){
            max = Math.max(max, textIn[i].length());
        }
        String x[] = new String[textIn.length];
        for (int j = 0; j < textIn.length; j++){
                x[j] = " ";
                for(int k = 1; k <= max - textIn[j].length(); k++) {
                    x[j] += " ";
                }
                textIn[j] = x + textIn[j];
        }
        return textIn;
    }

}

雑感

そろそろLv.2の勉強に移行しよう。