本文共 1533 字,大约阅读时间需要 5 分钟。
用 1,2,3...9 组成的3位数 abc, def, ghi 每个数字 恰好使用一次,要求 abc,:def:ghi = 1 :2 : 3 ,按照 abc def ghi 格式输出所有解
解法1(暴力穷举):
#includeint main() { int a, b, c, d, e, f, g, h, i; for(a = 1; a <= 9; a++ ){ for(b = 1; b <= 9; b++ ){ for(c = 1; c <= 9; c++ ){ for(d = 1; d <= 9; d++){ for(e = 1; e <= 9; e++ ){ for(f = 1; f <= 9; f++ ){ for(g = 1; g <= 9; g++){ for(h = 1; h <= 9; h++ ){ for(i = 1; i <=9; i++ ){ if(2*(a*100+b*10+c) == (d*100+e*10+f) && 3*(a*100+b*10+c) == (g*100+h*10+i)&& a!=b && a!=c && a!=d && a!=e && a!=f && a!=g && a!=h && a!=i && b!=c && b!=d && b!=e && b!=f && b!=g && b!=h && b!= i && c != d && c!=e && c!=f && c!=g && c!=h && c != i && d != e && d!=f && d!=g && d!= h && d!=i && e != f && e!=g && e!=h && e!=i && f!=g && f!=h && f!=i && g != h && g!=i && h!=i) printf("%d%d%d %d%d%d %d%d%d\n",a,b,c,d,e,f,g,h,i); } } } } } } } } } return 0; }
#include#include int main() { int x, b, c; int a[10] = {0}; for(int x = 100; x < 333; x++ ){// x*3 = 999 b = 2*x; c = 3*x; a[x/100] = a[x/10%10] = a[x%10] = 1; a[b/100] = a[b/10%10] = a[b%10] = 1; a[c/100] = a[c/10%10] = a[c%10] = 1; int s = 0; for(int i = 1; i <= 9; i++){ s += a[i]; } if(s == 9) printf("%d %d %d\n",x,b,c); memset(a,0,sizeof(a)); // for(int i = 1; i <= 9; i++)// a[i] = 0; } return 0; }
转载地址:http://saimi.baihongyu.com/