여니의 Side Project/제주코딩베이스캠프 서포터즈 2기

[제주코딩베이스캠프] 눈떠보니 코딩테스트 전날 | 문제6. 밭의 비밀

여니's 2021. 8. 2. 10:13

numpy를 이용하면 쉽게 배열 회전이 가능하다.
하지만 인터넷 검색 결과 백준 및 삼성 코테에서는 사용 불가 ㅠㅠ

import numpy as np np.rot90(두번째밭,1) + np.array(첫번째밭) # 1회전 반시계방향, 1회전 시계방향은 -1이라고 쓰면 된다. np.rot90(두번째밭,1) - np.array(첫번째밭) np.rot90(두번째밭,1) * np.array(첫번째밭) np.rot90(두번째밭,1) @ np.array(첫번째밭) #행렬의 곱 # 8진법으로 문자열을 바꾸면 정답이다. 정답 = np.rot90(두번째밭,1) + np.array(첫번째밭) chr(int(''.join([str(i) for i in 정답[0]]),8)) #8진법으로 for k in range(5): print(chr(int(''.join([str(i) for i in 정답[0]]),8))) #---------------------------------------------------------------------------------- #numpy 사용 x sample=[[0,0,0,0,0], [0,0,0,0,0], [0,0,0,0,0], [0,0,0,0,0], [0,0,0,0,0] ] for i in range(len(두번째밭)): for j in range(len(두번째밭[0])): sample[i][j]=두번째밭[j][len(두번째밭)-1-i] for i in range(5): for j in range(5): sample[i][j]+=첫번째밭[i][j]

그래서 배열 회전시에는
이중 for문을 이용하여야 하고
그 전에 샘플 배열을 하나 만들어놔야 한다.