先是用的分类讨论,然后发现只要求与11:11:11的差就行了
分类讨论
#include<iostream>
#include<algorithm>
using namespace std;
int d = 11,h =11,m =11;
int main()
{
int a,b,c;
int sum;
cin>>a>>b>>c;
if(c < 11) {
if(b<11) {
sum = (a-d-1) * 24 * 60 + (24-h+b-1) *60 + 60-m+c;
} else {
sum = (a-d) * 24 * 60 + (b-h-1) * 60 + 60-m-c;
}
} else {
if(b < 11)
sum = (a-d-1) * 24 * 60 + (24-h+b) * 60 + m-c;
else {
sum = (a-d) * 24 * 60 + (b-h) * 60 + c-m;
}
}
if(a==11 && b < 11 || (a==11 && b < 11 && c <11)) sum = -1;
cout<<sum;
}
直接计算
int main()
{
int a,b,c;
cin>>a>>b>>c;
if((a<=11&&b<11) || (a<=11&&b<=11&&c<11))cout<<-1;
else cout<<(a-11)*1440+(b-11)*60+c-11
}