I♥TLE

Java、オンラインジャッジなど

0002-DigitNumber

問題(外部リンク)

Digit Number | Aizu Online Judge

実装の概要

aとbの和をひたすら10で割り続け、ループの回数で桁数を判断します。
なお、実装例2のように和を文字列に変換してからその長さを出力するという方法でも解けます。

実装例1

public class Main {
 
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
 
        while(true){
            String tmpStr = br.readLine();
            if(tmpStr == null){
                break;
            }
 
            String[] tmpArray = tmpStr.split(" ");
 
            int num1 = Integer.parseInt(tmpArray[0]);
            int num2 = Integer.parseInt(tmpArray[1]);
 
            int sum = num1 + num2;
 
            int keta = 0;
            for (keta = 0; sum > 0 ; keta++ ){
                sum /= 10;
            }
            System.out.println(keta);
        }
    }
}

実装例2

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        while(true){
            String tmpStr = br.readLine();
            if(tmpStr == null){
                break;
            }

            String[] tmpArray = tmpStr.split(" ");

            int num1 = Integer.parseInt(tmpArray[0]);
            int num2 = Integer.parseInt(tmpArray[1]);

            int sum = num1 + num2;

            System.out.println(Integer.toString(num1 + num2).length());
        }
    }
}