곳감 (모래시계)
문제 정보는 인프런의 파이썬 알고리즘 문제풀이 코딩테스트에 있습니다!
문제풀이
N = int(input())
a = [list(map(int, input().split())) for _ in range(n)]
m = int(input())
for i in range(m):
h, j, k = map(int, input().split())
if (t == 0):
for _ in range(k):
# h번째 열의 제일 앞에 있는 자료를 빼내고 뒤에 넣기
a[h-1].append(a[h-1].pop(0))
else:
for _ in range(k):
a[h-1].insert(0, a[h-1].pop())
res = 0
s = 0
e = n - 1
for i in range(n):
for j in range(s, e+1):
res+=a[i][j]
if i<n//2:
s+=1
e-=1
else:
s-=1
e+=1
print(res)
insert() 함수를 쓰면 리스트를 직접 수정하면서 해당 값을 몇번쨰 넣는다. 해당 함수를 알고 문제에 대입했다면 조금은 더 쉽게 풀 수 있지 않았을까!!
너무 문제 자체를 어렵게 생각하는듯 ㅠ 2차원 그래프라는걸 생각하고 문제를 풀려니 너무 쫄아서 접근 자체를 못하게되는 것 같다…