赞
踩
原则:1、所有的题都来自蓝桥官网提供的历年真题
2、不一定全是python组的,但所有回答都会用python语言写出
3、我尽量一天至少做一道...
- a=[]
- for i in range(0,10):
- a.append(2021) #0到9,每个数字2021张
-
- def num(n):
- while n>0:
- if n/10 == 0:
- a[n]=a[n]-1
- else:
- a[n%10]=a[n%10]-1
- n=n//10
-
- for i in range(1,10000): #每拼一个数少对应的牌
- num(i)
- if 0 in a:
- print(i)
- break
'运行
在验证我的答案是否正确时,发现了我的思路的上位替代,于是把它贴下:
- li = set() #集合去重
- li1 = []
-
- m, n = map(int, input().split()) #输入
-
- for x in range(m):
- for y in range(n):
- li1.append([x, y]) #以坐标点的方式,存储于二维数组中
-
- def sameline(a, b):
- global li
- if a[0] == b[0] or a[1] == b[1]: #如果在同一条直线上,则不计数
- pass
- else:
- k = (b[1] - a[1]) / (b[0] - a[0])
- b = a[1] - k * a[0]
- li.add((k, b))
-
- for a in li1:
- for b in li1:
- sameline(a, b)
-
- print(m + n + len(li))
啊哈哈,鸽王来咯
“胡适之啊胡适之,你怎能如此堕落”
先求n的约数,再暴力循环一下就可
- a=[1]
- n=2021041820210418
- sum=0
-
- for i in range(2,100000000):
- if n%i==0:
- a.append(i)
-
- for i in a:
- temp=n//i
- if temp not in a:
- a.append(temp) #列表a存储n的所有约数
-
- for i in range(len(a)):
- for j in range(len(a)):
- for t in range(len(a)):
- if a[i]*a[j]*a[t]==n:
- sum=sum+1
-
- print(sum) #输出结果2430
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。