HDU 2097 sky數 (進制轉化)
阿新 • • 發佈:2018-07-15
href name 轉換 如果 十進制數 using http 喜歡 its
Input
輸入含有一些四位正整數,如果為0,則輸入結束。
傳送門:
Sky數
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 28761 Accepted Submission(s): 16168
Output 若n為Sky數,則輸出“#n is a Sky Number.”,否則輸出“#n is not a Sky Number.”。每個結果占一行。註意:#n表示所讀入的n值。
Sample Input 2992 1234 0
Sample Output 2992 is a Sky Number. 1234 is not a Sky Number.
Source 2007省賽集訓隊練習賽(2) 分析: 先把他們十進制的和,十六進制的和,12進制的和求出來,如何比較是否相等即可 重要知識點: 進制的轉換(一種很好很容易懂的代碼格式) code:
#include<bits/stdc++.h> usingnamespace std; typedef long long ll; int ten(int x) { int sum=0; while(x) { sum+=x%10; x=x/10; } return sum; } int sixth(int x) { int sum=0; while(x) { sum+=x%16; x=x/16; } return sum; } int twelve(int x) { int sum=0; while(x) { sum+=x%12; x=x/12; } return sum; } int main() { int n; while(~scanf("%d",&n)) { if(n==0) break; int a=ten(n); int b=sixth(n); int c=twelve(n); if(a==b&&b==c) { printf("%d is a Sky Number.\n",n); }else { printf("%d is not a Sky Number.\n",n); } } return 0; }
HDU 2097 sky數 (進制轉化)