解题思路:
注意事项:注意要把5放在最外层循环,因为输入10的时候会出现两个5块钱的笔的特殊情况,所以不考虑,因此最先考虑4和6的情况,4放最内层,因为当输入的数为4和6的最小公倍数时,四的除数更大,所以4优先放最内层
参考代码:
#include
int main()
{
int a=6;
int b=5;
int c=4;
int i,j,k;
int money;
int sum;
scanf("%d",&money);
for(j=0;j<100;j++)
{
for(i=0;i<100;i++)
{
for(k=0;k<100;k++)
{
sum=a*i+b*j+c*k;
if(sum==money)
{
goto l1;
}
if(sum>money)
{
break;
}
}
}
}
l1: printf("%d %d %d",i,j,k);
}
0.0分
2 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复