1 条题解

  • 0
    @ 2031-12-5 20:41:31

    【例13.3】时间差

    解题思路

    分别把两个时刻转换成 h×3600+m×60+s 秒,再相减。

    正确性说明

    统一到秒后时间差就是数值差,题目保证第二时刻更晚。

    易错点

    用 char 变量读掉两个冒号。

    复杂度

    本题输入规模固定,时间 O(1),额外空间 O(1)。

    参考代码(C++11)

    #include <bits/stdc++.h>
    using namespace std;
    
    int main() {
        ios::sync_with_stdio(false);
        cin.tie(nullptr);
        int a, b, c, d, e, f;
        char colon;
        cin >> a >> colon >> b >> colon >> c >> d >> colon >> e >> colon >> f;
        cout << d * 3600 + e * 60 + f - a * 3600 - b * 60 - c << "\n";
        return 0;
    }
    
    • 1