链接:小团的旅行线路_美团笔试题_牛客网
来源:牛客网
小团是一个旅游爱好者,快要过春节了,他想统计一下,在过去的一年中他进行过几次旅行,于是他打开了美团app的订单记录,记录显示了他的购买车票的记录。记录是按时间顺序给出的,已知一次旅行的线路一定是一个闭环,即起点和终点是同一个地点。因此当每找到一段闭合的行程,即认为完成了一次旅行。数据保证不会出现不在闭环路径中的数据。
请你在小团的购票记录中统计出他全年共进行了多少次旅行?
这道题我以为是考的图,没写,其实是考的字典,题解如下
n = int(input())
dic=dict()
res=0
for i in range(n):
a,b=input().split()
# 当起点和终点相同时
if a==b:
res=res+1
# 当起点和终点不同时
else:
# 如果当前的终点不在dic中 就把该路径加入dic作为起点
if b not in dic:
dic[a]=b
# 如果当前的终点在dic中
else:
while b!=a:
tmp=dic[b]
del dic[b]
b=tmp
res=res+1
print(res)
这个地方需要注意的是,判断一个值在不在字典中,是跟字典的key做比较,例如dic[1]=2,那么1是在字典中的,如果要判断字典对应的值在不在字典中,if 2 in dic.values()