Submission #2515422


Source Code Expand

#include <bits/stdc++.h>

using namespace std;

const int maxn = 50;
char mp[maxn][maxn];
int r,c,h,w,k;

void solve(int x,int y){
	//cout<<x<<" "<<y<<endl;
	if(k==1&&mp[x][y]=='.'){
		mp[x][y] = '#';
	}
	if(mp[x][y]=='*') k = 1;
	if(k==1&&x==r&&y==c) {
		return;
	}
	int dx = 0,dy = 0;
	if(x==0){
		if(y==w-1) dx = 1;
		else dy = 1;
	}
	if(x==h-1){
		if(y==0) dx = -1;
		else dy = -1;
	}
	if(x%4==1){
		if(y==0) dx = -1;
		else dx = 1;
	}
	if(x%4==2&&x!=h-1){
		if(y==0) dx = -1;
		if(y==w-1) dx = 1;
		if(y>0&&y<w-1) dy = -1;
	}
	if(x%4==3) {
		if(y==w-1) dx = 1;
		else dx = -1;
	}
    if(x%4==0&&x!=0&&x!=h-1){
    	if(y==w-1) dx = 1;
    	if(y==w-3) dx = -1;
		if(y<w-3) dy = 1;
	}
	solve(x+dx,y+dy);
}

int main()
{
  string s;
  while(cin>>h>>w){
  	for(int i=0;i<h;i++){
  		cin>>s;
  		for(int j=0;s[j]!=0;j++){
  			mp[i][j] = s[j];
  			if(s[j]=='@'){
  				r = i;c = j;
			  }
		}
	}
	k = 0;
    solve(r,c);
    for(int i=0;i<h;i++){
  		for(int j=0;j<w;j++){
  			cout<<mp[i][j];
		}
		cout<<endl;
	}
  }
  return 0;
}

Submission Info

Submission Time
Task F - RPG Maker
User cwlyzj
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1103 Byte
Status AC
Exec Time 1 ms
Memory 256 KB

Judge Result

Set Name All
Score / Max Score 100 / 100
Status
AC × 40
Set Name Test Cases
All 00_sample_00, 00_sample_01, 01_random_00, 01_random_01, 01_random_02, 01_random_03, 01_random_04, 01_random_05, 01_random_06, 01_random_07, 01_random_08, 01_random_09, 01_random_10, 01_random_11, 01_random_12, 01_random_13, 01_random_14, 01_random_15, 01_random_16, 01_random_17, 01_random_18, 01_random_19, 02_large_00, 02_large_01, 02_large_02, 02_large_03, 02_large_04, 02_large_05, 02_large_06, 02_large_07, 02_large_08, 02_large_09, 99_handmade_00, 99_handmade_01, 99_handmade_02, 99_handmade_03, 99_handmade_04, 99_handmade_05, 99_handmade_06, 99_handmade_07
Case Name Status Exec Time Memory
00_sample_00 AC 1 ms 256 KB
00_sample_01 AC 1 ms 256 KB
01_random_00 AC 1 ms 256 KB
01_random_01 AC 1 ms 256 KB
01_random_02 AC 1 ms 256 KB
01_random_03 AC 1 ms 256 KB
01_random_04 AC 1 ms 256 KB
01_random_05 AC 1 ms 256 KB
01_random_06 AC 1 ms 256 KB
01_random_07 AC 1 ms 256 KB
01_random_08 AC 1 ms 256 KB
01_random_09 AC 1 ms 256 KB
01_random_10 AC 1 ms 256 KB
01_random_11 AC 1 ms 256 KB
01_random_12 AC 1 ms 256 KB
01_random_13 AC 1 ms 256 KB
01_random_14 AC 1 ms 256 KB
01_random_15 AC 1 ms 256 KB
01_random_16 AC 1 ms 256 KB
01_random_17 AC 1 ms 256 KB
01_random_18 AC 1 ms 256 KB
01_random_19 AC 1 ms 256 KB
02_large_00 AC 1 ms 256 KB
02_large_01 AC 1 ms 256 KB
02_large_02 AC 1 ms 256 KB
02_large_03 AC 1 ms 256 KB
02_large_04 AC 1 ms 256 KB
02_large_05 AC 1 ms 256 KB
02_large_06 AC 1 ms 256 KB
02_large_07 AC 1 ms 256 KB
02_large_08 AC 1 ms 256 KB
02_large_09 AC 1 ms 256 KB
99_handmade_00 AC 1 ms 256 KB
99_handmade_01 AC 1 ms 256 KB
99_handmade_02 AC 1 ms 256 KB
99_handmade_03 AC 1 ms 256 KB
99_handmade_04 AC 1 ms 256 KB
99_handmade_05 AC 1 ms 256 KB
99_handmade_06 AC 1 ms 256 KB
99_handmade_07 AC 1 ms 256 KB