본문 바로가기

BOJ 11060 - 점프 점프 문제 링크https://www.acmicpc.net/problem/11060 문제 해결1. DP[i] = i번째에서 끝까지 이동하는 최소 이동 횟수. 주의할 점1. 처음에 DP 배열의 모든 값들을 큰 값들로 초기화한다. 2. 매번 값을 확인해줄 때, 최소값으로 갱신해야한다. 3. input이 1이 되면 0을 출력하는 지 확인한다. ※ 정확하고 부드러운 태클은 언제나 환영입니다. 더보기
BOJ 13567 - Robot (2016 대전 regionals) 문제 링크https://www.acmicpc.net/problem/13567 문제 해결1. 아주 기본적인 구현 문제다. 2. X좌표와 Y좌표로 나눠서 위치를 갱신하고 마지막 위치를 출력한다. 만약 맵을 벗어나면, -1을 출력한다. 주의할 점1. 'TURN' 이라는 명령어를 받았을 때 left or right로 움직여야한다. 이 부분을 구현하는 것이 내겐 좀 어려웠다. 이 부분은 S 모 회사에서도 구현을 요구했던 적이 있어서 확실히 알고 넘어가야한다. 2. 배열을 사용해서 X좌표와 Y좌표를 변화시켜 방향을 전환한다. 여기서 index부분이 음수가 되기 전에 미리 예외 처리를 해줘야한다. 3. 맵을 벗어나는 invalid한 상황을 잘 처리해야한다. 현재 명령어를 실행한 후, 다음 명령어를 받기 전에 처리해한.. 더보기
BOJ 13414 - 수강신청 문제 링크https://www.acmicpc.net/problem/13414 문제 해결1. STL map을 사용해서 문제에서 주어지는 1번 동작과 2번 동작을 해결한다. 2. 3번 동작을 해결하기 위해서 벡터로 새로 정렬한다. 주의할 점1. L이 최대 값이 5*10^5 (500,000)이므로, O(L*lg(L))만에 해결해야한다. 2. map의 멤버 함수인 insert, erase, count를 사용하지 않고서 바로 인덱스를 활용해서 시간을 줄인다. 3. map을 순환할 때, iterator 대신에 auto라는 만능(?) 타입을 이용하면 더욱 쉽게 값에 접근 할 수 있다. 그리고 '->' operator를 이용해서 값에 접근해야함을 잊으면 안된다. ※ 정확하고 부드러운 태클은 언제나 환영입니다. 더보기