728x90
๐ ๋ฐฑ์ค 11723 - ์งํฉ
โก๏ธ ๋์ ํ์ด
add
์ remove
์กฐ๊ฑด์์ ์ค๋ณต๋ ๊ฒฝ์ฐ๋ ๋ฌด์ํ๋ค๋ ์กฐ๊ฑด์ ๋ณด์ set
์๋ฃํ์ ์ฌ์ฉํ๋ค. ๊ทธ๋ฐ๋ฐ, ์ ๋ต์ ์ ์ถํ๋๊น keyError
๊ฐ ๋ด์๋ค ์์ธ์ ์ฐพ์๋ณด๋ค๊ฐ remove
ํจ์ ๋๋ฌธ์ด์๋๋ฐ, ๊ฐ์ด ์๋ ๊ฒฝ์ฐ์ remove
๋ฅผ ์ฌ์ฉํ๊ฒ ๋๋ฉด keyError
๊ฐ ๋๋ค.
์ด๋ด ๋๋ discard
ํจ์๋ฅผ ์ฌ์ฉํ์. ๊ฐ์ด ์๋ ์ํ์์ discard
๋ฅผ ์ฌ์ฉํด๋ ์๋ฌ๊ฐ ๋์ง ์๋๋ค. ๋, empty
๋ ๋น ์งํฉ์ผ๋ก ๋ฐ๊ฟ์ผ ํ๋๋ฐ ๊ทธ๋ฅ set()
์ผ๋ก ์ด๊ธฐํํด์ค๋ ๋์ง๋ง clear
ํจ์๋ฅผ ์ฌ์ฉํด์ค๋ ๋๋ค. ์๊ฐ ๋ณต์ก๋๋ ํฌ๊ฒ ์ฐจ์ด๊ฐ ์์๋ค.
import sys
input = sys.stdin.readline
empty_set = set()
def add(x):
empty_set.add(x)
def remove(x):
empty_set.discard(x)
def check(x):
if x in empty_set:
return 1
return 0
def toggle(x):
if x in empty_set:
empty_set.discard(x)
else:
empty_set.add(x)
def set_all():
global empty_set
empty_set = {i for i in range(1, 21)}
def empty():
empty_set.clear()
for _ in range(int(input())):
command = input().split()
if command[0] == 'add':
add(int(command[1]))
elif command[0] == 'remove':
remove(int(command[1]))
elif command[0] == 'check':
print(check(int(command[1])))
elif command[0] == 'toggle':
toggle(int(command[1]))
elif command[0] == 'all':
set_all()
else:
empty()
๋ฐ์ํ
'Algorithm > ๋ฐฑ์ค(BOJ)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ ํ์ด์ฌ(python) ] ๋ฐฑ์ค 1292 - ์ฝ๊ฒ ํธ๋ ๋ฌธ์ (0) | 2021.06.17 |
---|---|
[ ํ์ด์ฌ(python) ] ๋ฐฑ์ค 10820 - ๋ฌธ์์ด ๋ถ์ (0) | 2021.06.17 |
[ ํ์ด์ฌ(python) ] ๋ฐฑ์ค 5086 - ๋ฐฐ์์ ์ฝ์ (0) | 2021.06.16 |
[ ํ์ด์ฌ(python) ] ๋ฐฑ์ค 16935 - ๋ฐฐ์ด ๋๋ฆฌ๊ธฐ 3 (0) | 2021.06.15 |
[ ํ์ด์ฌ(python) ] ๋ฐฑ์ค 7567 - ๊ทธ๋ฆ (0) | 2021.06.14 |
๋๊ธ