#include <bits/stdc++.h>
using namespace std;
#define ms(s,n) memset(s,n,sizeof(s))
#define all(a) a.begin(),a.end()
#define present(t, x) (t.find(x) != t.end())
#define sz(a) int((a).size())
#define FOR(i, a, b) for (int i = (a); i < (b); ++i)
#define FORd(i, a, b) for (int i = (a) - 1; i >= (b); --i)
#define pb push_back
#define pf push_front
#define fi first
#define se second
#define mp make_pair
#define endl "\n"
typedef long long ll;
typedef unsigned long long ull;
typedef long double ld;
typedef pair<int,int> pi;
typedef vector<int> vi;
typedef vector<pi> vii;
const int MOD = (int) 1e9+7;
const int INF = (int) 1e9+1;
inline ll gcd(ll a,ll b){ll r;while(b){r=a%b;a=b;b=r;}return a;}
inline ll lcm(ll a,ll b){return a/gcd(a,b)*b;}
int a[1001][1001];
int n, m, x11, y11, x2, y2;
int cnt[1001][1001];
int dx[4] ={-1, 0, 1, 0};
int dy[4] ={0, -1, 0, 1};
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
int t; cin >> t;
while(t--){
cin >> n >> m >> x11 >> y11 >> x2 >> y2;
FOR(i, 0, n){
FOR(j, 0, m) cin >> a[i][j];
}
ms(cnt, 0);
if(a[x11][y11] && a[x2][y2]){
int i = x11, j = y11;
a[i][j] = 0;
queue<pair<int,int>> q;
q.push({i, j});
while(!q.empty()){
pair<int,int> top = q.front(); q.pop();
int i = top.fi, j = top.se;
for(int k = 0; k < 4; k++){
int i1 = i +dx[k];
int j1 = j +dy[k];
if(a[i1][j1] && i1 >=0 && i1 < n && j1 >=0 && j1 < m ){
q.push({i1, j1});
a[i1][j1] = 0;
cnt[i1][j1] = cnt[i][j]+1;
if(i1 == x2 && j1 == y2) goto nhan;
}
}
}
}
nhan:
if(cnt[x2][y2]){
cout << cnt[x2][y2] << endl;
}
else cout << "-1\n";
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIG1zKHMsbikgbWVtc2V0KHMsbixzaXplb2YocykpCiNkZWZpbmUgYWxsKGEpIGEuYmVnaW4oKSxhLmVuZCgpCiNkZWZpbmUgcHJlc2VudCh0LCB4KSAodC5maW5kKHgpICE9IHQuZW5kKCkpCiNkZWZpbmUgc3ooYSkgaW50KChhKS5zaXplKCkpCiNkZWZpbmUgRk9SKGksIGEsIGIpIGZvciAoaW50IGkgPSAoYSk7IGkgPCAoYik7ICsraSkKI2RlZmluZSBGT1JkKGksIGEsIGIpIGZvciAoaW50IGkgPSAoYSkgLSAxOyBpID49IChiKTsgLS1pKQojZGVmaW5lIHBiIHB1c2hfYmFjawojZGVmaW5lIHBmIHB1c2hfZnJvbnQKI2RlZmluZSBmaSBmaXJzdAojZGVmaW5lIHNlIHNlY29uZAojZGVmaW5lIG1wIG1ha2VfcGFpcgojZGVmaW5lIGVuZGwgIlxuIgoKdHlwZWRlZiBsb25nIGxvbmcgbGw7CnR5cGVkZWYgdW5zaWduZWQgbG9uZyBsb25nIHVsbDsKdHlwZWRlZiBsb25nIGRvdWJsZSBsZDsKdHlwZWRlZiBwYWlyPGludCxpbnQ+IHBpOwp0eXBlZGVmIHZlY3RvcjxpbnQ+IHZpOwp0eXBlZGVmIHZlY3RvcjxwaT4gdmlpOwoKY29uc3QgaW50IE1PRCA9IChpbnQpIDFlOSs3Owpjb25zdCBpbnQgSU5GID0gKGludCkgMWU5KzE7CmlubGluZSBsbCBnY2QobGwgYSxsbCBiKXtsbCByO3doaWxlKGIpe3I9YSViO2E9YjtiPXI7fXJldHVybiBhO30KaW5saW5lIGxsIGxjbShsbCBhLGxsIGIpe3JldHVybiBhL2djZChhLGIpKmI7fQoKaW50IGFbMTAwMV1bMTAwMV07CmludCBuLCBtLCB4MTEsIHkxMSwgeDIsIHkyOwppbnQgY250WzEwMDFdWzEwMDFdOwppbnQgZHhbNF0gPXstMSwgMCwgMSwgMH07CmludCBkeVs0XSA9ezAsIC0xLCAwLCAxfTsKCgppbnQgbWFpbigpewoJaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwoJY2luLnRpZShudWxscHRyKTsKCWludCB0OyBjaW4gPj4gdDsKCXdoaWxlKHQtLSl7CgkJY2luID4+IG4gPj4gbSA+PiB4MTEgPj4geTExID4+IHgyID4+IHkyOwoJCUZPUihpLCAwLCBuKXsKCQkJRk9SKGosIDAsIG0pIGNpbiA+PiBhW2ldW2pdOwoJCX0KCQltcyhjbnQsIDApOwoJCWlmKGFbeDExXVt5MTFdICYmIGFbeDJdW3kyXSl7CgkJCWludCBpID0geDExLCBqID0geTExOwoJCQlhW2ldW2pdID0gMDsKCQkJcXVldWU8cGFpcjxpbnQsaW50Pj4gcTsKCQkJcS5wdXNoKHtpLCBqfSk7CgkJCXdoaWxlKCFxLmVtcHR5KCkpewoJCQkJcGFpcjxpbnQsaW50PiB0b3AgPSBxLmZyb250KCk7IHEucG9wKCk7CgkJCQlpbnQgaSA9IHRvcC5maSwgaiA9IHRvcC5zZTsKCQkJCWZvcihpbnQgayA9IDA7IGsgPCA0OyBrKyspewoJCQkJCWludCBpMSA9IGkgK2R4W2tdOwoJCQkJCWludCBqMSA9IGogK2R5W2tdOwoJCQkJCWlmKGFbaTFdW2oxXSAmJiBpMSA+PTAgJiYgaTEgPCBuICYmIGoxID49MCAmJiBqMSA8IG0gKXsKCQkJCQkJcS5wdXNoKHtpMSwgajF9KTsKCQkJCQkJYVtpMV1bajFdID0gMDsKCQkJCQkJY250W2kxXVtqMV0gPSBjbnRbaV1bal0rMTsKCQkJCQkJaWYoaTEgPT0geDIgJiYgajEgPT0geTIpIGdvdG8gbmhhbjsKCQkJCQl9CgkJCQl9CgkJCX0KCQl9CgkJbmhhbjoKCQlpZihjbnRbeDJdW3kyXSl7CgkJCWNvdXQgPDwgY250W3gyXVt5Ml0gPDwgZW5kbDsKCQl9CgkJZWxzZSBjb3V0IDw8ICItMVxuIjsKCX0KCXJldHVybiAwOwp9
Main.java:1: error: illegal character: '#'
#include <bits/stdc++.h>
^
Main.java:1: error: class, interface, or enum expected
#include <bits/stdc++.h>
^
Main.java:4: error: illegal character: '#'
#define ms(s,n) memset(s,n,sizeof(s))
^
Main.java:4: error: class, interface, or enum expected
#define ms(s,n) memset(s,n,sizeof(s))
^
Main.java:5: error: illegal character: '#'
#define all(a) a.begin(),a.end()
^
Main.java:6: error: illegal character: '#'
#define present(t, x) (t.find(x) != t.end())
^
Main.java:7: error: illegal character: '#'
#define sz(a) int((a).size())
^
Main.java:8: error: illegal character: '#'
#define FOR(i, a, b) for (int i = (a); i < (b); ++i)
^
Main.java:8: error: class, interface, or enum expected
#define FOR(i, a, b) for (int i = (a); i < (b); ++i)
^
Main.java:8: error: class, interface, or enum expected
#define FOR(i, a, b) for (int i = (a); i < (b); ++i)
^
Main.java:9: error: illegal character: '#'
#define FORd(i, a, b) for (int i = (a) - 1; i >= (b); --i)
^
Main.java:9: error: class, interface, or enum expected
#define FORd(i, a, b) for (int i = (a) - 1; i >= (b); --i)
^
Main.java:9: error: class, interface, or enum expected
#define FORd(i, a, b) for (int i = (a) - 1; i >= (b); --i)
^
Main.java:10: error: illegal character: '#'
#define pb push_back
^
Main.java:11: error: illegal character: '#'
#define pf push_front
^
Main.java:12: error: illegal character: '#'
#define fi first
^
Main.java:13: error: illegal character: '#'
#define se second
^
Main.java:14: error: illegal character: '#'
#define mp make_pair
^
Main.java:15: error: illegal character: '#'
#define endl "\n"
^
Main.java:18: error: class, interface, or enum expected
typedef unsigned long long ull;
^
Main.java:19: error: class, interface, or enum expected
typedef long double ld;
^
Main.java:20: error: class, interface, or enum expected
typedef pair<int,int> pi;
^
Main.java:21: error: class, interface, or enum expected
typedef vector<int> vi;
^
Main.java:22: error: class, interface, or enum expected
typedef vector<pi> vii;
^
Main.java:24: error: class, interface, or enum expected
const int MOD = (int) 1e9+7;
^
Main.java:25: error: class, interface, or enum expected
const int INF = (int) 1e9+1;
^
Main.java:26: error: class, interface, or enum expected
inline ll gcd(ll a,ll b){ll r;while(b){r=a%b;a=b;b=r;}return a;}
^
Main.java:26: error: class, interface, or enum expected
inline ll gcd(ll a,ll b){ll r;while(b){r=a%b;a=b;b=r;}return a;}
^
Main.java:26: error: class, interface, or enum expected
inline ll gcd(ll a,ll b){ll r;while(b){r=a%b;a=b;b=r;}return a;}
^
Main.java:26: error: class, interface, or enum expected
inline ll gcd(ll a,ll b){ll r;while(b){r=a%b;a=b;b=r;}return a;}
^
Main.java:26: error: class, interface, or enum expected
inline ll gcd(ll a,ll b){ll r;while(b){r=a%b;a=b;b=r;}return a;}
^
Main.java:26: error: class, interface, or enum expected
inline ll gcd(ll a,ll b){ll r;while(b){r=a%b;a=b;b=r;}return a;}
^
Main.java:27: error: class, interface, or enum expected
inline ll lcm(ll a,ll b){return a/gcd(a,b)*b;}
^
Main.java:30: error: class, interface, or enum expected
int n, m, x11, y11, x2, y2;
^
Main.java:31: error: class, interface, or enum expected
int cnt[1001][1001];
^
Main.java:32: error: class, interface, or enum expected
int dx[4] ={-1, 0, 1, 0};
^
Main.java:33: error: class, interface, or enum expected
int dy[4] ={0, -1, 0, 1};
^
Main.java:36: error: class, interface, or enum expected
int main(){
^
Main.java:38: error: class, interface, or enum expected
cin.tie(nullptr);
^
Main.java:39: error: class, interface, or enum expected
int t; cin >> t;
^
Main.java:39: error: class, interface, or enum expected
int t; cin >> t;
^
Main.java:40: error: class, interface, or enum expected
while(t--){
^
Main.java:42: error: class, interface, or enum expected
FOR(i, 0, n){
^
Main.java:44: error: class, interface, or enum expected
}
^
Main.java:46: error: class, interface, or enum expected
if(a[x11][y11] && a[x2][y2]){
^
Main.java:48: error: class, interface, or enum expected
a[i][j] = 0;
^
Main.java:49: error: class, interface, or enum expected
queue<pair<int,int>> q;
^
Main.java:50: error: class, interface, or enum expected
q.push({i, j});
^
Main.java:51: error: class, interface, or enum expected
while(!q.empty()){
^
Main.java:52: error: class, interface, or enum expected
pair<int,int> top = q.front(); q.pop();
^
Main.java:53: error: class, interface, or enum expected
int i = top.fi, j = top.se;
^
Main.java:54: error: class, interface, or enum expected
for(int k = 0; k < 4; k++){
^
Main.java:54: error: class, interface, or enum expected
for(int k = 0; k < 4; k++){
^
Main.java:54: error: class, interface, or enum expected
for(int k = 0; k < 4; k++){
^
Main.java:56: error: class, interface, or enum expected
int j1 = j +dy[k];
^
Main.java:57: error: class, interface, or enum expected
if(a[i1][j1] && i1 >=0 && i1 < n && j1 >=0 && j1 < m ){
^
Main.java:59: error: class, interface, or enum expected
a[i1][j1] = 0;
^
Main.java:60: error: class, interface, or enum expected
cnt[i1][j1] = cnt[i][j]+1;
^
Main.java:61: error: class, interface, or enum expected
if(i1 == x2 && j1 == y2) goto nhan;
^
Main.java:62: error: class, interface, or enum expected
}
^
Main.java:69: error: class, interface, or enum expected
}
^
Main.java:71: error: class, interface, or enum expected
}
^
Main.java:73: error: class, interface, or enum expected
}
^
63 errors