洛谷 P1428 小鱼比可爱
题目描述
人比人,气死人;鱼比鱼,难死鱼。小鱼最近参加了一个“比可爱”比赛,比的是每只鱼的可爱程度。参赛的鱼被从左到右排成一排,头都朝向左边,然后每只鱼会得到一个整数数值,表示这只鱼的可爱程度,很显然整数越大,表示这只鱼越可爱,而且任意两只鱼的可爱程度可能一样。由于所有的鱼头都朝向左边,所以每只鱼只能看见在它左边的鱼的可爱程度,它们心里都在计算,在自己的眼力范围内有多少只鱼不如自己可爱呢。请你帮这些可爱但是鱼脑不够用的小鱼们计算一下。
输入格式
第一行输入一个整数 nnn,表示鱼的数目。
第二行内输入 nnn 个整数,用空格间隔,依次表示从左到右每只小鱼的可爱程度。
输出格式
行内输出 nnn 个整数,用空格间隔,依次表示每只小鱼眼中有多少只鱼不如自己可爱。
输入输出样例
输入 #1
6
4 3 0 5 1 2
输出 #1
0 0 0 3 1 2
说明/提示
对于 100%100\%100% 的数据,n≤100n\leq 100n≤100。
这个题因为给的测试数据比较水,直接模拟也可以过。用算法的话感兴趣可以去查一下树状数组。这里只是用来练习python语法,所以只用最简单的模拟
n = int(input())
fish_list = list(map(int,input().split()))
for i in range(n):
count = 0
for j in range(i):
if fish_list[i] > fish_list[j]:
count += 1
print(count,end=" ")
洛谷 P5727 【深基5.例3】冰雹猜想
这个题可以练习列表的逆序操作,总共有三种,先上代码
n = int(input())
ans_list = [n]
while n != 1:
if n%2 == 0:
n = n // 2
ans_list.append(n)
else :
n = n*3 + 1
ans_list.append(n)
for i in ans_list[::-1]:
print(i,end=" ")
第一种就是上面内种
for i in ans_list[::-1]:
print(i,end=" ")
和字符串的逆序一样,使用切片的方法
第二种可以写成这样
for i in range(len(ans_list)-1,-1,-1):
print(ans_list[i],end=" ")
使用range的方法逆序索引
第三种是使用一下python自带的逆序方法reserve(),直接将整个列表逆序,然后正序输出
for i in reversed(ans_list):
print(i,end = " ")
洛谷 P5728 【深基5.例5】旗鼓相当的对手
这题主要练习二维列表的创建和使用,思路很简单,按行读入每一个学生的成绩,并将总成绩也加入列表,最后按行比对成绩即可,代码很简单,直接贴出来
n = int(input())
score = []
for i in range(n):
t = list(map(int,input().split()))
t.append(sum(t))
score.append(t)
count = 0
for i in range(n):
for j in range(i+1,n):
flag = True
for k in range(3):
if abs(score[i][k] - score[j][k]) > 5:
flag = False
break
if abs(score[i][3] - score[j][3]) > 10:
flag = False
if flag:
count += 1
print(count)
Comments | NOTHING