TopCoder - SRM 144 DIV 2: 500
うんむ・・・。難題にぶち当たって先に進まないから、息抜き(?)にTopCoderを解いた。なぜかストレス発散になるwww今回の問題は与えられた数値が何個の数値で割り切れるのかを求めるもの。割り切れない場合は'-1'を返す。
public class ProductOfDigits {
public int smallestNumber(int N) {
int i;
for (i=1; true; i++) {
int j = getint(N);
if (j==-1) {
return -1;
}
N = N / j;
System.out.println("N:"+N+" J:"+j);
if (N==1) {
break;
}
}
return i;
}
int getint (int N) {
for (int i=9; i>1; i--) {
if (N%i==0) {
return i;
}
}
return -1;
}
}
コメント
コメントを投稿