알고리즘 분류)
남자일 경우)
반복문 => 초기식:카드번호, 조건식:N까지, 증감식:카드번호
와 같이 설정해주어서 배열안에서 카드번호의 배수로 알아서 루프를 돈다
그다음
array[i] = not array[i] 와 같이 파이써닉하게 구현했다
여자일 경우)
while문을 통해 입력받은 카드 양옆에서 부터 포인터가 시작해
두 수가 다르거나 배열의 끝에 도달할 때 까지 구간을 마찬가지로 not 해준다
출력)
20개 단위로 출력해야 하므로 i가 20이면 출력을 한번 해준 후 배열을 비운다
다시 그 배열에 20개가 될 때마다 출력한다
import sys
N = int(input())
array = list(map(int, input().split()))
student = int(input())
for _ in range(student):
gender, number = map(int,sys.stdin.readline().split())
if gender == 1:
for i in range(number-1,N,number):
array[i] = not array[i]
else:
left=number-2
right=number
array[number-1]=not array[number-1]
while left>=0 and right<=N-1 and array[left]==array[right]:
array[left] = not array[left]
array[right] = not array[right]
left-=1
right+=1
result=[]
for i in range(1,N+1):
result.append(int(array[i-1]))
if i%20==0:
print(*result,sep=' ')
result=[]
print(*result,sep=' ')