先给出题目:

        相传韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后以三人一排、五人
一排、七人一排地变换队形,而他每次只掠一眼队伍的排尾就知道总人数了。输入包含多组
数据,每组数据包含3个非负整数a,b,c,表示每种队形排尾的人数(a<3,b<5,
c< 7),输出总人数的最小值(或报告无解)。已知总人数不小于10,不超过100。输入到文件
结束为止。
        样例输入:​​​​​​​
        2 1 6
        2 1 3
        样例输出:
        Case 1: 41
        Case 2: No answer
#include <stdio.h>
int main()
{int a, b, c, i, kcase = 0;while (~scanf("%d%d%d", &a, &b, &c)){for (i = 10; i <= 100; i++){if (i % 3 == a && i % 5 == b && i % 7 == c){kcase++;int res = i;printf("case %d:%d\n", kcase, res);break;}}if (i > 100){kcase++;printf("Case %d:No answer\n", kcase);}}return 0;
}

因为初学此类算法,总是有几个遗漏,或者应该记住的点:

第一:用户输入需用到while循环,且循环的条件为scanf的返回值,这里scanf的返回值是输入值的个数,如果没有输入输入值就返回-1,”~“时候按位取反,-1按位取反的结果就是0,下面代码的意思就是当用户没有输入就不进入循环。

while (~scanf("%d%d%d", &a, &b, &c))

第二:运用kcase计数器,韩信点兵的样例输出里面有case 1,2,3....,所以就需要运用到case计数器。

第三:代码的内容要尽可能完善,我发现自己写代码就是有问题,Bug百出,总是需要运行的时候不是想要的结果,才会返回来仔细看代码发现bug解决,这个估计需要长期经验的积累吧。

下面放上参考其他文章之后写出的代码,请各位大佬多多指教。

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

  1. Java三齐王乱点兵算法,【ACM】韩信点兵算法

    题目是:韩信点兵 Time Limit: 1000MS Memory Limit:65536 Description : 带队人员想知道一共有多少人参加了活动. 于是分别让同学们 6人一列,5人一列, ...

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

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

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

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

  4. 经典算法——韩信点兵问题的简单算法

    搞开发的人都需要积累一些经典算法,以备不时之须. 搞开发也有好几年了,积累的一些算法一直没做过整理,这段时间无聊就把这些算法整理以下,以备以后之用. 本文是关于阶梯的一个算法,用到了剩余定理算法,分享 ...

  5. Eva 初学算法笔记 —— 1.直接插入排序

    Eva 初学算法笔记  ---  1.直接插入排序 引言: 上一年专业开设了<数据结构与算法>这门课程,但当时没有认真学.过了之后发现自己对于那些基本的经典算法都忘得差不多了,大学剩下的日 ...

  6. 韩信点兵问题的简单算法(downmoon)

    有朋友问起这个问题: 爱因斯坦曾出过这样一道有趣的数学题,有一个长阶梯,每步上2阶,最后剩1阶:若每步上3阶,最后剩2阶,若每步上5阶,后剩4阶:若每步上6阶,最后剩5阶:只有每步上7阶,最后一阶也不 ...

  7. 韩信点兵算法——c语言实现

    韩信点兵算法--c语言实现 今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?这个问题就是韩信点兵. 本来考虑中国剩余定理,也就是将三排剩余数乘以70,五排剩余数乘以21,7排剩余数 ...

  8. C语言实现韩信点兵算法的代码

    下面代码段是关于C语言实现韩信点兵算法的代码. #include <stdio.h> int main() {int a=0,b=0,c=0,x;scanf("%d%d%d&qu ...

  9. 韩信点兵C++算法实现

    问题描述 今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?这个问题就是韩信点兵. 算法实现 #include<iostream> using namespace std ...

最新文章

  1. 强悍!使用Flash和Silverlight制作控件
  2. 使用xshell 登陆aws的ec2
  3. 作者:詹晓娟(1978-),女,黑龙江工程学院讲师。
  4. C++中宏与内联函数
  5. leetcode 100.Same Tree
  6. 提款机转账多久到账?
  7. abb机器人伺服电机报闸是什么_ABB机器人伺服电机维修更换马达步骤
  8. java handlerbase_Java Firebase.AuthResultHandler方法代码示例
  9. 并发修改异常ConcurrentModificationException详解
  10. 树莓派OS Lite系统安装LXDE桌面环境
  11. 阿里云服务器上海地域和杭州节点区别对比
  12. ios系统访问ftp服务器,ios系统访问ftp服务器
  13. SIM卡相关知识总结
  14. 天猫精灵 python 控制_天猫精灵的高阶玩法-控制我的电脑
  15. Excel+VBA+之快速上手(2)
  16. 计算机科学领域的任何问题都可以通过增加一个间接的中间层来解决
  17. bundle initial exceeded maximum budget. Budget 1.00 MB was not met by 642.91 kB with a total of 1.63
  18. free(buf)报错。(buf位置移动导致指针指向的位置变动了)
  19. WinImage 8.5版本制作任意容量的ima或img磁盘文件
  20. 宫崎步 brave heart 歌词加谐音

热门文章

  1. 外贸网站如何合理搭配色彩——摘自外贸宝-外贸网站建设
  2. codeforces 776C
  3. win7无线局域网_存储卡具备WiFi有多方便?东芝 FlashAir 无线存储卡上手体验
  4. SAR ADC系列16:CDAC上机实践+作业
  5. 字节也开始缩招了...
  6. 通过指定cellid获取周围cellid信息,改变指定cellid的颜色
  7. ddr3ip核心_DDR3 IP 核配置
  8. 速卖通小伙伴们,关于欧盟VAT税改最全面解读,杭州海赢科技分享!
  9. 谈谈 COS 中国自主知识产权智能手机操作系统
  10. IDEA 导入maven项目后导(下载)包失败的问题