练习系统 实验三 数字三角形

本文解析了一道关于排列组合的编程题目——数字三角形。题目要求将六个不同的整数排布成特定的三角形形状,使得每条边上的数字之和相等。通过递归枚举的方法给出了具体实现代码。

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

当前编程题:实验三 大数、枚举问题(16级)---数字三角形

1.
问题描述
A B C D E F 这六个变量排成如图所示的三角形。
A
B     F
              C   D   E
 
这六个变量分别取 [1 6] 上的整数,且均不相同,构成的三角形三条边上的变量之和相等。当给出三角形顶点 A 的取值后,给出能构成这样三角形的全部解。
输入形式
仅含一个十进制表示的整数 A(1 <= A< =6)
输出形式
多行,每行为一个解,按 ABCDEF 形式输出,并且各解的输出顺序是按其所组成的整数由小到大顺序输出。
样例输入
1
样例输出
145236
153426
162435
163254


今天智商不在线  哈哈

#include<stdio.h>
int main()
{
int a,b,c,d,e,f;
scanf("%d",&a);
for(b=1;b<=6;b++)
{
if(a==b)
{
continue;
}
for(c=1;c<=6;c++)
{
if(a==c||b==c)
{
continue;
}
for(d=1;d<=6;d++)
{
if(a==d||b==d||c==d)
{
continue;
}
for(e=1;e<=6;e++)
{
if(a==e||b==e||c==e||d==e)
continue;
for(f=1;f<=6;f++)
{
if(a==f||b==f||c==f||d==f||e==f)
{
continue;
}
if(a+b+c==c+d+e&&c+d+e==a+e+f)
{
printf("%d%d%d%d%d%d\n",a,b,c,d,e,f);
}
}
}
}
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值