| Task: | Maalaus |
| Sender: | sumlen |
| Submission time: | 2025-11-07 21:48:01 +0200 |
| Language: | C++ (C++11) |
| Status: | READY |
| Result: | 0 |
| group | verdict | score |
|---|---|---|
| #1 | WRONG ANSWER | 0 |
| #2 | RUNTIME ERROR | 0 |
| #3 | WRONG ANSWER | 0 |
| #4 | WRONG ANSWER | 0 |
| test | verdict | time | group | |
|---|---|---|---|---|
| #1 | WRONG ANSWER | 0.00 s | 1, 3, 4 | details |
| #2 | TIME LIMIT EXCEEDED | -- | 3, 4 | details |
| #3 | WRONG ANSWER | 0.00 s | 1, 3, 4 | details |
| #4 | RUNTIME ERROR | 0.02 s | 2, 4 | details |
| #5 | RUNTIME ERROR | 0.02 s | 2, 4 | details |
| #6 | TIME LIMIT EXCEEDED | -- | 3, 4 | details |
| #7 | TIME LIMIT EXCEEDED | -- | 3, 4 | details |
| #8 | RUNTIME ERROR | 0.02 s | 4 | details |
| #9 | RUNTIME ERROR | 0.02 s | 4 | details |
| #10 | WRONG ANSWER | 0.00 s | 1, 3, 4 | details |
| #11 | WRONG ANSWER | 0.00 s | 1, 3, 4 | details |
| #12 | RUNTIME ERROR | 0.02 s | 2, 4 | details |
| #13 | RUNTIME ERROR | 0.00 s | 2, 4 | details |
| #14 | RUNTIME ERROR | 0.02 s | 4 | details |
| #15 | RUNTIME ERROR | 0.02 s | 4 | details |
| #16 | RUNTIME ERROR | 0.02 s | 4 | details |
| #17 | RUNTIME ERROR | 0.02 s | 4 | details |
Code
#include <bits/stdc++.h>
using namespace std;
int n,m,t,sx,sy,ex,ey,f=1,e=0;
char ma[255][255];
bool used[255][255],flag;
int dx[4] = {-1, 1, 0, 0};
int dy[4] = {0, 0, -1, 1};
struct point{
int x,y,step=0;
}q[10005],s;
int main() {
cin>>n>>m>>t;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>ma[i][j];
while(t--){
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
used[i][j]=0;
f=1,e=0,flag=0;
cin>>sx>>sy>>ex>>ey;
if(sx==ex&&sy==ey){
cout<<0<<endl;
continue;
}
if(sx==ex||sy==ey){
cout<<1<<endl;
continue;
}
s.x=sx,s.y=sy;
q[++e]=s;
while(f<=e&&flag==0){
point u=q[f++];
for(int i=0;i<4&&flag==0;i++){
point v=u;
while(v.x>=1&&v.x<=n&&v.y>=1&&v.y<=m){
v.x+=dx[i],v.y+=dy[i],v.step=u.step+1;
if(!(v.x>=1&&v.x<=n&&v.y>=1&&v.y<=m))break;
if(ma[v.x][v.y]=='*')continue;
if(used[v.x][v.y])continue;
used[v.x][v.y]=1;
if(v.x==ex&&v.y==ey){
flag=1;
cout<<v.step<<endl;
break;
}
if(v.x==ex||v.y==ey){
flag=1;
cout<<v.step+1<<endl;
break;
}
q[++e]=v;
// cout<<"form point "<<u.x<<' '<<u.y<<" to point "<<v.x<<' '<<v.y<<" step is "<<v.step<<endl;
}
}
}
if(flag==0)cout<<-1<<endl;
}
return 0;
}
Test details
Test 1 (public)
Group: 1, 3, 4
Verdict: WRONG ANSWER
| input |
|---|
| 3 4 4 4 R 1 1 C 3 4 R 2 2 R 1 1 |
| correct output |
|---|
| 4 4 0 1 |
| user output |
|---|
| 1 1 1 1 |
Feedback: Incorrect character on line 1 col 1: expected "4", got "1"
Test 2 (public)
Group: 3, 4
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 1000000000 1000000000 5 10 C 70724881 4 C 290904744 1 C 569311326 5 R 896293092 1 ... |
| correct output |
|---|
| 3999999991 1999999998 19999999... |
| user output |
|---|
| (empty) |
Test 3
Group: 1, 3, 4
Verdict: WRONG ANSWER
| input |
|---|
| 10 10 10 10 R 10 8 C 1 2 R 10 2 R 1 4 ... |
| correct output |
|---|
| 0 13 0 8 7 20 0 0 10 7 |
| user output |
|---|
| 0 0 0 0 0 ... |
Feedback: Incorrect character on line 2 col 1: expected "13", got "0"
Test 4
Group: 2, 4
Verdict: RUNTIME ERROR
| input |
|---|
| 1000000000 1000000000 1 200000 R 185082082 1 C 549662476 1 R 484749097 1 R 330334821 1 ... |
| correct output |
|---|
| 199984000629575 |
| user output |
|---|
| (empty) |
Test 5
Group: 2, 4
Verdict: RUNTIME ERROR
| input |
|---|
| 1000000000 1000000000 1 200000 C 354072394 1 C 221236382 1 C 63527838 1 C 538599654 1 ... |
| correct output |
|---|
| 126261014543986 |
| user output |
|---|
| (empty) |
Test 6
Group: 3, 4
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 1000000000 1000000000 2000 200... |
| correct output |
|---|
| 999999400 2999997760 999999118... |
| user output |
|---|
| (empty) |
Test 7
Group: 3, 4
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 1000000000 1000000000 2000 200... |
| correct output |
|---|
| 999999481 0 999999445 0 0 0 0 ... |
| user output |
|---|
| (empty) |
Test 8
Group: 4
Verdict: RUNTIME ERROR
| input |
|---|
| 1000000000 1000000000 200000 2... |
| correct output |
|---|
| 0 0 999997829 0 1999872519 199... |
| user output |
|---|
| (empty) |
Test 9
Group: 4
Verdict: RUNTIME ERROR
| input |
|---|
| 1000000000 1000000000 200000 2... |
| correct output |
|---|
| 999986843 0 0 999966411 999971... |
| user output |
|---|
| (empty) |
Test 10
Group: 1, 3, 4
Verdict: WRONG ANSWER
| input |
|---|
| 1 10 10 10 C 1 10 R 1 4 C 9 3 R 1 7 ... |
| correct output |
|---|
| 1 0 0 0 0 0 0 9 0 0 |
| user output |
|---|
| -1 -1 -1 -1 -1 ... |
Feedback: Incorrect character on line 1 col 1: expected "1", got "-1"
Test 11
Group: 1, 3, 4
Verdict: WRONG ANSWER
| input |
|---|
| 10 1 10 10 R 4 6 R 5 1 R 4 2 R 3 9 ... |
| correct output |
|---|
| 0 0 0 0 0 0 0 10 0 0 |
| user output |
|---|
| 1 1 1 1 1 ... |
Feedback: Incorrect character on line 1 col 1: expected "0", got "1"
Test 12
Group: 2, 4
Verdict: RUNTIME ERROR
| input |
|---|
| 1 1000000000 1 200000 C 298761159 1 R 1 1 C 831911362 1 C 25171734 1 ... |
| correct output |
|---|
| 1000000000 |
| user output |
|---|
| (empty) |
Test 13
Group: 2, 4
Verdict: RUNTIME ERROR
| input |
|---|
| 1000000000 1 1 200000 R 68306849 1 C 1 1 C 1 1 R 485427101 1 ... |
| correct output |
|---|
| 1000000000 |
| user output |
|---|
| (empty) |
Test 14
Group: 4
Verdict: RUNTIME ERROR
| input |
|---|
| 1000000000 1000000000 100 2000... |
| correct output |
|---|
| 2003899199298 2016897879262 20... |
| user output |
|---|
| (empty) |
Test 15
Group: 4
Verdict: RUNTIME ERROR
| input |
|---|
| 1000000000 1000000000 100 2000... |
| correct output |
|---|
| 1267960483393 1326958437362 12... |
| user output |
|---|
| (empty) |
Test 16
Group: 4
Verdict: RUNTIME ERROR
| input |
|---|
| 1000000000 1000000000 10000 20... |
| correct output |
|---|
| 26998778013 13999380552 239989... |
| user output |
|---|
| (empty) |
Test 17
Group: 4
Verdict: RUNTIME ERROR
| input |
|---|
| 1000000000 1000000000 10000 20... |
| correct output |
|---|
| 7999699356 8999760379 12999665... |
| user output |
|---|
| (empty) |
