题意:中文题
思路:每次加一年的天数,然后判模7是不是等于0,如果等于0就说明这年可行,要判时间是否合法,比如找到了2019-2-29就是不合法的,然后在2-29前的和2-29及其以后的有一点不一样,看代码把
AC代码:
#include "iostream"#include "string.h"#include "stack"#include "queue"#include "string"#include "vector"#include "set"#include "map"#include "algorithm"#include "stdio.h"#include "math.h"#pragma comment(linker, "/STACK:102400000,102400000")#define ll long long#define endl ("\n")#define bug(x) cout<<<" "<<"UUUUU"< >T; init(); while(T--){ int y,mm,dd,d=0,f=0,ff=0; char c; cin>>y>>c>>mm>>c>>dd; if(mm>2) f=1; if(mm==2 && dd==29) f=1, ff=1; for(int i=y; i<=10000; ++i){ d+=is[i+f]; //cout< <<"UUU\n"; d%=7; if(ff){ if(d==0 && is[i+1]==366){ cout< <