안녕하세요. 오늘은 공부를 할 거예요.
https://www.acmicpc.net/problem/29734
집에서 공부를 하려면 N+(N-1)/8xS만큼의 시간이 걸립니다. 이때 (N-1)/8은 무엇일까요? 바로 8시간마다의 수면패턴입니다. 그러면 왜 N-1을 했을까요? 왜냐하면 딱 8시간째에 과제를 끝내면 제출을 하고 잘 수 있기 때문입니다.
같은 논리로 독서실에서 공부를 하려면 T+M+(N-1)/8x(2xT+S)만큼의 시간이 걸립니다. 왔다갔다하는 시간도 고려해주어야하지요.
#include <iostream>
#define ll long long
using namespace std;
int main(void)
{
ios_base::sync_with_stdio(false); cin.tie(NULL);
ll N, M, T, S, Zip, Dok;
cin >> N >> M >> T >> S;
Zip = N + (N - 1) / 8 * S;
Dok = T + M + (M - 1) / 8 * (2 * T + S);
if (Zip < Dok) cout << "Zip\n" << Zip;
else cout << "Dok\n" << Dok;
}
감사합니다.