每个输入包含 1 个测试用例。每个测试用例的第 i 行,表示完成第 i 件料理需要哪些材料,各个材料用空格隔开,输入只包含大写英文字母和空格,输入文件不超过 50 行,每一行不超过 50 个字符。
输出一行一个数字表示完成所有料理需要多少种不同的材料。
BUTTER FLOUR HONEY FLOUR EGG
4
a=[]
d = {}
while 1:
try:
for k in input().split():
a.append(k)
except:
break
for i in range(len(a)):
if a[i] in d.keys():
d[a[i]] = d[a[i]] + 1
else:
d[a[i]] = 1
print (len(d.keys()))
import sys words=[] for line in sys.stdin.readlines(): word=line.split() words.extend(word) print(len(set(words)))
'''看到这个题,思路还是很简单的,用集合收集全部的字符串即可。 但是,怎么读取数据?问题之所在。用sys.stdin 看了下其他朋友的答案。发现了另外一种思路。先用列表。在转集合。 答案一,直接集合: import sys result = set() for line in sys.stdin: for string in line.split(): result.add(string) print len(result) 答案二,先用列表,再用集合: import sys res = [] for line in sys.stdin: res.extend(line.split()) result = set(res) print len(result)