結果
| 問題 | No.296 n度寝 | 
| コンテスト | |
| ユーザー |  kichirb3 | 
| 提出日時 | 2018-02-27 18:11:07 | 
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 2 ms / 1,000 ms | 
| コード長 | 741 bytes | 
| コンパイル時間 | 655 ms | 
| コンパイル使用メモリ | 69,120 KB | 
| 実行使用メモリ | 5,248 KB | 
| 最終ジャッジ日時 | 2024-11-29 12:58:58 | 
| 合計ジャッジ時間 | 1,570 ms | 
| ジャッジサーバーID (参考情報) | judge1 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 16 | 
ソースコード
// No.296 n度寝
// https://yukicoder.me/problems/no/296
//
using namespace std;
#include <iostream>
#include <utility>
#include <iomanip>
pair<int, int> solve(int N, int H, int M, int T);
int main() {
    int N, H, M, T;
    cin >> N >> H >> M >> T;
    pair<int, int> ans = solve(N, H, M, T);
    cout << ans.first << endl;
    cout << ans.second << endl;
}
pair<int, int> solve(int N, int H, int M, int T) {
    int wakeup_time = H * 60 + M; // 最初に起きる時間の分表記
    wakeup_time += (T * (N - 1)); // N度寝した後の時刻
    wakeup_time %= (24 * 60);   // 23:59までの範囲にして、
    int hh = wakeup_time / 60;  // 時 と 分 に分離
    int mm = wakeup_time % 60;
    return make_pair(hh, mm);
}
            
            
            
        