水题
求出所有的4位数(十进制下),满足一下条件的数,要求转化成为12进制,16进制后,各个数位上的数字的和相等
#include <bits/stdc++.h>
using namespace std;
int duo(int num)
{
int sum=0;
sum+=(num/1728);
num=num%1728;
sum+=(num/144);
num=num%144;
sum+=(num/12);
sum+=(num%12);
return sum;
}
int hex(int num)
{
int sum=0;
sum+=(num/4096);
num=num%4096;
sum+=(num/256);
num=num%256;
sum+=(num/16);
sum+=(num%16);
return sum;
}
int main()
{
for (int i1=1;i1<=9;i1++){
for (int i2=0;i2<10;i2++){
for (int i3=0;i3<10;i3++){
for (int i4=0;i4<10;i4++){
int sum1=i1+i2+i3+i4;
int data=i1*1000+i2*100+i3*10+i4;
if (sum1==duo(data)&&sum1==hex(data)){
printf("%d\n",data);
}
}
}
}
}
return 0;
}