zoukankan      html  css  js  c++  java
  • 习题6 韩信点兵

    题目如下

    相传韩信才智过人,从不直接清点自己军队的人数,只要让士兵先后以三人一排、五人一排、七人一排地变换队形,而他每次只掠一眼队伍的排尾就知道总人数了。输入3个非负整数a,b,c ,表示每种队形排尾的人数(a<3,b<5,c<7),输出总人数的最小值。已知总人数不小于10,不超过100 。

    样例输入

    2 1 6

    样例输出

    41

    首先此处为实现在控制器输入参数进行输出,引用scanner

    import java.util.Scanner;
    
    public class Hanxindianbing {
    
        public static void main(String[] args){
            
        }
    }

    将scanner实例化,

    import java.util.Scanner;
    
    public class Hanxindianbing {
    
        public static void main(String[] args){
            Scanner scanner=new Scanner(System.in);
            int a=scanner.nextInt();
            int b=scanner.nextInt();
            int c=scanner.nextInt();
            
        }
    }

    如题,只要让士兵先后以三人一排、五人一排、七人一排地变换队形,而他每次只掠一眼队伍的排尾就知道总人数了。

    也就是说总人数%3=a 且 总人数%5=b 且 总人数%7=c;

    定义总人数为sum (int sum) 且总人数不小于10人,不超过100人。

    接下来利用一层for循环来判断

    import java.util.Scanner;
    
    public class Hanxindianbing {
    
        public static void main(String[] args){
            Scanner scanner=new Scanner(System.in);
            int a=scanner.nextInt();
            int b=scanner.nextInt();
            int c=scanner.nextInt();
            for(int sum=10;sum<=100;sum++){
                if(sum%3==a && sum%5==b && sum%7==c){
                    
                }
            }
        }
    }

    下面输出,题目中还提到,输出总人数的最小值,那么我的方法是输出一次之后就跳出循环。

    import java.util.Scanner;
    
    public class Hanxindianbing {
    
        public static void main(String[] args){
            Scanner scanner=new Scanner(System.in);
            int a=scanner.nextInt();
            int b=scanner.nextInt();
            int c=scanner.nextInt();
            for(int sum=10;sum<=100;sum++){
                if(sum%3==a && sum%5==b && sum%7==c){
                    System.out.println(sum);break;
                }
            }
        }
    }

    在控制台输入2、1、6

    结果

  • 相关阅读:
    软件开发模式
    my parnter code review
    官僚模式和功能团队模式的优缺点
    思考题
    my code review
    四则运算
    Android Studio下使用Junit框架测试数组和
    SQL2008 存储过程 增删改查例子
    NET 无法显示XML页怎么办
    vs2010 2005 2008 代码前面出现··········取消方法
  • 原文地址:https://www.cnblogs.com/FrankLiner/p/7517763.html
Copyright © 2011-2022 走看看