SW
[백준 2869] 달팽이는 올라가고 싶다 본문
0. 제목
- 백준 2869 달팽이는 올라가고 싶다
- BOJ 2869 달팽이는 올라가고 싶다
- C++ 2869 달팽이는 올라가고 싶다
1. 문제
https://www.acmicpc.net/problem/2869
2. 풀이
- 제한시간이 짧기 때문에 for문으로 풀면 시간초과가 나온다. 다른 방식 풀이는 다음과 같다.
- 하루에 A-B 만큼 올라갈 수 있다. 도달하는 날에는 미끄러질 필요가 없는 것을 고려하여 식을 세운다.
- V-A 만큼 가면 도착이다. 따라서 V-A까지 A-B 씩 가는 것이다.
- V-A가 A-B로 나누어 떨어지지 않으면 높이에서 하루 가는 거리를 나눈 값에서 하루를 더해주고 나누어 떨어지면 그대로 높이에서 하루 가는 거리를 나눈 값을 출력해준다.
3. 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
#include <iostream>
using namespace std;
int main(int argc, const char * argv[]) {
ios_base::sync_with_stdio(false);
cin.tie(NULL);cout.tie(NULL);
int A, B, V;
cin >> A >> B >> V;
int height, day = 1;
height = V - B;
day = height / (A - B);
if(height % (A - B) != 0)
day++;
cout << day << '\n';
return 0;
}
|
'대학교 > Algorithm' 카테고리의 다른 글
[백준 1167] 트리의 지름 (0) | 2020.03.11 |
---|---|
[백준 11725] 트리의 부모 찾기 (0) | 2020.03.11 |
[백준 11651] 좌표 정렬하기 2 (0) | 2020.03.09 |
[백준 1003] 피보나치 함수 (0) | 2020.03.08 |
[백준 14501] 퇴사 (0) | 2020.03.07 |
Comments