美文网首页
韩信点兵计算

韩信点兵计算

作者: 壹顾倾城 | 来源:发表于2021-03-23 11:36 被阅读0次

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

    样例输入
    2 1 6
    2 1 3

    样例输出
    1: 41
    2: 无解

    #-------------------------------------------------------------------------------
    #韩信点兵,每3人一列余1人、5人一列余2人、7人一列余4人……
    #样例输入
    #1 2 4
    #2 1 3
    
    #样例输出
    #1: 67
    # 2: 无解
    #-------------------------------------------------------------------------------
    
    a = int(input("a = "))
    b = int(input("b = "))
    c = int(input("c = "))
    
    flag = False   # 没有计算结果
    for x in range(10, 101):
        if (x % 3 == a) and (x % 5 == b) and (x % 7 == c):
            print("x = ", x)
            flag = True   #有计算结果
    
    
    if flag == False:
        print("无解啊")
    

    简单计算

    a,b,c = 1,2,3
    for x in range(10, 101):
        if (x % 3 == a) and (x % 5 == b) and (x % 7 == c):
            print("x = ", x)
    

    测试

    >>> 
    *** Remote Interpreter Reinitialized ***
    a = 1
    b = 2
    c = 3
    x =  67
    *** Remote Interpreter Reinitialized ***
    a = 2
    b = 1
    c = 3
    无解啊
    >>> 
    

    实际上就是求一个数x,x满足 x % 3 = 1 ,x % 5 = 2 ,x % 7 =3

    相关文章

      网友评论

          本文标题:韩信点兵计算

          本文链接:https://www.haomeiwen.com/subject/hgxfhltx.html