[백준] 15787-기차가 어둠을 헤치고

kiteday·2025년 7월 29일
0

코딩테스트

목록 보기
35/46

문제바로가기

import sys
sys.setrecursionlimit(10**6)

N, M = map(int, sys.stdin.readline().split())
train = [0]*(N+1)

for _ in range(M):
    m = list(map(int, sys.stdin.readline().split()))
    
    if m[0] == 1:
        train[m[1]] |= 1<<(m[2]-1)
    elif m[0] == 2:
        train[m[1]] &= ~(1<<(m[2]-1))
    elif m[0] == 3:
        train[m[1]] <<= 1
        train[m[1]] &= (1 << 20) - 1
    elif m[0] == 4:
        train[m[1]] >>= 1

print(len(set(train[1:])))
profile
공부

0개의 댓글