반응형

Beakjoon 2

[백준 Baekjoon] 1504번 특정한 최단 경로 - JAVA

백준 Baekjoon 1504번 특정한 최단 경로 - JAVA 문제 풀이 1 -> v1 -> v2 -> N 1 -> v2 -> v1 -> N 위의 두 가지 방법 중에 최단거리로 N까지 가는 방법을 구하는 문제이다. 다익스트라 알고리즘을 사용하여 각 이동(예, 1->v1, v1->v2, 1->v2)의 최단거리를 구하고, 두 가지 방법 중에 최단 경로를 출력하면 된다. 각 이동에 대해 다익스트라를 사용하여 총 6번 해도 되지만, 편의상 1, v1, v2에서의 모든 정점과의 최단거리를 구하여 사용하였다. min[0] = 1에서 모든 정점의 거리 min[1] = v1에서 모든 정점의 거리 min[2] = v2에서 모든 정점의 거리이다. 두 방법의 최단경로는 아래의 값을 비교해주어 구한다. min[0][v1](1..

[백준 Baekjoon] 10157번 자리배정 - JAVA

백준 Baekjoon 10157번 자리배정 - JAVA 문제 풀이 대기 순서가 K인 관객에게 배정될 좌석 번호(x,y)를 찾는 문제이다. 문제 설명에서 주어졌듯이 배열을 달팽이 모형으로 순회하며 K번째가 될때 위치를 출력해주면 된다. 배열을 달팽이 모형으로 순회할줄만 알면 어렵지 않은 문제이다. 초기 위치를 x = R - 1, y = 0으로 방향은 위, 오른쪽, 아래, 왼쪽 순으로 초기화 하였다. while문에서 k번째가 될때까지 횟수 cnt를 증가 시키며 k가 될때에 종료된다. 다음으로 배정될 좌석을 찾고 지도 밖으로 벗어나거나 이미 배정된 자리인 경우 방향을 돌려 배정하도록 하였다. - 처음 한바퀴를 돌 때에는 0보다 작거나 R, C보다 크면 지도 밖을 벗어난다. - 그다음 바퀴부터는 이미 배정된 좌..

반응형