目的:求解队伍人数

要求:

  输入:三人一排剩余无队人数,五人一排剩余无队人数,七人一排剩余无队人数,到文件末尾结束

  输出:总人数最小值或报告无解,人数有上下限要求[10, 100] 

  样例输入:2 1 6

       2 1 3

  样例输出:41

       No answer

思路:循环结构(多个输入,文件结束用scanf函数返回值判断;每组输入循环迭代找解),暴力求解。

      因为是根据三次排队剩余人数判断最小总人数,即总人数对三次排队每队人数取余分别为输入的三个数

代码如下:

#include<stdio.h>#define MinNum 10
#define MaxNum 100int main()
{int a, b, c;while(scanf("%d%d%d", &a, &b, &c) == 3){//输入无误int found = 0;int iter = MinNum;for(; iter <= MaxNum; iter++){if(!((iter - a) % 3) && !((iter - b) % 5) && !((iter - c) % 7)){found = 1;break;}}if(found){printf("%d\n", iter);}else{printf("No answer\n");}}return 0;
}

优化:因为循环采取递增,所以一旦找到即为最小总人数,可以立刻结束循环。

转载于:https://www.cnblogs.com/miaoshengyou/p/10277751.html

习题2-2韩信点兵(hanxin)相关推荐

  1. 韩信点兵(hanxin)--算法竞赛经典习题2-2:相传韩信才智过人,从不清点自己军队的人数,只要让士兵先后以三人一排、五人一排、七人一排地变换队形,他每次只要掠一眼队伍的排尾就知道总数(C++实现)

    韩信点兵(hanxin)–算法竞赛经典习题2-2:相传韩信才智过人,从不清点自己军队的人数,只要让士兵先后以三人一排.五人一排.七人一排地变换队形,他每次只要掠一眼队伍的排尾就知道总数. (C++实现 ...

  2. 关于初学算法,习题2-2 韩信点兵(hanxin)的一些需要谨记的点

    先给出题目:         相传韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后以三人一排.五人 一排.七人一排地变换队形,而他每次只掠一眼队伍的排尾就知道总人数了.输入包含多组 数据,每组 ...

  3. 韩信点兵(Hanxin)(C++)

    一.题目: 韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后以三人一排.五人一排.七人一排地变换队形,而他每次只瞟一眼队伍的排尾就知道总人数了.输入3个非负整数a,b,c表示每种队伍排尾的人数 ...

  4. 韩信点兵(hanxin)

    题目描述: 相传韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后以三人一排.五人 一排.七人一排地变换队形,而他每次只掠一眼队伍的排尾就知道总人数了.输入包含多组 数据,每组数据包含3个非负整 ...

  5. 韩信点兵-中国剩余定理(练习)

    http://acm.nyist.net/JudgeOnline/problem.php?pid=34提交地址 韩信点兵-中国剩余定理. 题目能够用枚举非常easy的做出来,在这里写是为了运用一下刚刚 ...

  6. 一位同学想通过用计算机编程解决韩信点兵,高中信息技术《算法与程序设计模块》练习题...

    新课标高中信息技术<算法与程序设计模块>练习题 一.单选题(每题2分,共40分) 1.四川汶川地震过后,要对各个单位捐款救灾情况进行分组制表,并进行积分排序,一般使用的专业电子处理软件是( ...

  7. 4095: 韩信点兵

    4095: 韩信点兵 Description 韩信点兵.韩信在点兵的时候,为了知道有多少个兵,同时又能保住军事机密,便让士兵排队报数. (1)按从1到5报数,记下最后一个士兵报的数为a (2) 再按从 ...

  8. 实验4-1-5 韩信点兵 (10 分)

    实验4-1-5 韩信点兵 (10 分) 在中国数学史上,广泛流传着一个"韩信点兵"的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳.据说韩信的数学水 ...

  9. 韩信点兵--中国剩余定理

    传说西汉大将韩信,由于比较年轻,开始他的部下对他不很佩服.有一次阅兵时,韩信要求士兵分三路纵队,结果末尾多2人,改成五路纵队,结果末尾多3人,再改成七路纵队,结果又余下2人,后来下级军官向他报告共有士 ...

  10. 7-7 韩信点兵 (10 分)

    在中国数学史上,广泛流传着一个"韩信点兵"的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳.据说韩信的数学水平也非常高超,他在点兵的时候,为了知道有 ...

最新文章

  1. python中的引用_Python中的引用
  2. 从小白到精通python要多久-超适合小白的python新手教程
  3. 我们在进行着一场拔河比赛……
  4. mysql current_MySQL中CURRENT_TIMESTAMP数据类型详解
  5. 卷积神经网络特征图大小计算公式
  6. dijkstra java pre_Dijkstra算法实现
  7. 异常错误 - MySQL导入时错误
  8. matlab机器学习基础
  9. matlab三角区域积分,关于复杂三角函数的二重积分,matlab该怎么求啊
  10. 医疗物联网的定义的业务场景
  11. 一句话理解cmp_to_key函数
  12. Elasticsearch 实战(四、分词与IK分词器)
  13. testcenter自动化
  14. (附源码)springboot校园兼职系统 毕业设计 031122
  15. 全国计算机竞赛保送清华,竞赛入清华_是不是如果获得全国各学科竞赛的一等奖就能保送清华_淘题吧...
  16. 用Java开发50个棋类游戏
  17. [BJWC2018]第k大斜率
  18. Ubuntu设置1080分辨率
  19. RabbitMQ入门前篇
  20. SEO提高网站排名快速见效的方法

热门文章

  1. far在c语言中作用,C语言中的far关键字
  2. poi读取excel多层表头模板写入数据并导出
  3. 微信小程序项目实例SSM项目源代码小程序图书借阅系统
  4. 仓库 “http://ppa.launchpad.net/chris-lea/node.js/ubuntu bionic Release”
  5. wazuh agent 认证
  6. dsp的gel文件认识
  7. 涂鸦智能平台——mcu+nbiot
  8. laravel-excel使用3(老猫包子店的故事)
  9. PCL 实战记录 (一)
  10. java中 exe是什么文件_从文件位置运行Java中的.exe文件