QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#614853#9439. Aim Highucup-team3519#AC ✓0ms3804kbC++201.9kb2024-10-05 17:02:502024-10-05 17:02:55

Judging History

This is the latest submission verdict.

  • [2024-10-05 17:02:55]
  • Judged
  • Verdict: AC
  • Time: 0ms
  • Memory: 3804kb
  • [2024-10-05 17:02:50]
  • Submitted

answer

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll mod=998244353;
ll qpow(ll a,ll b){
	if(b<0)return 0;
	if(b==0)return 1;
	ll ans=1;
	if(b%2)ans=a;
	ll t=qpow(a,b/2);
	return t*t%mod*ans%mod;
}
ll inv(ll a){
	return qpow(a,mod-2);
}

vector<vector<int>>ans;
// int mp[20][20];
// void init(){
// 	for(int i=-4;i<=4;i++){
// 		for(int j=0;j<=20;j++){
// 			mp[j][i+4]=1;
// 		}
// 	}
// }

void ins(vector<int>v){
	vector<int>c;
	if(v[2]==1)
	c={v[0],v[1],v[0]+1,v[1],v[0]+1,v[1]+1};
	else
	c={v[0]+1,v[1],v[0],v[1],v[0],v[1]+1};
	ans.push_back(c);
	// for(int i=0;i<c.size();i++){
	// 	mp[c[0]][c[1]+4]--;
	// 	mp[c[2]][c[3]+4]--;
	// 	mp[c[4]][c[5]+4]++;
	// // }
	// if(mp[c[0]][c[1]+4]<0){
	// 	cout<<"QAQ";
	// 	// cout<<c[0]<<' '<<c[1]<<'\n';
	// 	for(int i=0;i<=5;i++){
	// 		cout<<c[i]<<' ';
	// 	}
	// 	cout<<'\n';
	// 	exit(0);
	// }
	// assert(mp[c[0]+4][c[1]]>=0);
	// assert(mp[c[2]+4][c[3]]>=0);
}
void output(){
	cout<<ans.size()<<'\n';
	for(int i=0;i<ans.size();i++){
		for(int j=0;j<ans[i].size();j++){
			cout<<ans[i][j]<<' ';
		}
		cout<<'\n';
	}
}
void solve() {
	// init();
	ans.clear();
	int n;
	cin>>n;
	if(n>=5){
		cout<<"-1\n";
		return;
	}
	ins({1,-4,1});
	ins({6,-4,1});
	ins({1,-3,1});
	ins({2,-3,1});
	ins({4,-3,0});
	ins({6,-3,1});
	ins({7,-3,1});
	ins({9,-3,0});
	for(int i=1;i<=4;i++){
		ins({i,-2,1});
	}
	for(int i=6;i<=9;i++){
		ins({i,-2,0});
	}
	ins({2,-1,1});
	ins({2,-1,1});
	ins({4,-1,0});
	ins({4,-1,1});
	ins({6,-1,0});
	ins({6,-1,1});
	ins({8,-1,0});
	ins({8,-1,0});
	ins({2,0,1});
	ins({3,0,1});
	ins({3,0,1});
	ins({5,0,0});
	ins({5,0,1});
	ins({7,0,0});
	ins({7,0,0});
	ins({8,0,0});
	ins({3,1,1});
	ins({4,1,1});
	ins({6,1,0});
	ins({7,1,0});
	ins({4,2,1});
	ins({6,2,0});
	ins({5,3,0});
	output();
}

int main() {
	ios::sync_with_stdio(0),cin.tie(0);
	int t;
	cin>>t;
	while(t--)
	solve();
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3668kb

input:

1
1

output:

39
1 -4 2 -4 2 -3 
6 -4 7 -4 7 -3 
1 -3 2 -3 2 -2 
2 -3 3 -3 3 -2 
5 -3 4 -3 4 -2 
6 -3 7 -3 7 -2 
7 -3 8 -3 8 -2 
10 -3 9 -3 9 -2 
1 -2 2 -2 2 -1 
2 -2 3 -2 3 -1 
3 -2 4 -2 4 -1 
4 -2 5 -2 5 -1 
7 -2 6 -2 6 -1 
8 -2 7 -2 7 -1 
9 -2 8 -2 8 -1 
10 -2 9 -2 9 -1 
2 -1 3 -1 3 0 
2 -1 3 -1 3 0 
5 -1 4 -1...

result:

ok Output is valid. OK

Test #2:

score: 0
Accepted
time: 0ms
memory: 3804kb

input:

6
1
2
3
4
5
6

output:

39
1 -4 2 -4 2 -3 
6 -4 7 -4 7 -3 
1 -3 2 -3 2 -2 
2 -3 3 -3 3 -2 
5 -3 4 -3 4 -2 
6 -3 7 -3 7 -2 
7 -3 8 -3 8 -2 
10 -3 9 -3 9 -2 
1 -2 2 -2 2 -1 
2 -2 3 -2 3 -1 
3 -2 4 -2 4 -1 
4 -2 5 -2 5 -1 
7 -2 6 -2 6 -1 
8 -2 7 -2 7 -1 
9 -2 8 -2 8 -1 
10 -2 9 -2 9 -1 
2 -1 3 -1 3 0 
2 -1 3 -1 3 0 
5 -1 4 -1...

result:

ok Output is valid. OK

Extra Test:

score: 0
Extra Test Passed