Submission #1185036

#TimeUsernameProblemLanguageResultExecution timeMemory
1185036PieArmyNice sequence (IZhO18_sequence)C++20
6 / 100
1 ms328 KiB
#include<bits/stdc++.h>
typedef long long ll;
#define pb push_back
#define fr first
#define sc second
using namespace std;

int main(){
	ios_base::sync_with_stdio(false);cin.tie(NULL);
	int t;cin>>t;
	while(t--){
		int n,m;cin>>n>>m;
		int k=1;
		if(m<n){
			k=-1;
			swap(n,m);
		}
		if(m%n==0){
			cout<<m-1<<endl;
			for(int i=1;i<m;i++){
				cout<<-k<<" ";
			}
			cout<<endl;
			continue;
		}
		if(k==-1){
			swap(n,m);
		}
		vector<int>ans;
		function<void(int,int)>f=[&](int a,int b)->void{
			if(a>b){
				if(b==0)return;
				f(a%b,b);
				for(int i=b;i<a;i+=b){
					int s=ans.size();
					for(int i=0;i<b-s;i++){
						ans.pb(1);
					}
					for(int i=min(b,s);i>=1;i--){
						ans.pb(ans[s-i]);
					}
				}
			}
			else{
				if(a==0)return;
				f(a,b%a);
				for(int i=a;i<b;i+=a){
					int s=ans.size();
					for(int i=0;i<a-s;i++){
						ans.pb(-1);
					}
					for(int i=min(a,s);i>=1;i--){
						ans.pb(ans[s-i]);
					}
				}
			}
			/*cout<<a<<" "<<b<<endl;
			for(int x:ans)
				cout<<x<<" ";
			cout<<endl;*/
		};
		f(n,m);
		int cnt=0,x,y;
		for(int i=0;i<n;i++){
			if(ans[i]==-1)cnt++;
		}
		x=1e4/cnt;
		y=(x*cnt)/(n-cnt)-1;
		x*=-1;
		cout<<ans.size()<<endl;
		for(int X:ans){
			if(X<0)cout<<x<<" ";
			else cout<<y<<" ";
		}
		cout<<endl;
	}
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...