NYOJ 39水仙数
1242 ワード
水仙の数
時間制限:
1000 ms|メモリ制限:
65535 KB
難易度:
0
説明
一つの数が水仙の数かどうかを判断してください.
ここで、水仙の数は、各ビット数立方体とそれ自体の3ビット数を定義します.
入力
複数のテストデータがあり、各テストデータは整数n(100<=n<1000)を含む
0を入力するとプログラム入力が終了します.
しゅつりょく
nが水仙数ならYesを出力
出力No
サンプル入力
サンプル出力
考え方:この数の個位、10位と百位を分離し、要求に応じて水仙の数かどうかを判断すればよい.
もちろん、すべての水仙の数を求めて、入力した数がこれらの水仙の数の中にあるかどうかを判断することができます.
時間制限:
1000 ms|メモリ制限:
65535 KB
難易度:
0
説明
一つの数が水仙の数かどうかを判断してください.
ここで、水仙の数は、各ビット数立方体とそれ自体の3ビット数を定義します.
入力
複数のテストデータがあり、各テストデータは整数n(100<=n<1000)を含む
0を入力するとプログラム入力が終了します.
しゅつりょく
nが水仙数ならYesを出力
出力No
サンプル入力
153
154
0
サンプル出力
Yes
No
考え方:この数の個位、10位と百位を分離し、要求に応じて水仙の数かどうかを判断すればよい.
#include
int main()
{
int a,b,c;
int n;
while (scanf("%d",&n) != EOF && n != 0)
{
if (n < 100 || n > 999)
{
printf("No
");
}
else
{
a = n % 10; //
b = n / 10 % 10;//
c = n / 100; //
if (n == a*a*a + b*b*b + c*c*c)
{//
printf("Yes
");
}
else
{
printf("No
");
}
}
}
return 0;
}
もちろん、すべての水仙の数を求めて、入力した数がこれらの水仙の数の中にあるかどうかを判断することができます.
#include
int main()
{
int n;
while (1)
{
scanf("%d",&n);
if (n == 0)
{
break;
}
else
{
if (n == 153 || n == 370|| n == 371 || n == 407)
{
printf("Yes
");
}
else
{
printf("No
");
}
}
}
return 0;
}