結果
| 問題 | No.652 E869120 and TimeZone | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2020-02-01 03:58:15 | 
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) | 
| 結果 | 
                                WA
                                 
                             | 
| 実行時間 | - | 
| コード長 | 1,178 bytes | 
| コンパイル時間 | 1,448 ms | 
| コンパイル使用メモリ | 168,496 KB | 
| 実行使用メモリ | 6,948 KB | 
| 最終ジャッジ日時 | 2024-09-18 19:27:49 | 
| 合計ジャッジ時間 | 2,392 ms | 
| ジャッジサーバーID (参考情報) | judge3 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 WA * 2 | 
| other | AC * 23 WA * 7 | 
ソースコード
#include "bits/stdc++.h"
using namespace std;
typedef long long int ll;
typedef pair<ll, ll > pi;  
typedef pair<pair<ll, ll >, ll > pii;  
vector<ll > vec;
vector<ll > vec2;
ll MOD = 1000000007;
ll INF = 1145141919454519;
//謎の誤差が発生したのでstod使うのやめた
int main() {
    ll a, b;
    cin >> a >> b;
    ll minute = a * 60 + b;
    //cout << minute << endl;
    string s;
    cin >> s;
    //double t = stod(s.substr(3,s.length()-3));
    //double sabun = (t - 9) * 60;
    string st = s.substr(3,s.length()-3);
    ll len = st.length();
    ll tt = 0;
    if(len == 2){
        tt =  (st[1]-'0') * 60;
    }else if(len == 3){
        tt = (st[1]-'0' * 10 + st[2]-'0') * 60;
    }else if(len == 4){
        tt = (st[1]-'0') * 60 + (st[3]-'0') * 6;
    }else{
        tt = (st[1]-'0' * 10 + st[2]-'0') * 60 +  (st[3]-'0') * 6;
    }
     
    if(st[0] == '-') tt *= -1;
    minute += tt - 9 * 60;
    if(minute < 0){
        minute += 24 * 60;
    }
    if(minute >= 24 * 60){
        minute -= 24 * 60;
    }   
    cout << setw(2) << setfill('0') << (ll)minute / 60 << ":" ;
    cout << setw(2) << setfill('0') << (ll)minute % 60 << endl;
}
            
            
            
        