풀이
- 분명 출력은 잘 되는데 4%에서 계속 에러가 발생해서
- 이것저것 찾다보니 ...
- 출력에 20줄이 넘어가게 되면 다음 행에서 출력하도록 적혀있어서
- 틀리게 되었던 것으로 역시 끝까지 문제를 잘 읽어야겠다는
- 생각을 다시 하게 되었다는 ...ㅎ
- 해당 문제의 풀이 과정은 따로 뭐가 없었고
- 흠.. 남자의 경우엔 switch의 값이 배수인지 체크하기 위해서
- 범위를 1부터 n까지 체크 후 해당 값이 swich와 나눈 값이 0의 경우
- 해당 값에 따른 값 변경해주기
- 여자의 경우엔 우선 범위가 배열의 길이에 충족하는지 체크 후
- 값 또한 같다면 변경하기
- 이후 길이가 20이 넘어가는 범위를 정해둔 다음 그에따른 슬라이싱을 통해 출력하여 해결
import sys
input = sys.stdin.readline
n = int(input())
li = list(map(int,input().rstrip('\n').split()))
for _ in range(int(input())):
gender, switch = map(int,input().split())
if gender == 1:
for i in range(1,n+1):
if not i%switch:
if li[i-1]: li[i-1] = 0
else: li[i-1] = 1
else:
cnt = 0
switch -= 1
while True:
if 0<=switch-cnt<n and 0<=switch+cnt<n and li[switch-cnt] == li[switch+cnt]:
if li[switch-cnt]: li[switch-cnt],li[switch+cnt] = 0,0
else: li[switch-cnt],li[switch+cnt] = 1,1
cnt += 1
else: break
for i in range((n//20)+1): print(*li[i*20:(i+1)*20])
'알고리즘' 카테고리의 다른 글
[백준, 파이썬, 1037번] 약수 (0) | 2023.10.04 |
---|---|
[백준, 파이썬, 9655번] 돌 게임 (0) | 2023.10.03 |
[백준, 파이썬, 1283번] 단축키 지정 (2) | 2023.10.01 |
[백준, 파이썬, 14405번] 피카츄 (2) | 2023.10.01 |
[백준, 파이썬, 24444번] 알고리즘 수업 - 너비 우선 탐색 1 (0) | 2023.09.30 |