[백준 5014번 / 스타트링크 / JAVA / BFS]
https://www.acmicpc.net/problem/5014 5014번: 스타트링크 첫째 줄에 F, S, G, U, D가 주어진다. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) 건물은 1층부터 시작하고, 가장 높은 층은 F층이다. www.acmicpc.net 문제 접근 모든 층을 탐색하는 건 쉽게 나왔으나 목표층을 방문하지 못할 시 실패 문구를 뜨게하는 조건이 문제였다. UP, DOWN으로 모든 층을 탐색하고 도달하지 못하게 될 경우 반복문을 나와서 출력해주자라곤 생각했으나 쉽지 않았다. 핵심은 큐를 사용해 탐색할 층을 넣어두는 것, 더 이상에 큐에 값이 없단 건 새로 방문할 층이 없단 것 while문을 돌면서 계속 큐에 값을 삽입하고 층 탐색 시 값을 꺼낸다. ..
2023. 4. 18.
[백준 1205번 / JAVA / 구현]
https://www.acmicpc.net/problem/1205 1205번: 등수 구하기 첫째 줄에 N, 태수의 새로운 점수, 그리고 P가 주어진다. P는 10보다 크거나 같고, 50보다 작거나 같은 정수, N은 0보다 크거나 같고, P보다 작거나 같은 정수이다. 그리고 모든 점수는 2,000,000,000보 www.acmicpc.net #문제 설명 태수가 즐겨하는 디제이맥스 게임은 각각의 노래마다 랭킹 리스트가 있다. 이것은 매번 게임할 때 마다 얻는 점수가 비오름차순으로 저장되어 있는 것이다. 이 랭킹 리스트의 등수는 보통 위에서부터 몇 번째 있는 점수인지로 결정한다. 하지만, 같은 점수가 있을 때는 그러한 점수의 등수 중에 가장 작은 등수가 된다. 예를 들어 랭킹 리스트가 100, 90, 90, ..
2022. 12. 21.