南阳理工OJ34题

韩信点兵

时间限制:3000 ms  |  内存限制:65535 KB
34难度:1
描述
相传韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后以三人一排、五人一排、七人一排地变换队形,而他每次只掠一眼队伍的排尾就知道总人数了。输入3个非负整数a,b,c ,表示每种队形排尾的人数(a<3,b<5,c<7),输出总人数的最小值(或报告无解)。已知总人数不小于10,不超过100 。
输入
输入3个非负整数a,b,c ,表示每种队形排尾的人数(a<3,b<5,c<7)。例如,输入:2 4 5
输出
输出总人数的最小值(或报告无解,即输出No answer)。实例,输出:89
样例输入
2 1 6
样例输出
41
来源
#include<cstdio>
int main()
{
	int a,b,c,s;
	scanf("%d%d%d",&a,&b,&c);
	for(int i=10;i<=100;i++){
		if((i-a)%3==0&&(i-b)%5==0&&(i-c)%7==0){//判断从10到100的满足条件的数据 
			s=i;
		    printf("%d\n",s);
		     break;//得到一个最小值后需要跳出循环,否则会输出全部满足条件的结果,
			       //这里只需要一个最小值 
		}
	}
	if(s<10||s>100){
		printf("No answer\n");//都不满足则按提示输出 
	}
	return 0;
 } 



经典算法上传者首席执行官

阅读更多 登录后自动展开
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页