Submission #00001
ソースコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | #include<bits/stdc++.h> #define F first #define S second #define INF (1<<30) using namespace std; typedef pair< int , int > P; typedef pair<string, int > SP; int cnt=0; char maps[100][100]; int w,h; int dx[4]={1,0,-1,0}; int dy[4]={0,1,0,-1}; void dfs( int x, int y); int sx,sy; main(){ int n; while (cin>>w>>h,w||h){ cnt=0; for ( int i=0;i<h;i++){ for ( int j=0;j<w;j++){ cin>>maps[i][j]; if (maps[i][j]== 'S' ){ sx=j; sy=i; } } } maps[sy][sx]= '@' ; dfs(sx,sy); int kohun=0; for ( int i=1;i<=cnt;i++){ kohun+=i*2; } cout<<cnt<<endl<<kohun<<endl; } } void dfs( int x, int y){ cnt++; for ( int i=0;i<4;i++){ int nx=x+dx[i]; int ny=y+dy[i]; if (nx>=0&&nx<w&&ny>=0&&ny<h&&maps[ny][nx]== '.' ){ maps[ny][nx]= '@' ; dfs(nx,ny); } } return ; } |
ステータス
項目 | データ |
---|---|
問題 | 0001 - もりたのクッキー☆kiss |
ユーザー名 | ei1417 |
投稿日時 | 2015-09-16 16:40:13 |
言語 | C++11 |
状態 | Accepted |
得点 | 100 |
ソースコード長 | 862 Byte |
最大実行時間 | 20 ms |
最大メモリ使用量 | 476 KB |
セット
セット | 得点 | Cases | |
---|---|---|---|
1 | ALL | 100 / 100 | * |
テストケース
ファイル名 | 状態 | 実行時間 | メモリ使用量 | # |
---|---|---|---|---|
DFS_in1.txt | AC | 15 ms | 476 KB |
1
|
DFS_in2.txt | AC | 20 ms | 452 KB |
1
|
DFS_in3.txt | AC | 15 ms | 432 KB |
1
|