Programming_prob/Codewares
Who likes it
YongArtist
2020. 9. 20. 15:26
1
2
3
4
5
6
7
8
9
10
11
12
|
def likes(names):
if len(names) == 0:
return "no one likes this"
elif len(names) == 1:
return f'{names[0]} likes this'
elif len(names) == 2:
return f'{names[0]} and {names[1]} like this'
elif len(names) == 3:
return f'{names[0]}, {names[1]} and {names[2]} like this'
else:
num = len(names) - 2
return f'{names[0]}, {names[1]} and {num} others like this'
|
cs |
names의 크기에 따라서 출력값이 변하는 것을 고려해 조건을 나눠 출력했다.
1
2
3
4
5
6
7
8
9
|
def likes(names):
n = len(names)
return {
0: 'no one likes this',
1: '{} likes this',
2: '{} and {} like this',
3: '{}, {} and {} like this',
4: '{}, {} and {others} others like this'
}[min(4, n)].format(*names[:3], others=n-2)
|
cs |
다른 사람의 풀이인데 너무 잘 되어 있다. 이런 코드를 많이 봐야겠다..