Specialized Four-Digit Numbers——进制转换

it2023-09-09  79

可以说是板子题,进制转换,不断取余,这道题简单在也不用输出,比如十六进制九以后的数要表示成A,B,C…像这道题就可以直接取余然后加到结果里,然后不同进制的结果进行比较。

#include<iostream> #include<set> #include<queue> #include<cmath> #include<stack> #include<vector> #include<string> #include<cstring> #include<cstdio> #include<algorithm> #include<functional> using namespace std; const int maxn=1010; const int INF=0x3f3f3f3f; //十、十二、十六进制每一位相加的结果相等 //没有输入,四位十进制 int a[maxn]; int tentok(int n,int k){ int res=0; while(n){ res+=n%k; n/=k; } return res; } int main(){ for(int i=2992;i<=9999;i++){ int sum=0; int j=i; while(j){ sum+=j%10; j/=10; } if(sum==tentok(i,12)&&sum==tentok(i,16)) cout<<i<<endl; } return 0; }
最新回复(0)