HDU 2097Sky数

来源:互联网 发布:淘宝宝贝描述上传图片 编辑:程序博客网 时间:2024/06/03 15:58
http://acm.hdu.edu.cn/showproblem.php?pid=2097
这道题目主要是进制转换问题。当然可以用栈

Sky数

Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 14327    Accepted Submission(s): 8284


Problem Description
Sky从小喜欢奇特的东西,而且天生对数字特别敏感,一次偶然的机会,他发现了一个有趣的四位数2992,这个数,它的十进制数表示,其四位数字之和为2+9+9+2=22,它的十六进制数BB0,其四位数字之和也为22,同时它的十二进制数表示1894,其四位数字之和也为22,啊哈,真是巧啊。Sky非常喜欢这种四位数,由于他的发现,所以这里我们命名其为Sky数。但是要判断这样的数还是有点麻烦啊,那么现在请你帮忙来判断任何一个十进制的四位数,是不是Sky数吧。
 

Input
输入含有一些四位正整数,如果为0,则输入结束。
 

Output
若n为Sky数,则输出“#n is a Sky Number.”,否则输出“#n is not a Sky Number.”。每个结果占一行。注意:#n表示所读入的n值。
 

Sample Input
299212340
 

Sample Output
2992 is a Sky Number.1234 is not a Sky Number.
 

Source
2007省赛集训队练习赛(2)
 
代码如下

#include<iostream>
#include<cstring>
#include<algorithm>
#include<cstdlib>
#include<vector>
#include<cmath>
#include<stdlib.h>
#include<iomanip>
#include<list>
#include<deque>
#include<map>
#include <stdio.h>
#include <queue>
#include<stack>
#define maxn 10000+5
#define ull unsigned long long
#define ll long long
#define reP(i,n) for(i=1;i<=n;i++)
#define rep(i,n) for(i=0;i<n;i++)
#define cle(a) memset(a,0,sizeof(a))
#define mod 90001
#define PI 3.141592657
#define INF 1<<30
const ull inf = 1LL << 61;
const double eps=1e-5;

using namespace std;

bool cmp(int a,int b){
return a>b;
}

int to12(int n)
{
stack <int> s;
int b,sum=0;
while(1)
{
b=n%12;
//s12[i++]=(char)(b+'0');
s.push(b);
n/=12;
if(n==0)break;
}

while(!s.empty())
{
sum+=s.top();
s.pop();
}
return sum;
}
int to16(int n)
{
stack <int> ss;
int b,sum=0;
while(1)
{
b=n%16;
//s12[i++]=(char)(b+'0');
ss.push(b);
n/=16;
if(n==0)break;
}
while(!ss.empty())
{
sum+=ss.top();
ss.pop();
}
return sum;
}
int to10(int n)
{
return n/1000+n/100%10+n/10%100%10+n%10;
}
int main()
{
//freopen("in.txt","r",stdin);
//freopen("out.txt","w",stdout);
int n;
while(cin>>n&&n)
{
if(to10(n)==to12(n)&&to12(n)==to16(n))printf("%d is a Sky Number.\n",n);
else printf("%d is not a Sky Number.\n",n);
}
return 0;
}



0 0
原创粉丝点击