99클럽 코테 스터디 18일차 TIL: 그리디, 정렬
문제https://www.acmicpc.net/problem/2212풀이일단 문제를 이해하는 것에 시간이 좀 들었다.집중국를 어디에 두어야 최솟값을 구해야할 지 머릿속으로 생각해보고 있었다.이 문제에서는 기존에 주어진 입력을 정렬해도 상관없겠다 생각해서 정렬해서 생각해보았다.[1, 3, 6, 6, 7, 9]2에하나, 7에하나 두는게 정답인데 멍청하게 6이 두개일 때 6에서 7을 수신하는데 드는 거리를 2라고 생각했다;; (두개여서..)이 부분에서 시간을 많이 잡아먹었다.결국 구간을 나눠야 되는 것이라고 생각했고 구간은 차이가 가장 큰 부분을 나눠주면 된다고 생각했다.1번 예제에서는 구간을 두개로 나눠야 하므로, 차이가 가장 큰 부분을 빼주면 두 구간으로 나누게 된다.[2, 3, 0, 1, 2] 라면 3,..
99클럽 코테 스터디 12일차 TIL: 3차원 그래프
문제https://www.acmicpc.net/problem/7576풀이토마토 문제와 비슷한 문제이다.조금 다른점이 하나 있는데 높이가 추가되었다는 점이다.기존에 상하좌우로 퍼졌던 토마토가, 상하좌우 위아래(?) 두 방향이 추가되었다.나는 이런 문제를 풀 때, 기존에 방향을 설정해줄 변수로 dy, dx을 다음과 같이 정의하였다.let dy = [1, 0, -1, 0]let dx = [0, 1, 0, -1]북동남서 방향으로 시계방향으로 정의하였었는데, 이제 추가로 z축도 필요하다고 생각했다.그래서 방향을 다음과 같이 정의했다.let dz = [0, 0, 0, 0, 1, -1]let dy = [1, 0, -1, 0, 0, 0]let dx = [0, -1, 0, 1, 0, 0]여기까지 이해했다면 반은 풀었다고..