生成器:
#include<bits/stdc++.h>
using namespace std;
int main(){
freopen("input.in","w",stdout);
printf("%d %d %d\n",100,20,100);
for(int i=1;i<=100;i++) printf("1 ");printf("\n");
for(int i=1;i<=100;i++) printf("100 ");printf("\n");
for(int i=1;i<=10;i++) printf("%d\n",100000000);
for(int i=1;i<=10;i++) printf("%d\n",1ll*rand()*rand()%100000000+1);
return 0;
}
原理非常简单,我猜数据是随机构造的,所以可以先DP算出实际上有用的天数(没用的天数意思是一定会被大佬打败的天数),会发现远远不到100。
但是其实非常容易把数据卡到100,这样 BFS 不对的就会 TLE 或者直接 RE 了。