本题思路也比较简单,暴力求解即可,值得注意的是“分解成3个各不相同的正整数”和“数字的顺序问题”,3个数字全排列即A33 =6 ,所以最后的结果要除以6才等于本题的答案!!!!!!!!!
int f(int n) { do { if(n%10==2||n%10==4) return 0; else { n/=10; } }while(n/10); if(n%10==2||n%10==4) return 0; return 1; } #includeint main() { int n,cn=0,i,j,z; for(i=1;i<=2017;i++) { for(j=1;j<=2017;j++) { if(i==j) continue; for(z=1;z<=2017;z++) { if(i==z||j==z) continue; if(i+j+z==2019&&f(i)&&f(j)&&f(z)) { cn++; } } } } printf("%d",cn/6); return 0; }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)