本题的唯一一篇洛谷题解是错误的
查看原帖
本题的唯一一篇洛谷题解是错误的
62308
Mr_Wu楼主2022/4/4 15:58

官方题解自然是对的

但官方数据太拉了,导致直接记忆化 DP 可以通过

用这个数据可以把这篇题解卡飞

#include<cstdio>
#include<cstdlib>
#include<ctime>
#include<algorithm>
#include<set>
using namespace std;

typedef long long ll;
const int MAXN=1e6+5;

int rnd(int l,int r){
	return rand()%(r-l+1)+l;
}

int a[MAXN],b[MAXN];
int main(){
	freopen("zero.in","w",stdout);
	srand(time(0));
	int N=300000,B=300;
	printf("%d\n",N);
	for(int i=1;i<=N/2;++i)a[i]=i;
	for(int i=N/2+1;i<=N;++i)a[i]=i;
	for(int i=1;i<=N;++i)printf("%d ",a[i]-a[i-1]);putchar('\n');
	int x=0;
	for(int i=1;i<=N;++i){
		if(i%B==0)x=-a[i];
		b[i]=x;
	}
	for(int i=1;i<=N;++i)printf("%d ",b[i]-b[i-1]);putchar('\n');
	return 0;
}
2022/4/4 15:58
加载中...