난이도: Lv.2유형: 시뮬레이션해결 여부:오답아이디어틱텍토가 정상적인 상황인지 2차원 배열 처리하는 문제다오답 이유 혹은 알게 된것쌩구현문제인데 그냥 Typo 가 좀 있어서 걸렸다.불가능 case가 O와 X count 가 다른경우와 둘다 빙고 나오는 경우 이렇게만 잡고 생각했는데, 복합적으로 O가 이겼는지 X가 이겼는지에 따른 개수 case도 있었다. 알고리즘적으로 어려운 건 많이 없었는데 저 예외 못잡아서 틀렸다. 확실히 이런 구현 문제는 항상 함정이 있으니 직접 해보면서 해야겠다2차원 배열 안에서 현기증... 자꾸 실수가 있다def bingo(s,board): for i in range(0,3): if board[i].count(s) == 3: return 1 ..
Algorithm/Simulation
난이도: Lv.0유형: 시뮬레이션, bruteforce해결 여부: 테스트케이스 오답 후 해결아이디어2차원 배열에서 대각선 포함 근처에 폭탄이 없는 칸의 개수를 구하는 문제다. 그냥 쌩 순회여서 시간줄이는법있나 했는데 그냥 시뮬레이션 부르트포스 문제였다오답 이유 혹은 알게 된것이차원 배열 처리애서 애를 먹었다. 어떻게해야 효율적일지2차원 리스트 슬라이싱을 잘못해서 삽질했다. list[start:end][start:end] 이러면 딱 나오는줄 알았는데 이상한 값이 나왔다. 그래서 이런 경우 그냥 numpy 써서 np.array()로 변환해준 다음에 array[startY:endY, startX:endX] 이런식으로 하는게 나을 것이다. 3. 만약 numpy 쓰기 싫으면 directions로 8방향 리스트에 ..
난이도: Lv.1유형: 시뮬레이션해결 여부: 통과아이디어- 2차원 배열 구현해서 드래그의 시작점과 끝점을 최소 최대로 잡는 것이었다.오답 이유 혹은 알게 된것1. 격자점이 칸이아니라 줄 기준이어서 마지막에 1더해주어야 했다.2. 처음에는 max, min 구하는데 특정 값 기준으로 정하고 그러는줄알았는데 아니었다. 그냥 가장 최소, 가장 최대 2차원 배열 각각 구해주면 되는것이었다. 그래서 2차원 배열 막 뒤집는 함수 찾으려고 했는데 풀다보니 필요 없다는 것을 알아냈다. 3. find와 rfind를 잘 써먹었다. 4. sort 안에 sort(key=lambda x: x[1]) 이렇게 key와 lambda 문법으로 효율적으로 정리하는 법을 알게되었다 def solution(wallpaper): answ..
