>>319
#include <iostream>
using namespace std;
int passMinutes(const int start, const int end) { return end - start; }
int main()
{
const int MIN_INADAY = 24*60;
int h1, m1, h2, m2;
cout << "開始時間(0-23):"; cin >> h1;
cout << "開始分(0-59):"; cin >> m1;
cout << "終了時間(0-23):"; cin >> h2;
cout << "終了時間(0-59):"; cin >> m2;
// 入力は省略。h1:m2 > h2:m2 の場合、h2:m2は翌日の時間だと判断する
// endは27:00等の入力も受け付けるが、startは、00:00〜23:59の範囲に丸められる
int start = h1*60+m1;
int end = h2*60+m2;
if(start < 0) {
start = 0;
h1 = 0;
m1 = 0;
} else if(start >= MIN_INADAY) {
start = MIN_INADAY - 1;
h1 = 23;
m1 = 59;
}
int tm = (start <= end) ? passMinutes(start, end) : passMinutes(start, MIN_INADAY) + passMinutes(0, end);
cout << h1 << "時" << m1 << "分から" << h2 << "時" << m2 << "分までの時間" << endl;
cout << (tm / 60) << "時間" << (tm % 60) << "分です" << endl;
return 0;
}