[python] Python - Two dimensions List


이차원 리스트 복사

  1. slice 사용하기
    arr=[ row[:] for  row in copy] 
    
  2. list()
     arr= list(copy)
    
  3. copy
     import copy
     arr = copy.copy(tmp)
    
  4. deepcopy
     import copy
     arr=copy.deepcopy(tmp)
    

이차원 리스트 회전

(r,s,c)=(r,s)좌표에서 c 길이부터 시작해서 외부에서 안쪽으로 시계방향으로 회전

  1. 가장 왼쪽 값은 tmp 로저장

  2. 반시계방향으로 회전 시작점 : (r-s+1 ,c-s) 종료점 : (r-s,c-s)

    • y좌표 : r-s+1 <= y <= r+s (증가)
    • x좌표는 고정: c-s
    • y좌표 고정 : r+s
    • x좌표 : c-s+1<= x <= c+s (증가)
    • y좌표 : r+s-1 >= y >= r-s (감소)
    • x좌표 고정 : c+s
    • y좌표 고정 : r-s
    • x좌표 : c+s-1>= x >= c-s (감소!!)
  3. 마지막 처음 값을 저장
    • arr[r-s][c-s+1]=arr[r-s][c-s]

참고