전체 글 (88) 썸네일형 리스트형 백준 17144 <미세먼지 안녕!> 설명이 잘되어 있는 말 그대로 주어진 순서에 맞게 해결하면 되는 시뮬레이션 문제이다. 골드 5 난이도로 삼성 역량 테스트 중에는 쉬운 난이도라고 볼 수 있다. 이 문제는 쉬운 문제이기때문에 함수를 구현해 각각의 함수가 잘 돌아가는지 테스트 겸 풀어도 좋을 것 같다. 문제 풀이 미세먼지 확산을 위한 추가의 visit[][]이차원 배열을 선언하고 확산시킨다. 이때 몇 번 확산시킬 수 있는지 세어줘야 현재의 남은 미세먼지도 정할 수 있다. 확산이 끝나면 다시 map에 이동 시켜준다. 공기청정기를 기준으로 위쪽, 아래쪽 따로 분리해서 계산해준다. 시간이 t가 지나면 남아있는 map의 미세먼지 수를 계산해주면 끝! 확산을 시켜주는 단계이다. 그 후 다시 map에 옮겨준다. 위 쪽을 먼저 순서대로 계산해준다. 마찬.. 백준 19640 <화장실의 규칙> 우선순위 큐를 사용하여 계산할 수 있는지를 묻는 문제이다. 각각의 사원을 D를 기준으로 H를 기준으로 i를 기준으로 comparable을 이용하여 비교를 할 수 있는지 묻는 문제이다. 이 문제의 핵심은 즉 comparable 이다. 이렇게 D를 비교해준 뒤 같다면 H를 비교 그리고 같다면 줄의 번호를 비교해서 우선순위 큐에 넣어주는 게 핵심이다. 그리고 각 줄의 첫 번째 인원이 존재하면 우선순위 큐에 먼저 넣어 주는 식으로 진행했다. 또한 다음 우선순위 큐에서 꺼내는 것이 k와 같다면 종료를 하게 하고 아니라면 꺼내 주고 해당 줄이 비어있지 않다면 우선순위 큐에 넣어주는 식으로 진행했다. 전체 코드 더보기 import java.io.BufferedReader; import java.io.IOExcepti.. 백준 20005 <보스몬스터 전리품> 이문제는 BFS를 이용해 보스 몬스터까지 가는 가까운 거리를 알아내고 몬스터의 피를 줄여나가는 시뮬레이션 문제이다. 문제 풀이 보스몬스터 위치에서 BFS를 하여 각각의 플레이어까지 가는 최소 시간을 Queue에 넣는다. Queue에서 꺼내면서 같은 시간이 걸리면 계속 꺼내 주고 체력을 얼마만큼 깎을 수 있는지 계산한다. 몬스터의 피가 음수가 되면 break를 해준다. 플레이어의 id를 key로 dps를 value로 해서 Hashmap 에 저장을 해서 꺼내서 계산해준다. 보스의 위치에서 BFS를 하기위한 클래스를 선언 그렇다면 q에 보스에서 가장 짧게 걸리는 플레이어 순대로 이름과 걸리는 시간이 적혀있게 된다. 초기 값은 result를 0에서 1을 더해주고 깎을 수 있는 체력의 합을 더한 sum을 선언해주.. 이전 1 ··· 7 8 9 10 11 12 13 ··· 30 다음