1
import datetime
a = datetime.datetime(2020,7,1,12,0)
b = datetime.datetime(1921,7,23,12,0)
c = a - b
print(c*24*60)
2、
将LANQIAO中的字母重新排列,可以得到不同的单词,如LANQIAO、AAILNOQ等,注意这7个字母都要被用上,单词不一定有具体的英文意义。
请问,总共能排列如多少个不同的单词。
import itertools
a = ['L','A','N','Q','I','A','O']
b = list(set(itertools.permutations(a,len(a))))
3、1对括号,可以组成一种合法括号序列:()。
由2对括号,可以组成两种合法括号序列:()()、(())。
由4对括号组成的合法括号序列一共有多少种?
import itertools
def cheak(li) :
li = list(li)
if li[0] == ")":
return 0
else :
lis = []
for i in li:
if i == "(" :
lis.append(i)
else :
if lis.count(")")+1 <= lis.count("(") :
lis.append(i)
else:
return 0
return 1
a = ["(",")","(",")","(",")","(",")"]
b = list(itertools.permutations(a,len(a)))
# for i in b:
# print(i)
# print(b)
c = set()
for i in b :
if cheak(i) :
c.add(i)
print(len(c))
4、凯撒密码加密+3(不确定是否满足所有情况)
old = input()
new = str()
for i in old :
a = ord(i)
b = chr(a+3)
new += b
print(new)
5、1/1 + 1/2 + 1/4 + 1/8 + 1/16 + …
每项是前一项的一半,如果一共有20项,
求这个和是多少,结果用分数表示出来。
# 5/累加求和 fractions库是分数表示库
import fractions
sum = 0
for i in range(20):
a = 1/pow(2,i)
sum += a
print(fractions.Fraction(sum))
# fractions.Fraction(a,b)会表示成a/b的形式,或者只给一个参数,第二个argument默认为1
6 图片旋转
图片旋转是对图片最简单的处理方式之一,在本题中,需要对图片顺时针旋转 90 度。用一个 n×m 的二维数组来表示一个图片,例如给出一个 3×4 的图片的例子:
1 3 5 7
9 8 7 6
3 5 9 7
这个图片顺时针旋转 90 度后的图片如下:
3 9 1
5 8 3
9 7 5
7 6 7
给定初始图片,请计算旋转后的图片
n,m = map(int,input().split())
p = list()
for i in range(n) :
a = list(map(int,input().split()))
p.append(a)
new = list()
for j in range(m) :
b = list()
for i in range(n-1,-1,-1) :
a = p[i][j]
b.append(a)
new.append(b)
for k in new:
for l in k :
print(l,end=" ")
print()
7.熊怪吃核桃
# 7 熊怪
s = 1543
d = 0
while s != 0 :
if s == 1:
d += 1
s -= 1
else:
if s%2 == 0 :
s = s//2
else :
s -= 1
d += 1
s = s//2
print(d)
8、三角求面积(只适用于这一道题)
# 8 三角面积
s = 8*8
a = (4*8)/2
b = (8*2)/2
c = (4*6)/2
t = s-a-b-c
print(t)
9加法变乘法
# 9 加法变乘法
sum = 0
# q代表前面的乘号的靠左的乘数
q = list()
# h代表后面的乘号的靠左的数
h = list()
for i in range(1,50) :
for j in range (i+2,50):
if 1225-2*i-2*j-2+i*(i+1)+j*(j+1) ==2015:
q.append(i)
h.append(j)
# 输出一个不等于10的前面的数字
for i in q:
if i != 10 :
print(i)
break
10、瓶子盖换购
#10. 饮料换购
n = int(input())
sum = n
while n >= 3 :
mid = n//3
sum += mid
if n%3 == 0:
n = 0
elif n%3 ==1:
n = 1
else :
n = 2
n += mid
print(sum)
题目来源:原文链接:https://blog.csdn.net/Kinght_123/article/details/115082053