zoukankan      html  css  js  c++  java
  • 19. 韩信点兵hanxin

    题目:

    相传韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后三人一排,五人一排,七人一排地变换队形,而他每次只掠一眼队伍的排尾就知道总人数了。输入包含多组数据,每组数据包含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

    思路:

    总人数对3取余,对5取余,对7取余,同时满足输入的数,即可算出。设一个标识变量标记是否找到,若找到,则进行下次输入,若没找到,就输出 “N0 answer”

    代码:

    #include <iostream>
    using namespace std;

    int main()
    {
    int a = 0, b = 0, c = 0;
    int kase = 0;
    while (cin >> a >> b >> c) {
    bool found = false;
    for (int i = 10; i < 101; ++i) {
    if ((i % 3 == a) && (i % 5 == b) && (i % 7 == c)) {
    cout << "Case " << ++kase << ": " << i << endl;
    found = true;
    break;
    }
    }
    if (!found) {
    cout << "Case " << ++kase << ": " << "No answer" << endl;
    }
    }

    return 0;
    }
  • 相关阅读:
    内存的分页管理方式解释
    分组统计SQL
    NUMA导致的Oracle性能问题
    SQL Server死锁的解决过程
    PHP创建对象的6种方式
    PHP编程20大效率要点
    php设置随机ip访问
    php使用QueryList轻松采集JavaScript动态渲染页面
    正确理解 PHP 的重载
    PHP 核心特性之匿名函数
  • 原文地址:https://www.cnblogs.com/Hello-Nolan/p/12120201.html
Copyright © 2011-2022 走看看