문제풀이

BaekJoon(2869)::달팽이는 올라가고 싶다

문제

 

2869번: 달팽이는 올라가고 싶다

첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000)

www.acmicpc.net

문제파악

  • 높이 V, 낮에 올라가는 높이 A, 밤에 내려가는 높이 B
  • 시간제한 0.15초 :: 시뮬레이션 X - 수식으로 해결

문제풀이

  • 꼭대기에 올라가면 내려갈일이 없음 == V-A까지만 올라가면 된다(마지막 꼭대기 올라갈수 있기 때문에 날짜==1)
  • A-B 꼭대기를 찍기 전에 올라가는 날짜 += (V-B)/(A-B)
  • (V-B)%(A-B) 나뉘어 떨어지지 않을시 날짜 + 1

소스코드

#include<iostream>
using namespace std;
int main() {
    int v, a, b;
    cin >> a >> b >> v;

    v -= a;
    int day = 1;

    day += v / (a - b);
    if (v % (a - b) != 0) {
        day++;
    }

    cout << day;
    return 0;
}

 

'문제풀이' 카테고리의 다른 글

BaekJoon(1850)::최대공약수  (0) 2021.07.19
BaekJoon(1085)::직사각형에서 탈출  (0) 2021.07.19
BaekJoon(2292)::벌집  (0) 2021.07.19
BaekJoon(2839)::설탕 배달  (0) 2021.07.19
BaekJoon(2164)::카드2  (0) 2021.07.19