๐ ๋ฌธ์
๋น์ด์๋ ๊ณต์งํฉ S๊ฐ ์ฃผ์ด์ก์ ๋, ์๋ ์ฐ์ฐ์ ์ํํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ์ฒซ์งธ ์ค์ ์ํํด์ผ ํ๋ ์ฐ์ฐ์ ์ M (1 ≤ M ≤ 3,000,000)์ด ์ฃผ์ด์ง๋ค.
๋์งธ ์ค๋ถํฐ M๊ฐ์ ์ค์ ์ํํด์ผ ํ๋ ์ฐ์ฐ์ด ํ ์ค์ ํ๋์ฉ ์ฃผ์ด์ง๋ค. ์ถ๋ ฅcheck ์ฐ์ฐ์ด ์ฃผ์ด์ง๋๋ง๋ค, ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ๋ค.
|
โ ๋ด ๋ต
- ๋ฉ๋ชจ๋ฆฌ ์ด๊ณผ ๋ฐฉ์ง๋ฅผ ์ํด ํ ์ค์ฉ ์ ๋ ฅ ๋ฐ์ ์ฒ๋ฆฌ
- ์ค๋ณต์ ํ์ฉํ์ง ์๋ ์งํฉ(set) ์ฌ์ฉ
import sys
def check(s, num):
print(1 if num in s else 0)
def add(s, num):
s.add(num)
def remove(s, num):
s.discard(num)
def toggle(s, num):
if num in s:
s.remove(num)
else:
s.add(num)
if __name__ == "__main__":
s = set()
full_set = set(range(1, 21))
M = int(sys.stdin.readline())
for _ in range(M):
cmd = sys.stdin.readline().strip().split()
action = cmd[0]
if action == 'add':
add(s, int(cmd[1]))
elif action == 'remove':
remove(s, int(cmd[1]))
elif action == 'check':
check(s, int(cmd[1]))
elif action == 'toggle':
toggle(s, int(cmd[1]))
elif action == 'all':
s = full_set.copy()
elif action == 'empty':
s.clear()
https://www.acmicpc.net/problem/11723
๋ฐ์ํ
'Dev > PS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[PS] 14233 ๋ณด์ ๋๋ (0) | 2024.09.25 |
---|---|
[PS] 1090 ์ฒด์ปค (0) | 2024.09.24 |
[PS] 1764 ๋ฃ๋ณด์ก (0) | 2024.09.20 |