【题解】P1425 小鱼的游泳时间

· · 题解

题目大意

原题传送门

我们已知从 h1m1 分到 h2m2 分的游泳时间,计算总小时和分钟数。

解题思路

我们用晚的时间减早的时间就计算一段时间的长度,但有时,m2 小于 m1 导致结果为负数,这时就需要我们向小时借 1 再进行计算。

所以分两种情况讨论,分别为 m2>m1m2<m1

m2>m1 时,相减为正数,所以 h2,m2h1,m1 相减即可。

m2<m1 时,相减为负数,所以要向小时借 1,即 h21m260,然后再进行计算。

参考代码

#include<bits/stdc++.h>//By san_ming 
#define int long long
#define AC return 0
using namespace std;
const int N=1500;

signed main()
{
    int h1,m1,h2,m2;
    int h,m;
    cin>>h1>>m1>>h2>>m2;
    if(m2>=m1)//情况一,直接计算
    {
        h=h2-h1;
        m=m2-m1;
    }
    else//需要借1
    {
        h=h2-h1-1;
        m=m2+60-m1;
    }
    cout<<h<<" "<<m;
    AC;
}