andre_joy

导航

hdu 1197

地址:http://acm.hdu.edu.cn/showproblem.php?pid=1197

题意:求一个数转换成10,12,16进制后各个位上的数的和是否相等。

mark:模拟进制转换。

代码:

#include <stdio.h>

int zh(int a, int n)
{
    int sum = 0;
    while(a)
    {
        sum += a%n;
        a /= n;
    }
    return sum;
}

int main()
{
    int m;
    for(m = 2992; m < 10000; m++)
        if(zh(m, 10) == zh(m, 12) && zh(m, 10) == zh(m, 16)) printf("%d\n", m);
    return 0;
}

posted on 2012-07-03 23:34  andre_joy  阅读(113)  评论(0编辑  收藏  举报