NumberTrart @ 2022-10-27 21:21:26
#include<iostream>
using namespace std;
class EightNumberDate_AutoCorrect
{
int year,month,day;
void AutoCorrectMonthDay()
{
int t=year,r=0;
while(t>0)
{
r=r*10+t%10;
t/=10;
}
month=r/100;
day=r%100;
}
void setYear(int t)
{
year=t;
AutoCorrectMonthDay();
}
void setEight(int t,string s)
{
year=t/10000;
month=t/100%100;
day=t%100;
EightNumberDate_AutoCorrect date;
date.setYear(year);
if(date.month>month||(date.month==month&&date.day>day))
{
if(s=="smaller")
setYear(year-1);
else
AutoCorrectMonthDay();
}
else if(!(date.year==year&&date.month==month&&date.day==day))
{
if(s=="bigger")
setYear(year+1);
else
AutoCorrectMonthDay();
}
}
};
typedef EightNumberDate_AutoCorrect DATE;
bool operator <(DATE a,DATE b)
{
return a.month<b.month||(a.month==b.month&&a.day<b.day);
}
DATE d1,d2;
int a,b;
int main()
{
cin>>a>>b;
d1.setEight(a,"bigger");
d2.setEight(b,"smaller");
int cnt=0;
for(int i=d1.year;i<=d2.year;i++)
{
DATE z;
z.setYear(i);
int maxx[]={-1,31,((z.year%4==0&&z.year%100!=0)||z.year%400==0)?29:28,31,30,31,30,31,31,30,31,30,31,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};
if(z.day<=maxx[z.month])//合法
cnt++;
}
cout<<cnt;
return 0;
}
/tmp/compiler_f74tiy_q/src: 在函数‘bool operator<(DATE, DATE)’中:
/tmp/compiler_f74tiy_q/src:48:14: 错误:‘int EightNumberDate_AutoCorrect::month’ is private within this context
48 | return a.month<b.month||(a.month==b.month&&a.day<b.day);
| ^~~~~
/tmp/compiler_f74tiy_q/src:5:14: 附注:declared private here
5 | int year,month,day;
| ^~~~~
/tmp/compiler_f74tiy_q/src:48:22: 错误:‘int EightNumberDate_AutoCorrect::month’ is private within this context
48 | return a.month<b.month||(a.month==b.month&&a.day<b.day);
| ^~~~~
/tmp/compiler_f74tiy_q/src:5:14: 附注:declared private here
5 | int year,month,day;
| ^~~~~
/tmp/compiler_f74tiy_q/src:48:32: 错误:‘int EightNumberDate_AutoCorrect::month’ is private within this context
48 | return a.month<b.month||(a.month==b.month&&a.day<b.day);
| ^~~~~
/tmp/compiler_f74tiy_q/src:5:14: 附注:declared private here
5 | int year,month,day;
| ^~~~~
/tmp/compiler_f74tiy_q/src:48:41: 错误:‘int EightNumberDate_AutoCorrect::month’ is private within this context
48 | return a.month<b.month||(a.month==b.month&&a.day<b.day);
| ^~~~~
/tmp/compiler_f74tiy_q/src:5:14: 附注:declared private here
5 | int year,month,day;
| ^~~~~
/tmp/compiler_f74tiy_q/src:48:50: 错误:‘int EightNumberDate_AutoCorrect::day’ is private within this context
48 | return a.month<b.month||(a.month==b.month&&a.day<b.day);
| ^~~
/tmp/compiler_f74tiy_q/src:5:20: 附注:declared private here
5 | int year,month,day;
| ^~~
/tmp/compiler_f74tiy_q/src:48:56: 错误:‘int EightNumberDate_AutoCorrect::day’ is private within this context
48 | return a.month<b.month||(a.month==b.month&&a.day<b.day);
| ^~~
/tmp/compiler_f74tiy_q/src:5:20: 附注:declared private here
5 | int year,month,day;
| ^~~
/tmp/compiler_f74tiy_q/src: 在函数‘int main()’中:
/tmp/compiler_f74tiy_q/src:55:27: 错误:‘void EightNumberDate_AutoCorrect::setEight(int, std::string)’ is private within this context
55 | d1.setEight(a,"bigger");
| ^
/tmp/compiler_f74tiy_q/src:22:10: 附注:declared private here
22 | void setEight(int t,string s)
| ^~~~~~~~
/tmp/compiler_f74tiy_q/src:56:28: 错误:‘void EightNumberDate_AutoCorrect::setEight(int, std::string)’ is private within this context
56 | d2.setEight(b,"smaller");
| ^
/tmp/compiler_f74tiy_q/src:22:10: 附注:declared private here
22 | void setEight(int t,string s)
| ^~~~~~~~
/tmp/compiler_f74tiy_q/src:58:18: 错误:‘int EightNumberDate_AutoCorrect::year’ is private within this context
58 | for(int i=d1.year;i<=d2.year;i++)
| ^~~~
/tmp/compiler_f74tiy_q/src:5:9: 附注:declared private here
5 | int year,month,day;
| ^~~~
/tmp/compiler_f74tiy_q/src:58:29: 错误:‘int EightNumberDate_AutoCorrect::year’ is private within this context
58 | for(int i=d1.year;i<=d2.year;i++)
| ^~~~
/tmp/compiler_f74tiy_q/src:5:9: 附注:declared private here
5 | int year,month,day;
| ^~~~
/tmp/compiler_f74tiy_q/src:61:20: 错误:‘void EightNumberDate_AutoCorrect::setYear(int)’ is private within this context
61 | z.setYear(i);
| ^
/tmp/compiler_f74tiy_q/src:17:10: 附注:declared private here
17 | void setYear(int t)
| ^~~~~~~
/tmp/compiler_f74tiy_q/src:62:31: 错误:‘int EightNumberDate_AutoCorrect::year’ is private within this context
62 | int maxx[]={-1,31,((z.year%4==0&&z.year%100!=0)||z.year%400==0)?29:28,31,30,31,30,31,31,30,31,30,31,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};
| ^~~~
/tmp/compiler_f74tiy_q/src:5:9: 附注:declared private here
5 | int year,month,day;
| ^~~~
/tmp/compiler_f74tiy_q/src:62:44: 错误:‘int EightNumberDate_AutoCorrect::year’ is private within this context
62 | int maxx[]={-1,31,((z.year%4==0&&z.year%100!=0)||z.year%400==0)?29:28,31,30,31,30,31,31,30,31,30,31,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};
| ^~~~
/tmp/compiler_f74tiy_q/src:5:9: 附注:declared private here
5 | int year,month,day;
| ^~~~
/tmp/compiler_f74tiy_q/src:62:60: 错误:‘int EightNumberDate_AutoCorrect::year’ is private within this context
62 | int maxx[]={-1,31,((z.year%4==0&&z.year%100!=0)||z.year%400==0)?29:28,31,30,31,30,31,31,30,31,30,31,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};
| ^~~~
/tmp/compiler_f74tiy_q/src:5:9: 附注:declared private here
5 | int year,month,day;
| ^~~~
/tmp/compiler_f74tiy_q/src:63:14: 错误:‘int EightNumberDate_AutoCorrect::day’ is private within this context
63 | if(z.day<=maxx[z.month])//合法
| ^~~
/tmp/compiler_f74tiy_q/src:5:20: 附注:declared private here
5 | int year,month,day;
| ^~~
/tmp/compiler_f74tiy_q/src:63:26: 错误:‘int EightNumberDate_AutoCorrect::month’ is private within this context
63 | if(z.day<=maxx[z.month])//合法
| ^~~~~
/tmp/compiler_f74tiy_q/src:5:14: 附注:declared private here
5 | int year,month,day;
| ^~~~~
by Untitled10032 @ 2022-10-27 21:39:02
使用了私有变量和方法。建议在类的声明中合适的地方加上 public:
。