문제 번호: 2869
문제 제목: 달팽이는 올라가고 싶다
문제 주소: https://www.acmicpc.net/problem/2869
문제 내용
낮에는 A미터 올라가고, 밤에는 B미터 미끄러지는 달팽이가 V미터 높이를 오르는데 소요되는 일수를 출력한다.
테스트 케이스
2 1 5 |
4 |
4 2 5 |
2 |
2 1 1000000000 |
999999999 |
문제 풀이
반복문을 사용하여도 결과는 올바르게 나오지만 이 경우 C++로 진행하여도 제한시간인 0.15초를 초과하게 된다. 따라서 반복문이 아닌 단순 수식으로 처리하여 결과를 출력해야 한다.
마지막 날에는 올라가기만 하고 미끄러지지 않고, 그 외의 날짜는 하루치 이동거리만큼 이동하고, 반복문으로 돌리는 것도 동일한 값의 뺄셈이 반복되는 것이니 / 연산자를 활용하는게 낫다. 과정은 아래와 같다.
1. 날짜 값을 1로 초기화 한다.
2. V에서 A를 뺀다.
3. V를 (A - B)로 나눈 나머지가 0인지 확인한다.
3.1. true라면 V / (A - B) + 1을 출력한다.
3.2. false라면 V / (A - B) + 2를 출력한다.
풀이 코드
'공부 > 문제풀기' 카테고리의 다른 글
백준 2775 - 부녀회장이 될테야 (0) | 2019.08.02 |
---|---|
백준 10250 - ACM 호텔 (0) | 2019.08.02 |
백준 1011 - Fly me to the Alpha Centauri (0) | 2019.08.01 |
백준 1193 - 분수찾기 (0) | 2019.07.31 |
백준 2292 - 벌집 (0) | 2019.07.31 |