while 문을 사용하니 시간초과라고 뜬걸 보니 계산 문제이다.
낮에 올라가서 남은 높이, 밤에 내려간 것을 뺀 실제 올라간 높이 두 가지가 있다.
그러면
남은 높이 / 올라간 높이
그리고 날짜는 1일부터 시작이므로
(V-A) / (A-B) + 1
이 식이 된다.
#include <iostream>
using namespace std;
int main(){
int A,B,V;
cin >> A >> B >> V;
int res = 0;
if((V-A)%(A-B) == 0) res = (V-A)/(A-B);
else res = (V-A)/(A-B) + 1;
cout << res+1;
return 0;
}
'백준알고리즘' 카테고리의 다른 글
백준 2231 C++ (0) | 2021.07.15 |
---|---|
백준 2798 C++ (0) | 2021.07.15 |
백준 2292 C++ (0) | 2021.07.02 |
백준 1712 C++ (0) | 2021.07.02 |
백준 5622 C++ (0) | 2021.07.02 |