0413ハザード数


問題の説明


正の整数xを下のスケール数にするには、xをxの桁数の和で除算する必要があります.例えば、18の桁数の和は1+8=9であり、18は9で除算されるので、18は下付き文字数となる.自然数xを入力し、xがハザード数の関数かどうかをチェックし、解を完了します.

せいげんじょうけん

  • xは、1または10000より大きい整数である.
  • I/O例


    arrreturn10true12true11false13false

    I/O例説明


    I/O例#1
    10のすべての桁数の和は1です.10を1で割ったので、10はハザード数です.
    I/O例#2
    11のすべての桁数の和は2です.11点は2にならないので、11はハザード数ではありません.

    きほんコード

    class Solution {
        public boolean solution(int x) {
            boolean answer = true;
            return answer;
        }
    }

    正しいコード

    class Solution {
        public boolean solution(int x) {
            boolean answer = true;
            int a = 0;
            int n = x;
            
            while(n!=0){
                a += n%10;
                n = n/10;
            }
            
            if(x%a==0) return answer;
            return false;
        }
    }

    問題を解く


    nが0でないまでwhile文を返し、n%10を加えてaに保存し、x%a=0の場合trueを返します.そうでない場合falseを返します.