#include "stdafx.h"
#include<iostream>
using namespace std;
#include<iomanip>
int main()
{
int i;
int a,b,c,d,sum1,sum2,sum3;
//vector<int>::iterator it;
for(i=2992;i<10000;i++)
{
a=i/1000;
b=(i%1000)/100;
c=((i%1000)%100)/10;
d=((i%1000)%100)%10;
sum1=a+b+c+d;
//it.push_back(sum);
a=i/1728;
b=(i%1728)/144;
c=((i%1728)%144)/12;
d=((i%1728)%144)%12;
sum2=a+b+c+d;
a=i/4096;
b=(i%4096)/256;
c=((i%4096)%256)/16;
d=((i%4096)%256)%16;
sum3=a+b+c+d;
if(sum1==sum2&& sum2==sum3)cout<<i<<endl;
}
system("Pause");
return 0;
}
本题主要考虑的是整除以及求模的操作。本来先想着是否需要用vector的,后来发现就三个数的比较所以就直接比较好了,不需要大材小用的动用vector操作。
#include<iostream>
using namespace std;
#include<iomanip>
int main()
{
int i;
int a,b,c,d,sum1,sum2,sum3;
//vector<int>::iterator it;
for(i=2992;i<10000;i++)
{
a=i/1000;
b=(i%1000)/100;
c=((i%1000)%100)/10;
d=((i%1000)%100)%10;
sum1=a+b+c+d;
//it.push_back(sum);
a=i/1728;
b=(i%1728)/144;
c=((i%1728)%144)/12;
d=((i%1728)%144)%12;
sum2=a+b+c+d;
a=i/4096;
b=(i%4096)/256;
c=((i%4096)%256)/16;
d=((i%4096)%256)%16;
sum3=a+b+c+d;
if(sum1==sum2&& sum2==sum3)cout<<i<<endl;
}
system("Pause");
return 0;
}
本题主要考虑的是整除以及求模的操作。本来先想着是否需要用vector的,后来发现就三个数的比较所以就直接比较好了,不需要大材小用的动用vector操作。