QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#97675#6319. Parallel Processing (Easy)whatever#WA 2ms3344kbC++142.0kb2023-04-17 21:16:482023-04-17 21:16:51

Judging History

你现在查看的是最新测评结果

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-04-17 21:16:51]
  • 评测
  • 测评结果:WA
  • 用时:2ms
  • 内存:3344kb
  • [2023-04-17 21:16:48]
  • 提交

answer

#include <bits/stdc++.h>
#define int long long
#define mod 998244353
using namespace std;
vector<vector<vector<int> > > ans;
bitset<2005> s[2005];
void op(vector<vector<int> > v)
{
	bitset<2005> A,B,C,D;
	A=(s[v[0][1]]^s[v[0][2]]);
	B=(s[v[1][1]]^s[v[1][2]]);
	C=(s[v[2][1]]^s[v[2][2]]);
	D=(s[v[3][1]]^s[v[3][2]]);
	s[v[0][0]]=A;
	s[v[1][0]]=B;
	s[v[2][0]]=C;
	s[v[3][0]]=D;
	ans.push_back(v);
}
signed main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);
	int n;
	cin >> n;
	for(int i=1;i<=n;i++) s[i][i]=1;
	if(n<=2)
	{
		op({{2,1,2},{2001,2001,2001},{2001,2001,2001},{2001,2001,2001}});
	}
	else if(n<=4)
	{
		op({{2,1,2},{4,3,4},{2001,2001,2001},{2001,2001,2001}});
		op({{3,2,3},{4,2,4},{2001,2001,2001},{2001,2001,2001}});
	}
	else if(n<=8)
	{
		op({{2,1,2},{4,3,4},{6,5,6},{8,7,8}});
		op({{3,2,3},{4,2,4},{7,6,7},{8,6,8}});
		op({{5,4,5},{6,4,6},{7,4,7},{8,4,8}});
	}
	else if(n<=11)
	{
		op({{2,1,2},{4,3,4},{6,5,6},{8,7,8}});
		op({{3,2,3},{4,2,4},{8,6,8},{10,9,10}});
		op({{5,4,5},{6,4,6},{8,4,8},{11,10,11}});
		op({{7,6,7},{9,8,9},{10,8,10},{11,8,11}});
	}
	else if(n<=13)
	{
		op({{2,1,2},{4,3,4},{6,5,6},{8,7,8}});
		op({{3,2,3},{4,2,4},{8,6,8},{10,9,10}});
		op({{5,4,5},{6,4,6},{8,4,8},{11,10,11}});
		op({{7,6,7},{13,12,13},{10,8,10},{11,8,11}});
		op({{12,11,12},{9,8,9},{13,11,13},{2001,2001,2001}});
	}
	else if(n<=16)
	{
		op({{2,1,2},{4,3,4},{6,5,6},{8,7,8}});
		op({{4,2,4},{8,6,8},{12,11,12},{10,9,10}});
		op({{6,4,6},{8,4,8},{14,13,14},{16,15,16}});
		op({{3,2,3},{5,4,5},{10,8,10},{14,12,14}});
		op({{7,6,7},{9,8,9},{12,10,12},{14,10,14}});
		op({{11,10,11},{13,12,13},{15,14,15},{16,14,16}});
	}
	cout << ans.size() << "\n";
	for(auto t:ans)
	{
		for(auto y:t)
		{
			for(auto x:y) cout << x << " ";
			cout << "\n";
		}
	}
/*	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++)
		{
			cout << s[i][j];
		}
		cout << "\n";
	}*/
	return 0;
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++)
		{
			assert(s[i][j]==(j<=i));
		}
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 0
Wrong Answer
time: 2ms
memory: 3344kb

input:

2

output:

1
2 1 2 
2001 2001 2001 
2001 2001 2001 
2001 2001 2001 

result:

wrong answer Integer 2001 violates the range [1, 2000]