【语法题】紫书习题2-6排列

刘汝佳《算法竞赛入门经典(第2版)》P41

题面:

用1,2,3,…,9组成3个三位数abc, def和ghi,每个数字恰好使用一次,要求abc:def:ghi = 1:2:3。按照”abc def ghi”的格式输出所有解,每行一个解。提示:不必太动脑筋。

 代码:习题2-6排列_threealone的博客-CSDN博客

#include <stdio.h>
#include <string.h>
int main()
{
    int x,y,z,a[10],i,s;
    memset(a,0,sizeof(a));//赋值为0
    for(x=123;x<333;x++){
        y=2*x;
        z=3*x;
        //令a[出现的数字]=1
        a[x/100]=a[x/10%10]=a[x%10]=1;
        a[y/100]=a[y/10%10]=a[y%10]=1;
        a[z/100]=a[z/10%10]=a[z%10]=1;
        s=0;
        for(i=1;i<10;i++)
            s+=a[i];
        if(s==9)
            printf("%d %d %d\n",x,y,z);
        memset(a,0,sizeof(a));//重新赋值为0
    }
    return 0;
}
//https://blog.csdn.net/qq_27733799/article/details/78813615

 

posted @ 2022-01-22 21:37  infocodez  阅读(45)  评论(0编辑  收藏  举报