【问题描述】
考虑三元组<a1,a2,a3>。已知0<=a1,a2,a3<=n,而且a1+a2是2的倍数,a2+a3是3的倍数,a1+a2+a3是5的倍数,任务是找到一组a1,a2,a3,使得a1+a2+a3最大。
输入数据
输入为一行,包含一个整数n(0<=n<=100)
输出数据
一个整数,即a1+a2+a3的最大值
输入样例
3
输出样例
5
#include<stdio.h>
int main()
{
int a,b,c,n,m,d=0,f=0,e[100],max;
printf(“请输入一个正整数:”);
scanf("%d",&n);
for(a=0;a<=n;a++)
{
for(b=0;b<=n;b++)
{
for(c=0;c<=n;c++)
{
if((a+b)%20&&(b+c)%30&&(a+b+c)%5==0)
{
d++;
m=a+b+c;
e[d-1]=m;
}
}
}
}
max=e[0];
for(a=0;a<n;a++)
if(e[a]<e[a+1])
max=e[a+1];
printf(“最大数字三元组是%d\n”,max);
return 0;
}
来源:CSDN
作者:weixin_46352060
链接:https://blog.csdn.net/weixin_46352060/article/details/104617496