2020.9.24_C 体质指数
1.题目要求
2.考察点
输入两个浮点数:w, h = map(float, input().split())
2.规范化输出:print(“B:%.2f” % BMI)
3.源代码
w, h = map(float, input().split())
BMI = w / (h*h)
if BMI < 18.5:
print("A:%.2f" % BMI)
elif 18.5 <= BMI < 24:
print("B:%.2f" % BMI)
elif 24 <= BMI < 28:
print("C:%.2f" % BMI)
else:
print("D:%.2f" % BMI)
2020.9.24_A 字符串内字符统计
1.题目要求
2.考察点
输入整数:n = int(input())
list使用:初始化 arr = []; 追加赋值 arr.append(s);
输出n~1翻转:arr.reverse()
range使用:for i in range(n):
Python没有自增运算符:cnt += 1
3.源代码
ch = input()
n = int(input())
arr = []
total = 0
for i in range(n):
s = str(input())
cnt = int(0)
for tmpCh in s.upper():
if tmpCh == ch.upper():
# check all the upper letters
cnt += 1
if cnt >= 3:
arr.append(s)
total +=1
break
# reverse and then print
arr.reverse()
for i in range(0, total):
print(arr[i])
2020.9.24_B
1.题目要求
2.考察点
部分给定位置字符串匹配:使用切片(左闭右开) ch == arr[i][0: chLen]
按照字典序排列:sort()函数
3.源代码
arr = []
fixString = []
n = int(input())
for i in range(0, n):
cmd = input()
arr.append(cmd)
ch = input()
chLen = len(ch)
len = 0
for i in range(0, n):
# print(arr[i][0: chLen])
if ch == arr[i][0: chLen]:
fixString.append(arr[i])
len += 1
fixString.sort()
for i in range(0, len):
print(fixString[i])
2020.9.24_C
1.题目要求
2.考察点
同上述B题
3.源代码
n = int(input())
arr = []
Ming = []
for i in range(n):
s = input()
arr.append(s)
Xing = input()
for i in range(n):
tmpS = arr[i]
if Xing == tmpS[len(tmpS)-len(Xing):len(tmpS)]:
Ming.append(tmpS[0:int(len(tmpS))-int(len(Xing))-1])
Ming.sort()
for i in range(0, len(Ming)):
print(Ming[i])
2020.10.10_A
1.题目要求
2.考察点
3.源代码
n, a = map(int, input().split())
def calSum(x):
if x == 0:
return 1
else:
return 1 + a * calSum(x-1)
print(calSum(n+1))
2020.10.10_B
1.题目要求
2.考察点
3.源代码
a, b = map(int, input().split())
arr = []
# 回文
for i in range(a, b + 1):
tmp = str(i)
# print(i)
tmpLen = len(tmp)
# print(tmpLen)
le, re = 0, -1
# even nums 1221
if tmpLen % 2 == 0:
while le < tmpLen // 2 & re >= 0 - tmpLen // 2:
if tmp[le] == tmp[re]:
le += 1
re += -1
else:
break
else:
arr.append(int(tmp))
# odd nums 121
else:
# print(tmpLen//2)
while le < tmpLen // 2 & re >= 0 - tmpLen // 2:
if tmp[le] == tmp[re]:
le += 1
re += -1
else:
break
else:
arr.append(int(tmp))
# 质数
for i in arr:
for j in range(2, int(i**0.5)+1):
if i % j == 0:
break
else:
print(i)
2020.10.10_C
1.题目要求
2.考察点
3.源代码
n = int(input())
book = []
for i in range(n):
book.append(input().split())
bookSorted = sorted(sorted(book, key=lambda x: (int(x[2]), int(x[3]), int(x[4]), int(x[1]), int(x[6])), reverse=True), key=lambda y: int(y[5]))
for i in bookSorted:
print(*i, sep=' ', end='\n') # cmp 12 123 556....
# print(i, sep=' ', end='\n') # ['cmp', '80', '2015', '3', '12', '156', '39']
2020.10.10_D
1.题目要求
2.考察点
3.源代码
n = int(input())
book = []
for i in range(n):
tmp = input()
short = ""
for j in tmp:
if j.isupper():
short += j
book.append([short, tmp])
# print([short, tmp])
bookSorted = sorted(book, key=lambda x: x[0])
for i in bookSorted:
print(i[1])
2020.10.17_A
1.题目要求
输入样例1
3 5
1 2 3 4 1
输入样例2
3 5
1 2 3 1 4
输入样例3
3 5
1 2 2 2 3
输入样例1
3 5
1 2 3 4 1
输入样例2
3 5
1 2 3 1 4
输入样例3
3 5
1 2 2 2 3
2.考察点
3.源代码
n, m = map(int, input().split())
load = 0
arr = input()
seq = [int(i) for i in arr.split()] # 把数存到list里
page = []
full = 0
for i in range(m):
tmp = seq[i]
if tmp in page: # 出现过,则更新到最后
page.remove(tmp)
page.append(tmp)
else: # 没出现:两种情况
if full == 0: # 有空余页面,直接加载
page.append(tmp)
load += 1
if len(page) == n:
full = 1
else: # 删除一个,再加入,加载+1
load += 1
page.pop(0)
page.append(tmp)
print(load)
page.sort()
for i in page:
print(i, end=' ')
2020.10.17_B
1.题目要求
样例输入1:
2 3
3
1 1 1 2
1 2 2 2
2 2 2 3
样例输入2:
2 3
2
1 1 1 2
1 2 2 2
样例输出1:
2
样例输出2:
3
2.考察点
3.源代码
m, n = map(int, input().split())
Q = int(input())
matrix = [[0 for col in range(n)] for row in range(m)] # 初始化二维矩阵
total = 0
for i in range(Q):
x1, y1, x2, y2 = map(int, input().split())
for x in range(x1-1, x2):
for y in range(y1-1, y2):
matrix[x][y] = 1
for x in range(m):
for y in range(n):
if matrix[x][y] == 0:
total += 1
print(total)
2020.10.17_C
1.题目要求
3 4
0 3
1 2
2 1
2.00
2.考察点
3.源代码
n, s = map(int, input().split())
table = []
for i in range(n):
table.append(list(map(int, input().split()))) # 位置,速度
result = sorted([(s - i[0])/i[1] for i in table], reverse=True) # 最慢的人
# sort不返回,只在原来list中修改,sorted才返回新的list
print('%.2f' % result[0])
2020.10.17_D
1.题目要求
2.考察点
3.源代码
input()
set_a = set(map(int, input().split()))
input()
set_b = set(map(int, input().split()))
print(*sorted(list(set_a & set_b)))
print(*sorted(list(set_a | set_b)))
print(*sorted(list(set_a - (set_a & set_b))))
2020.10.26_A
1.题目要求
2.考察点
3.源代码
m, n, i = map(int, input().split())
def fib(n):
if (n == 0 or n == 1):
return 1
a, b = 1, 1
for i in range(2, n + 1):
a, b = b, a + b
return b
def PrintFN(m, n):
fibList = []
for k in range(n+1):
tmp = fib(k)
if tmp <= n:
if tmp >=m:
fibList.append(tmp)
else:
break
return fibList
b = fib(i)
print("fib({0}) = {1}".format(i, b))
fibList = PrintFN(m, n)
print(len(fibList))
2020.10.26_B
1.题目要求
2.考察点
3.源代码
x, y = map(int, input().split())
def isPrime(a):
for i in range(2, int(a**0.5)+1):
if a % i == 0:
return 0
else:
return 1
def primeSum(a, b):
Sum = 0
for i in range(x, y+1):
if isPrime(i):
Sum += i
return Sum
print(primeSum(x,y))
2020.10.26_C
1.题目要求
2.考察点
3.源代码
def isHd(x):
tmp = list(str(n))
smallest = int("".join(sorted(tmp)))
biggest = int("".join(sorted(tmp,reverse = True)))
# print(biggest, smallest)
if biggest-smallest == x:
# print(biggest, smallest)
return True
else:
return False
n = int(input())
if isHd(n):
print("yes")
else:
print("no")
2020.10.26_D
1.题目要求
2.考察点
3.源代码
doc = input()
def fun(sentence):
if sentence[len(sentence)-1] == ".":
pass
else:
sentence += "."
return sentence.capitalize()
print(fun(doc))
2020.10.26_E
1.题目要求
2.考察点
3.源代码
import random
p = int(input())
q = int(input())
r = int(input())
a = [[random.randint(0,10) for x in range(q)] for y in range(p)]
b = [[random.randint(0,10) for x in range(r)] for y in range(q)]
def multiply(a,b,p,q,r):
result = [[0 for x in range(r)] for y in range(p)]
for i in range(p):
for j in range(q):
for k in range(r):
result[i][k] += a[i][j]*b[j][k]
return result
2020.10.26_F
1.题目要求
2.考察点
3.源代码
import random
import itertools
suit = ['♥', '♠', '♦', '♣']
d = ['A', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'J', 'Q', 'K']
n = int(input())
def create():
tmpPoker = list(itertools.product(suit,d))
poker= []
for i in tmpPoker:
tmp = ''.join(i)
poker.append(tmp)
return poker
def shufflecard(pokers):
random.shuffle(poker)
return poker
def deal(pokers, n):
print("第%d个玩家拿到的牌是:" % n, end='')
t = [poker[4*i+n-1] for i in range(5)]
print(*t, sep=',')
random.seed(n)
poker = create()
poker = shufflecard(poker)
for i in range(52):
print('%-4s' % poker[i], end=' ')
if i % 13 == 12:
print()
for i in range(1, 5):
deal(poker, i)
2020.11.01_A
1.题目要求
2.考察点
3.源代码
原文链接:https://blog.csdn.net/helloworld0529/article/details/108782748