憋了我半天,写个博客发泄一下

View Code
用1.2....9,这九个数字,组成三个三位数,要求每个数字只能用一次,而且,三个数字成比例,1:2:3
下面是代码
#include<stdio.h>
int main()
{
    int i,x,y,z,a,b,c;
    for(i = 123;i < 329; i++)
    {
        x = i;
        int f[10] = {0},flag = 0;
        y = 2*x;
        z = 3*x;
        a = x;
        b = y;
        c = z;
        while(x)
        {
            if(f[x%10])
            {
                flag = 1;
                break;
            }
            else
                f[x%10] = 1;
            x /= 10;
        }
        if(flag)
            continue;
        while(y)
        {
            if(f[y%10])
            {
                flag = 1;
                break;
            }
            else
                f[y%10] = 1;
            y /= 10;
        }
        if(flag)
            continue;
        while(z)
        {
            if(f[z%10])
            {
                flag = 1;
                break;
            }
            else
                f[z%10] = 1;
            z /= 10;
        }
        if(flag)
            continue;
        printf("%d %d %d\n",a,b,c);
    }
    return 0;
}
感言,做ACM有时候要冷静冷静再继续,要不会再小的误区给憋死....
原文地址:https://www.cnblogs.com/SDUTYST/p/2512231.html