题目描述
文件如下:https://labfile.oss.aliyuncs.com/courses/21074/records.txt
解题代码
#include<bits/stdc++.h>
using namespace std;
#define ll long long int
int months[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int monthh[13]={};
struct datas{
int year;
int month;
int day;
int hour;
int minute;
int second;
};
bool cmp(datas a, datas b) {
if (a.year != b.year) return a.year < b.year;
if (a.month != b.month) return a.month < b.month;
if (a.day != b.day) return a.day < b.day;
if (a.hour != b.hour) return a.hour < b.hour;
if (a.minute != b.minute) return a.minute < b.minute;
return a.second < b.second;
}
int main(){
datas p[520];
for(int i=0;i<520;i++){
int year;
int month;
int day;
int hour;
int minute;
int second;
scanf("%d-%d-%d %d:%d:%d",&year,&month,&day,&hour,&minute,&second);
p[i].year=year;
p[i].month=month;
p[i].day=day;
p[i].hour=hour;
p[i].minute=minute;
p[i].second=second;
}
for(int i=1;i<=12;i++){
monthh[i]=monthh[i-1]+months[i-1];
}
sort(p,p+520,cmp);
for(int i=0;i<520;i++){
cout<<p[i].year<<" "<<p[i].month<<" "<<p[i].day<<" "<<p[i].hour<<" "<<p[i].minute<<" "<<p[i].second<<endl;
}
long long int ans=0;
for(int i=0;i<520;i+=2){
long long int a=(p[i].month+p[i].day-1)*24*3600+p[i].hour*3600+p[i].minute*60+p[i].second;
long long int b=(p[i+1].month+p[i+1].day-1)*24*3600+p[i+1].hour*3600+p[i+1].minute*60+p[i+1].second;
ans+=(b-a);
}
cout<<ans;
//cout<<5101913;
}