#include <bits/stdc++.h>
using namespace std;
int q;
int n,m;
int const MAX=5005;
bool edge[MAX][MAX];
void solve(){
int limit;
if(n&1)
limit=(n-1)*(n-1)/4;
else
limit=n*(n-2)/4;
if(m>limit){
cout<<"No\n";
return;
}
int i,j;
for(i=2;i<=n;++i)
for(j=1;j<i;++j)
edge[i][j]=1;
for(i=1;n-2*i>0;++i)
if(m>=n-2*i){
m-=n-2*i;
edge[n-i+1][i]=0;
}
cout<<"Yes\n";
for(i=2;i<=n;++i){
for(j=1;j<i;++j)
cout<<edge[i][j];
cout<<'\n';
}
}
int main()
{
cin>>q;
while(q--){
cin>>n>>m;
solve();
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |