分析:
- 观察
x
2
,
(
x
+
1
)
2
,
(
x
+
2
)
2
,
(
x
+
3
)
2
x^2,(x+1)^2,(x+2)^2,(x+3)^2
x2,(x+1)2,(x+2)2,(x+3)2 , 发现:
x
2
−
(
x
+
1
)
2
−
(
x
+
2
)
2
+
(
x
+
3
)
2
=
4
x^2-(x+1)^2-(x+2)^2+(x+3)^2=4
x2−(x+1)2−(x+2)2+(x+3)2=4 ,即
1001
1001
1001
- 然后就是分类讨论了,
m
o
=
n
%
4
mo=n\%4
mo=n%4 ,
m
o
mo
mo 有四个值,分四种情况讨论
赛时记录:
- 比赛时并没有推出规律来,主要是太浮躁了,队友打了
1
到
10
1到10
1到10 的表才发现规律所在
- 下次碰到这种题,一定要静下心来打表~~~
#include <bits/stdc++.h>
using namespace std;
inline void solve()
{
int n;
cin>>n;
int mo=n%4;
if(mo==0) cout<<n<<endl;
else if(mo==1) cout<<n<<"\n1";
else if(mo==2) cout<<n+2<<"\n0001";
else if(mo==3) cout<<n-1<<"\n01";
for(int i=1;i*4<=n;i++) cout<<"1001";
cout<<endl;
}
signed main()
{
ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
int T;
cin>>T;
while(T--) solve();
return 0;
}