💭

時間の計算を行う際に0時(24時)を超える場合の対応

2023/11/24に公開

時間(0時~23時)の計算を行うときに、0時(24時)を超える計算を行う時
例えば、23時の6時間後は普通にやると29時になってしまう。
対処法として、24で割った余り(mod 24)を求めると適切な答え5時が求められる

int main()
{
    int bad_time = 23 + 6; 
    cout << bad_time << endl; // 29
    int good_time = (23 + 6) % 24;
    cout << good_time << endl; // 5
    return 0;
}

練習問題

https://atcoder.jp/contests/abc325/tasks/abc325_b

Discussion