Hack
查看原帖
Hack
592894
lantifac楼主2024/1/29 10:10

该题时间复杂度可以卡到 Θ(Tn3)\Theta(Tn^3),构造 aa 前半部分全是 11,后半部分全是 22 即可。

#include<bits/stdc++.h>
#define int ll
using namespace std;
typedef long long ll;
const int N = 750;
mt19937_64 rnd(chrono::system_clock::now().time_since_epoch().count());
int p[N];
signed main()
{
	ios::sync_with_stdio(0);
	cin.tie(0) , cout.tie(0);
	int T = 5;
	cout << T << "\n";
	while(T--)
	{
		int n = 700;
		int r[3] = {n / 2 , n};
		iota(p + 1 , p + n + 1 , 1);
		shuffle(p + 1 , p + n + 1 , rnd);
		cout << n << "\n";
		for(int i = 1 ; i <= r[0] ; i++)cout << "1 ";
		for(int i = r[0] + 1 ; i <= n ; i++)cout << 2 << " \n"[i == n];
		for(int i = 1 ; i <= n ; i++)cout << 1 << " \n"[i == n];
		for(int i = 1 ; i <= n ; i++)cout << p[i] << " \n"[i == n];
	}
	return 0;
}
2024/1/29 10:10
加载中...