求助,C++过示例但测试全RE
查看原帖
求助,C++过示例但测试全RE
860986
wangan2203zhoujingpu楼主2024/3/19 23:45
#include <bits/stdc++.h>
#define PII pair<int, int>
#define ll long long
#define endl '\n'
using namespace std;

const int D = 86400;
const int H = 3600;
const int M = 60;

int tran(string s) {
    return ((int)s[0] * 10 + (int)s[1]) * H + ((int)s[3] * 10 + (int)s[4]) * M + (int)s[6] * 10 + (int)s[7];
}

void detran(int ft) {
    ft %= D;
    int h = ft / H;
    ft %= H;
    int m = ft / M;
    ft %= M;
    int s = ft;
    printf("%02d:%02d:%02d\n", h, m, s);
    return ;
}

void solve() {
    string s1, s2;
    getline(cin, s1);
    getline(cin, s2);
    int k1 = 0, k2 = 0;
    if (s1.size() > 17) k1 += (int)s1[21]; 
    if (s2.size() > 17) k2 += (int)s2[21]; 
    int tt1 = tran(s1.substr(9, 17)) + D * k1 - tran(s1.substr(0, 8));
    int tt2 = tran(s2.substr(9, 17)) + D * k2 - tran(s2.substr(0, 8));
    int tt = (tt1 - tt2) / 2;
    int ft = tt1 - tt;
    detran(ft);
    return ;
}

int main() {
    ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
    int n; 
    scanf("%d", &n);
    while (n--) solve();
    return 0;
}
2024/3/19 23:45
加载中...