#include <iostream>
#include <algorithm>
#include <cmath>
using namespace std;
struct Calendar{
int month;
int day;
}date[370];
double time[370];
int n;
void read_ini()//读入初始化
{
date[1].month=1;date[1].day=0;
cin>>n;
for(int i=2;i<=n+1;i++) cin>>date[i].month>>date[i].day;
if(date[n+1].month!=12&&date[n+1].day!=31) {date[n+2].month=12; date[n+2].day=32;}
else {date[n+2].month=date[n+1].month;date[n+2].day=date[n+2].day;}
}
void Simulation()//计算相隔天数,存储换算为秒
{
double ans=-1;
int temp_month=0,temp_day=0;
for(int i=1;i<=n+1;i++)
{
ans=0;
temp_month=date[i].month; temp_day=date[i].day;
while(temp_month!=date[i+1].month)
{
switch(temp_month)
{
case 1:case 3:case 5:case 7:
case 8:case 10:case 12:
ans+=31;
break;
case 4:case 6:case 9:case 11:
ans+=30;
break;
case 2:
ans+=29;
break;
default:
printf("ERROR!");
return;
}
temp_month++;
}
while(temp_day!=date[i+1].day){ans++; temp_day++;}
time[i]=(ans-1)/366*86400;
}
}
int main()
{
read_ini();
Simulation();
double* ans=max_element(time,time+n+1);
printf("%lf",round(*ans));
return 0;
}