排列问题(permulation)

本文探讨了一个有趣的数学问题,利用C语言编程解决1至9数字排列成三个三位数,其比值为1:2:3的挑战。通过巧妙的算法,文章展示了如何筛选符合条件的数字组合,提供了一种简洁而有效的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题:

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

/*排列问题*/
#include<stdio.h>
int main()
{
    
    int x;
    for(x=100;3*x<1000;x++)
        {
            
            int a=x/100,b=(x-a*100)/10,c=x-a*100-b*10;
            int g1=2*x/100,s1=(2*x-g1*100)/10,q1=2*x-g1*100-s1*10;
            int g2=3*x/100,s2=(3*x-g2*100)/10,q2=3*x-g2*100-s2*10;
        //    printf("%d %d %d\n",a,b,c);  //此行用来测试的
            if(a+b+c+g1+s1+q1+g2+s2+q2==45)
                printf("%d   %d    %d\n",x,2*x,3*x);    
        }
    return 0;    
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值