PTA 7-12 暴力小学(二年级篇)-求出2个三位数

小博是新城小学二年级学生,这孩子人很老实,数学、语文成绩也是中等水平。不过一旦坐在电脑前,写起代码来,则有些霸气侧漏,尤其擅长各种暴力方法。本题就是数学莫老师的题目之一,请你和小博一起暴力求解吧。

输入格式:

输入是这个差D(图中例子的差D为93),D为正整数。

输出格式:

第一行输出所有解的数目K,随后K行按照被减数从小到大的顺序输出所有解。

输入样例:

例如输入:

93

输出样例:

输出:

4
246-153
354-261
516-423
624-531

 代码实现

D = int(input())  # 输入差值
lis = [1,2,3,4,5,6]  
lis1 = [0]*6  # 用来临时存放解
number = 0   # 计算解的个数
lis2 = []  # 放置最终符合要求的解
# 暴力循环所有组合求解
for i in range(0,len(lis)):
    lis1[0] = lis[i]     # 放入第一个数
    for k in range(0,len(lis)):
        if lis[k] != lis1[0]:  # 放入第二个数,不能与前一个相同
            lis1[1] = lis[k]
        else :# 如果相同,则依次选取后一个数
            continue    
        for j in range(0,len(lis)):
            if lis[j] != lis1[0] and lis[j] != lis1[1]:   # 放入第三个数,不能与前面的相同,后面依次类推
                lis1[2] = lis[j]
            else :
                continue
            for h in range(0,len(lis)):
                if lis[h] != lis1[0] and lis[h] != lis1[1] and lis[h] != lis1[2]:
                    lis1[3] = lis[h]
                else :
                    continue
                for v in range(0,len(lis)):
                    if lis[v] != lis1[0] and lis[v] != lis1[1] and lis[v] != lis1[2] and lis[v] != lis1[3] :
                        lis1[4] = lis[v]
                    else :
                        continue
                    for x in range(0,len(lis)):
                        if lis[x] != lis1[0] and lis[x] != lis1[1] and lis[x] != lis1[2] and lis[x] != lis1[3] and lis[x] != lis1[4] :
                            lis1[5] = lis[x]
                        else :
                            continue
                        # 判断得到的解如果符合要求,则放入lis2,后面输出
                        if ((lis1[0]*100+lis1[1]*10+lis1[2])-(lis1[3]*100+lis1[4]*10+lis1[5])) == D:
                            number += 1 
                            lis2.append(lis1[0]*100+lis1[1]*10+lis1[2])
                            lis2.append(lis1[3]*100+lis1[4]*10+lis1[5])
                            
print(number)
for p in range(0,len(lis2),2):
    print('{}-{}'.format(lis2[p],lis2[p+1]))

 提交结果

猜你喜欢

转载自blog.csdn.net/weixin_58707437/article/details/127945835