题目链接P1008 [NOIP 1998 普及组] 三连击 - 洛谷最佳思路数据量小 直接枚举#includebits/stdc.h using namespace std; bool f(int x,int y, int z) { int c[10] {0}; int num[3] {x,y,z}; for(int i 0 ; i 3;i) { while(num[i] ! 0) { c[num[i] % 10]; num[i] / 10; } } for(int i 1;i 10 ;i) { if(c[i] ! 1) return false; } return true; } int main() { for(int i 123;i 329;i) { if(f(i,2*i,3*i)) { cout i 2*i 3*i endl; } } return 0; }f()函数为查找这三个数每一个数出现的次数同过一个记忆数组c并配合%10再/10的过程不断将每一位数“剥下来”最后的查重不要忘记i从1开始因为0数字不存在
阅读完成 · 觉得有帮助?