A. Omkar and Completion
题目链接-A. Omkar and Completion
题目大意
所有元素都是正的并且不超过1000,并且对于所有索引
x
,
y
,
z
(
1
≤
x
,
y
,
z
≤
n
)
,
a
x
+
a
y
≠
a
z
x,y,z(1≤x,y,z≤n),ax+ay≠az
x,y,z(1≤x,y,z≤n),ax+ay=az(不一定是不同的),则长度为n的数组a称为完全数组,请你构造一个长度为
n
n
n的完全数组
解题思路
- 首先如果数组中的元素全是奇数,奇数+奇数=偶数,那么必定满足 a x + a y ≠ a z ax+ay≠az ax+ay=az
- 其次所有元素需要正的并且不超过1000,构造一个长度为 n n n,数组内元素全为 1 1 1的数组,即满足条件
- 具体操作见代码
附上代码
#pragma GCC optimize("-Ofast","-funroll-all-loops")
#include<bits/stdc++.h>
#define int long long
#define lowbit(x) (x &(-x))
#define endl '\n'
using namespace std;
const int INF=0x3f3f3f3f;
const int dir[4][2]={-1,0,1,0,0,-1,0,1};
const double PI=acos(-1.0);
const double e=exp(1.0);
const double eps=1e-10;
const int M=1e9+7;
const int N=2e5+10;
typedef long long ll;
typedef pair<int,int> PII;
typedef unsigned long long ull;
signed main(){
ios::sync_with_stdio(false);
cin.tie(0);cout.tie(0);
int t;
cin>>t;
while(t--){
int n;
cin>>n;
for(int i=1;i<=n;i++)
cout<<1<<" ";
cout<<endl;
}
return 0;
}