A28883. 在某个公司中,有n名员工,他们的工号分别从0到N-1,某一天,老板安排全体员工进行一次握手游戏。具体规则如下老板安排了一个顺序.让全体N名员工依次进入会议室,每位员工进入会议室时。需要和已经在会议室里的且工号小于自己的员工握手。你的任务是计算整个公司总共会进行多少次握手输入描述输入包含两行。1.第1行是一个整数N。表述员工的数量(1≤N≦1000)。2.第2行是N个用空格隔开的整数,表示员工们进…
填空题
中等
知识点
题目描述
在某个公司中,有n名员工,他们的工号分别从0到N-1,某一天,老板安排全体员工进行一次握手游戏。
具体规则如下
老板安排了一个顺序.让全体N名员工依次进入会议室,每位员工进入会议室时。需要和已经在会议室里的且工号小于自己的员工握手。
你的任务是计算整个公司总共会进行多少次握手
输入描述
输入包含两行。
1.第1行是一个整数N。表述员工的数量(1≤N≦1000)。
2.第2行是N个用空格隔开的整数,表示员工们进入会议室的顺序,每个整数在0到N-1之间且不重复。
输出描述
输出一行,一个整数,表示全公司握手的总次数。
样例1
输入
8
7 0 2 5 6 1 3 4输出
14参考答案
def ces(N, order):
# 已经进入会议室的员工集合
ens = set()
# 初始化握手次数计数器
ht = 0
# 遍历每一个进入会议室的员工
for eme in order:
# 工号大于当前员工的数量
countr = sum(1 for e in ens if e > eme)
# 累加握手次数
ht += countr
# 当前员工进入会议室
ens.add(eme)
return ht
# 输入
N = int(input())
order = list(map(int, input().split()))
# 计算握手次数
result = ces(N, order)
print(result)
上一题
下一题