メイド服セット / paizaOnlineHackathon7

paiza.jp

#include <iomanip>
#include <iostream>
using namespace std;

void Solve(int n)   {
    int m, answer;

    for (int i=0; i<n; ++i) {
        cin >> m;
        answer = 24*60+60-m/3;
        cout << setw(2) << setfill('0') << (answer/60)%24 << ":";
        cout << setw(2) << setfill('0') << answer%60 << endl;
    }
}

int main(void)  {
    int n;

    cin >> n;
    Solve(n);
    return 0;
}

時間を全て分に直しておく。6時間眠り7時に起きることから残業時間がない場合は1時に就寝する。
なので初期時間は24時間+1時間とし、そこから残業した時間の1/3だけ引く。
最後に時間を出力形式に則り出力。
〜了〜