记录编号 |
94557 |
评测结果 |
AAAAAAAAAA |
题目名称 |
到天宫做客 |
最终得分 |
100 |
用户昵称 |
Will |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.003 s |
提交时间 |
2014-04-01 17:35:50 |
内存使用 |
0.29 MiB |
显示代码纯文本
#include <stdio.h>
int main() {
freopen("heaven.in","r",stdin);
freopen("heaven.out","w",stdout);
int months[12]={31,29,31,30,31,30,31,31,30,31,30,31};
int month[366],day[366],count[366]={0};//
int N,i,j;
int max=count[0],t;
double result;
void bubble(int a[],int b[],int n);
scanf("%d",&N);
if(N==0) {//ERROR
printf("86400\n");
return 0;
}
for(i=0;i<N;i++) scanf("%d%d",&month[i],&day[i]);
bubble(month,day,N);
for(i=0;i<N;i++) {
for(j=0;j<month[i]-1;j++) {
count[i]+=months[j];
}
for(j=1;j<=day[i];j++)
count[i]++;
count[i]-=(i+1);
}
for(i=1;i<N;i++) {
t=count[i]-count[i-1];
if(t>max) max=t;
}
t=366-count[N-1]-N;//ERROR
if(t>max) max=t;
result=1.0*max/366*24*3600;//ERROR
printf("%.0lf\n",result);
return 0;
}
void bubble(int a[],int b[],int n) {
int i,j,t;
for(i=1;i<n;i++)
for(j=0;j<n-i;j++)
if(a[j]>a[j+1]||a[j]==a[j+1]&&b[j]>b[j+1]) {
t=a[j];a[j]=a[j+1];a[j+1]=t;
t=b[j];b[j]=b[j+1];b[j+1]=t;
}
}