解题思路:暴力法
注意事项:尽量使用较少的变量,尽可能使用内建函数
参考代码:
未优化前的代码:73%
import sys
sys.setrecursionlimit(200000)
n = input()
counter = 0
lst = []
lst_cmp = [i for i in range(1, int(n))]
def generator(num) :
output = 0
output += int(num)
for data in num :
output += int(data)
lst.append(output)
if output < int(n) :
generator(str(output))
for data in lst_cmp :
if data not in lst :
generator(str(data))
print(data)
优化后的代码:AC
import sys
sys.setrecursionlimit(200000)
n = input()
counter = 0
lst_cmp = [i for i in range(1, int(n))]
def generator(num) :
output = 0
output += int(num)
for data in num :
output += int(data)
if output < int(n) and output in lst_cmp:
lst_cmp.pop(lst_cmp.index(output))
generator(str(output))
for data in lst_cmp :
generator(str(data))
print(data)
0.0分
2 人评分
C语言训练-计算一个整数N的阶乘 (C语言代码)浏览:982 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:552 |
1024题解浏览:879 |
sizeof的大作用 (C语言代码)浏览:1138 |
敲七 (C++代码)浏览:1119 |
1162答案错误,为什么浏览:700 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:593 |
小O的图案 (C语言代码)浏览:979 |
1392题解(大数相加)浏览:640 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:611 |