#include <bits/stdc++.h>
using namespace std;
void run_case()
{
int n,m;
cin>>n>>m;
vector <string> matrix;
bool valid = true;
bool firstrow = false;
bool hadone = false;
for(int i = 0; i< n ;i++){
string s;
cin>>s;
matrix.push_back(s);
bool f1 = false;
if(valid == true){
if(firstrow == false){
for(int j = 0;j<m;j++){
if(s[j] == '1' && f1 == false){
f1 = true;
firstrow = true;
hadone = true;
}
else if(s[j] == '1' && f1 == true){
if(s[j-1] != '1') valid = false;
}
}
}
else{
for(int j = 0;j<m;j++){
if(s[j] == '1' && f1 == false){
f1 = true;
if(matrix[i-1][j] != '1') valid = false;
}
else if(s[j] == '1' && f1 == true){
if(s[j-1] != '1' || matrix[i-1][j] != '1') valid = false;
}
}
}
}
}
if(valid == false || hadone == false) cout<<0<<endl;
else cout<<1<<endl;
}
int main()
{
int t;
cin>>t;
while(t-->0){
run_case();
}
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Elfogadva | 3ms | 356 KiB | ||||
2 | Elfogadva | 2ms | 360 KiB | ||||
subtask2 | 0/50 | ||||||
3 | Hibás válasz | 8ms | 404 KiB | ||||
4 | Hibás válasz | 8ms | 300 KiB | ||||
5 | Hibás válasz | 10ms | 384 KiB | ||||
6 | Hibás válasz | 10ms | 356 KiB | ||||
7 | Hibás válasz | 4ms | 356 KiB | ||||
subtask3 | 0/50 | ||||||
8 | Hibás válasz | 7ms | 256 KiB | ||||
9 | Hibás válasz | 10ms | 484 KiB | ||||
10 | Hibás válasz | 28ms | 384 KiB | ||||
11 | Elfogadva | 54ms | 500 KiB | ||||
12 | Elfogadva | 59ms | 484 KiB | ||||
13 | Elfogadva | 32ms | 612 KiB | ||||
14 | Elfogadva | 43ms | 788 KiB | ||||
15 | Elfogadva | 75ms | 996 KiB | ||||
16 | Elfogadva | 46ms | 1060 KiB | ||||
17 | Hibás válasz | 4ms | 228 KiB |