
Intro 💡 2차원 배열의 인덱스 접근을 어떻게 할것인가? 아래 그림처럼 m x n 배열을 생각해보자. 배열의 인덱스는 오른쪽으로 갈 수록, 아래로 갈 수록 증가하기 때문에 다음과 같이 쓸 수 있다. 노랭이를 기준으로 봤을 때, 노랭이의 위 아래는 노랭이와 column 인덱스가 동일하고 row 인덱스는 하나씩 차이난다. 노랭이의 좌우는 노랭이와 row 인덱스가 동일하고 column 인덱스는 하나씩 차이난다. 따라서, 인덱스를 활용해서 방향전환을 하고 싶을때는 delta row(dr), delta column(dc) 리스트를 만들고 접근하면 된다 # 상, 우, 하, 좌 dr = [-1, 0, 1, 0] dc = [0, 1, 0, -1] # nr: next row, nc: next column # cr: ..

thinking 도착점의 column 인덱스를 찾아서 역으로 위로 올라가면서 시작점의 column 인덱스를 찾는 방향으로 설정 1. 위로 가는 경우: 왼쪽이나 오른쪽이 1이 나오면 direction 체인지 2. 오른쪽으로 가는 경우: 쭉 가다가 0 나오면 위로 턴 (d: 1 -> 0) 3. 왼쪽으로 가는 경우: 쭉 가다가 0 나오면 위로 턴 (d: 2 -> 0) 반복문을 돌리면서 이동해야 하는데 코드를 도대체 어케 짜야 하는지 감이 안왔다...... 그래서 아래 처럼 그림판으로 일일이 좌표를 찾으며 디버깅을 했다 ^^ 100 x 100 배열이라 눈알 빠질뻔 ㅎ;; 답답하고 멍청해보일지라도 이해에 아주 직빵이었다 ㅎ 위로 쭉 갈때는 column은 동일하고 row만 바뀐다. 이때, 왼쪽이나 오른쪽이 1이면 ..
- 파이썬
- 21609 상어 중학교
- 기지국설치
- dp
- git 미러링
- dfs
- 20056 마법사 상어와 파이어볼
- BFS
- 20057 마법사 상어와 토네이도
- 보석쇼핑
- merge에러
- 프로그래머스
- 삼성기출
- react
- 2579 계단오르기
- merge 에러
- 영어끝말잇기
- 알고리즘
- 2018 카카오 공채
- 브루트포스
- 백준
- 17406 배열돌리기4
- Python
- 삼성코테
- swea
- Total
- Today
- Yesterday