Task: | Gold |
Sender: | Random |
Submission time: | 2017-09-12 17:04:13 +0300 |
Language: | C++ |
Status: | READY |
Result: | ACCEPTED |
test | verdict | time | |
---|---|---|---|
#1 | ACCEPTED | 0.04 s | details |
#2 | ACCEPTED | 0.04 s | details |
#3 | ACCEPTED | 0.04 s | details |
#4 | ACCEPTED | 0.03 s | details |
#5 | ACCEPTED | 0.04 s | details |
#6 | ACCEPTED | 0.04 s | details |
#7 | ACCEPTED | 0.05 s | details |
#8 | ACCEPTED | 0.03 s | details |
#9 | ACCEPTED | 0.05 s | details |
#10 | ACCEPTED | 0.03 s | details |
#11 | ACCEPTED | 0.03 s | details |
#12 | ACCEPTED | 0.04 s | details |
#13 | ACCEPTED | 0.04 s | details |
#14 | ACCEPTED | 0.05 s | details |
#15 | ACCEPTED | 0.05 s | details |
#16 | ACCEPTED | 0.04 s | details |
#17 | ACCEPTED | 0.04 s | details |
#18 | ACCEPTED | 0.03 s | details |
#19 | ACCEPTED | 0.05 s | details |
#20 | ACCEPTED | 0.05 s | details |
#21 | ACCEPTED | 0.05 s | details |
#22 | ACCEPTED | 0.05 s | details |
#23 | ACCEPTED | 0.04 s | details |
#24 | ACCEPTED | 0.03 s | details |
Compiler report
input/code.cpp: In function 'int main()': input/code.cpp:15:25: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d %d\n",&w,&h); ^ input/code.cpp:18:21: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%s",m[i]); ^ input/code.cpp:21:27: warning: 'y' may be used uninitialized in this function [-Wmaybe-uninitialized] printf("%d\n",flood(x,y)); ^ input/code.cpp:21:27: warning: 'x' may be used uninitialized in this function [-Wmaybe-uninitialized]
Code
#include <stdio.h> char m[51][51]; int v[51][51]; int flood(int x,int y){ if(v[y][x])return 0; if(m[y][x]=='#')return 0; v[y][x]=1; int r = 0; if(m[y][x]=='G')++r; if(m[y+1][x] == 'T' || m[y-1][x] == 'T' || m[y][x+1] == 'T' || m[y][x-1] == 'T') return r; return r+flood(x,y+1)+flood(x,y-1)+flood(x+1,y)+flood(x-1,y); } int main(){ int w,h; scanf("%d %d\n",&w,&h); int x,y; for(int i=0;i<h;++i){ scanf("%s",m[i]); for(int j=0;j<w;++j)if(m[i][j]=='P')x=j,y=i; } printf("%d\n",flood(x,y)); return 0; }
Test details
Test 1
Verdict: ACCEPTED
input |
---|
8 6 ######## #...GTG# #..PG.G# #...G#G# ... |
correct output |
---|
4 |
user output |
---|
4 |
Test 2
Verdict: ACCEPTED
input |
---|
7 4 ####### #P.GTG# #..TGG# ####### |
correct output |
---|
1 |
user output |
---|
1 |
Test 3
Verdict: ACCEPTED
input |
---|
50 50 ##############################... |
correct output |
---|
2303 |
user output |
---|
2303 |
Test 4
Verdict: ACCEPTED
input |
---|
50 50 ##############################... |
correct output |
---|
1 |
user output |
---|
1 |
Test 5
Verdict: ACCEPTED
input |
---|
50 50 ##############################... |
correct output |
---|
0 |
user output |
---|
0 |
Test 6
Verdict: ACCEPTED
input |
---|
50 50 ##############################... |
correct output |
---|
2 |
user output |
---|
2 |
Test 7
Verdict: ACCEPTED
input |
---|
50 50 ##############################... |
correct output |
---|
1196 |
user output |
---|
1196 |
Test 8
Verdict: ACCEPTED
input |
---|
50 50 ##############################... |
correct output |
---|
1 |
user output |
---|
1 |
Test 9
Verdict: ACCEPTED
input |
---|
50 50 ##############################... |
correct output |
---|
0 |
user output |
---|
0 |
Test 10
Verdict: ACCEPTED
input |
---|
50 50 ##############################... |
correct output |
---|
130 |
user output |
---|
130 |
Test 11
Verdict: ACCEPTED
input |
---|
50 50 ##############################... |
correct output |
---|
0 |
user output |
---|
0 |
Test 12
Verdict: ACCEPTED
input |
---|
3 3 ### #P# ### |
correct output |
---|
0 |
user output |
---|
0 |
Test 13
Verdict: ACCEPTED
input |
---|
3 50 ### #G# #T# #G# ... |
correct output |
---|
45 |
user output |
---|
45 |
Test 14
Verdict: ACCEPTED
input |
---|
50 3 ##############################... |
correct output |
---|
45 |
user output |
---|
45 |
Test 15
Verdict: ACCEPTED
input |
---|
5 4 ##### #TGG# #G#P# ##### |
correct output |
---|
2 |
user output |
---|
2 |
Test 16
Verdict: ACCEPTED
input |
---|
37 20 ##############################... |
correct output |
---|
0 |
user output |
---|
0 |
Test 17
Verdict: ACCEPTED
input |
---|
16 37 ################ #.G.G.G#GG.G.#G# ##....G...#G..## #G...#.#GG.....# ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 18
Verdict: ACCEPTED
input |
---|
17 42 ################# ##G...#.....##..# #G..........G.### #.G..##G.G.G...G# ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 19
Verdict: ACCEPTED
input |
---|
42 24 ##############################... |
correct output |
---|
133 |
user output |
---|
133 |
Test 20
Verdict: ACCEPTED
input |
---|
32 35 ##############################... |
correct output |
---|
736 |
user output |
---|
736 |
Test 21
Verdict: ACCEPTED
input |
---|
21 43 ##################### #G.##G#GGGGG#G#GG##G# #GG##GGT#GG###GG#GGG# #GGGTGG..G#G...TG##G# ... |
correct output |
---|
0 |
user output |
---|
0 |
Test 22
Verdict: ACCEPTED
input |
---|
47 14 ##############################... |
correct output |
---|
252 |
user output |
---|
252 |
Test 23
Verdict: ACCEPTED
input |
---|
18 21 ################## ##G.T#.GGG.G....## #G..T....GG.G#..G# #.#..#..#..TG#G.G# ... |
correct output |
---|
97 |
user output |
---|
97 |
Test 24
Verdict: ACCEPTED
input |
---|
32 16 ##############################... |
correct output |
---|
69 |
user output |
---|
69 |