카테고리 없음
백준 파이썬 10952 A+B - 5
Coding_SJ
2020. 3. 17. 19:47
내 풀이
1
2
3
4
5
6
|
while True:
a,b = map(int,input().split())
if not (a==0 and b==0):
print(a+b)
else:
break
|
cs |
if not이 되는거 처음 알았다. 되게 유용할 듯 싶은데 딱 한가지 케이스만 제거하고 싶을 떄 if not 쓰면 개꿀일듯.
다른 풀이
1
2
3
4
|
while 1:
a,b = map(int,input().split())
if (a+b) == 0: break
print(a+b)
|
cs |
그냥 내 풀이에서 if랑 else 순서만 바꾼거긴한데, 난 아직 이 쪽 표현법에는 익숙하지 못하다.
일단 True를 1로 간편하게 표현이 가능하다는 점,
그리고 if ( ): break <- 이 표현 자체가, ( )안의 경우만 바로 제거해버리겠다는 뜻이고
이렇게 쓰면 else를 생략해도 된다. (써도 되고 안써도 됨.)
if ( ): break 가 나오면 else가 숨어져 있다고 생각하면 된다. (위에서부터 아래로 읽어져 내려오면서, 걸러지기 때문)
결국 요약하면 if not - else를 쓰냐, 아니면 if ( ): break를 쓰냐인데, 아무래도 후자가 좀 더 간결하다.