QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#954017#9667. L-Covering CheckerEuphoria_#AC ✓8ms6144kbC++143.5kb2025-03-28 10:21:502025-03-28 10:21:51

Judging History

This is the latest submission verdict.

  • [2025-03-28 10:21:51]
  • Judged
  • Verdict: AC
  • Time: 8ms
  • Memory: 6144kb
  • [2025-03-28 10:21:50]
  • Submitted

answer

#include<bits/stdc++.h>
#define int long long
#define fi first
#define se second
#define pii std::pair<int,int>
#define vint std::vector<int>
#define vpair std::vector<pii>
#define debug(...) fprintf(stderr,##__VA_ARGS__)

template<typename T>
void read(T &x){
	x=0;
	int f=1;
	char c=getchar();
	while(c<'0'||c>'9'){
		if(c=='-') f=-1;
		c=getchar();
	}
	while(c>='0'&&c<='9') x=x*10+(int)(c-'0'),c=getchar();
	x*=f;
}

std::stack<char>st;
template<typename T>
void print(T x){
	if(x==0) putchar('0');
	if(x<0) putchar('-'),x=-x;
	while(st.size()) st.pop();
	while(x) st.push((char)('0'+x%10)),x/=10;
	while(st.size()) putchar(st.top()),st.pop();
}

template<typename T>
void printsp(T x){
	print(x),putchar(' ');
}

template<typename T>
void println(T x){
	print(x),putchar('\n');
}

template<typename T,typename I>
bool chkmin(T &a,I b){
	if(a>b) return a=b,1;
	return 0;
}

template<typename T,typename I>
bool chkmax(T &a,I b){
	if(a<b) return a=b,1;
	return 0;
}

template<typename T,typename I>
void addedge(std::vector<I>*vec,T u,T v){
	vec[u].push_back(v);
}

template<typename T,typename I,typename K>
void addedge(std::vector<K>*vec,T u,T v,I w){
	vec[u].push_back({v,w});
}

template<typename T,typename I>
void addd(std::vector<I>*vec,T u,T v){
	addedge(vec,u,v),addedge(vec,v,u);
}

template<typename T,typename I,typename K>
void addd(std::vector<K>*vec,T u,T v,I w){
	addedge(vec,u,v,w),addedge(vec,v,u,w);
}

bool Mbe;

const int inf=1e18,MOD1=998244353,MOD2=1e9+7;

const int maxn=510;

int T,n,m,f[maxn][maxn],dx[]={1,-1,0,0},dy[]={0,0,1,-1};

// vint vec[maxn][maxn];

char c[maxn][maxn];

bool Men;

signed main(){
	debug("%.6lfMB\n",(&Mbe-&Men)/1048576.0);
	std::ios::sync_with_stdio(false);
	std::cin.tie(0);
	std::cin>>T;
	while(T--){
		std::cin>>n>>m;
		for(int i=1;i<=n;i++){
			std::string s;
			std::cin>>s;
			for(int j=1;j<=m;j++) c[i][j]=s[j-1],f[i][j]=0;
		}
		int num=0,ix=0,iy=0;
		for(int i=1;i<=n;i++)
			for(int j=1;j<=m;j++)
				if(c[i][j]=='.') num++,ix=i,iy=j;
		if(num!=1||ix!=1||iy!=m){
			printf("No\n");
			continue;
		}
		bool fd=1;
		for(int i=1;i<=n;i++)
			for(int j=1;j<=m;j++){
				if(c[i][j]=='.'||c[i][j]=='C') continue;
				if(c[i][j]=='U'){
					if(i-1==0) fd=0;
					f[i-1][j]++;
				}
				if(c[i][j]=='D'){
					if(i==n) fd=0;
					f[i+1][j]++;
				}
				if(c[i][j]=='L'){
					if(j==1) fd=0;
					f[i][j-1]++;
				}
				if(c[i][j]=='R'){
					if(j==m) fd=0;
					f[i][j+1]++;
				}
			}
		if(!fd){
			// debug("ok\n");
			printf("No\n");
			continue;
		}
		// vpair vec;
		for(int i=1;i<=n&&fd;i++)
			for(int j=1;j<=m;j++){
				if(c[i][j]!='C'&&f[i][j]>0){
					fd=0;
					break;
				}
				if(f[i][j]==0) continue;
				if(f[i][j]!=2){
					// debug("i=%lld j=%lld\n",i,j);
					fd=0;
					break;
				}
				int g=0;
				for(int k=0;k<4;k++){
					int ix=i+dx[k],iy=j+dy[k];
					if(ix<1||iy<1||ix>n||iy>m) continue;
					if(c[ix][iy]=='U'&&ix-1==i&&iy==j){
						g++;
						continue;
					}
					if(c[ix][iy]=='D'&&ix+1==i&&iy==j){
						g+=2;
						continue;
					}
					if(c[ix][iy]=='L'&&ix==i&&iy-1==j){
						g+=4;
						continue;
					}
					if(c[ix][iy]=='R'&&ix==i&&iy+1==j){
						g+=8;
						continue;
					}
				}
				if(g==3||g==12){
					// debug("i=%lld j=%lld\n",i,j);
					fd=0;
					break;
				}
			}
		if(!fd) printf("No\n");
		else printf("Yes\n");
	}
	debug("%.6lfms\n",1e3*clock()/CLOCKS_PER_SEC);
}

这程序好像有点Bug,我给组数据试试?

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3840kb

input:

2
4 4
CLD.
UDCL
DCLD
CLRC
2 3
DRC
CLU

output:

Yes
No

result:

ok 2 lines

Test #2:

score: 0
Accepted
time: 1ms
memory: 4352kb

input:

100
47 81
UCRRRCR.CLURRCU.LLURDDRUDCC.DCUD.R.CURL.RURLC.LULLRDCDDDCC.CCUCLRLDLULULLUD.RL.R.
LC.UDUDCL.RRCLRRURDRDL.CRD.LDURRCRU.D..LCUD.UDRCCURDLDCD.DDUC..ULLLDDCLDCL..C.R.C
LLLLLULD.RLU.L.RURDLRCULCD.RCC..URD.LD.UCURDR.DUULUUD..LULR.RDURDDLRRRD.LCLLCD.D.
LUCR.RCR.RRCL..DRURU.CLLDRCUULULRULCU.RD.UDR...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No

result:

ok 100 lines

Test #3:

score: 0
Accepted
time: 0ms
memory: 3968kb

input:

100
10 10
D.D....D..
CLCLCLRCRC
CL..U.CL.U
UCL.RCU.D.
.UDRCUCLCL
..CLU.U.RC
.CL.CL.DDU
.UCLUDRCCL
D.U.RCDCLD
CL...RCURC
11 5
.CLCL
.U.U.
..RC.
DRCU.
CLU.D
.CLRC
DUDRC
CLCLU
D....
CLD.D
.RCRC
2 8
D.RCCLD.
CL.UURC.
7 10
.CL...CLCL
.U.D.DU.U.
.RCCLCL.RC
..UD.RCRCU
D.RCD.U.U.
CL.RCD.RC.
.....CL.U.
7 10
...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No

result:

ok 100 lines

Test #4:

score: 0
Accepted
time: 0ms
memory: 5992kb

input:

100
5 32
.DCL.DCLRC.RCDRC...CLD.CLCL.....
RCUDRCUCLU..UCLU.RCURC.U.UCL..CL
CL.CL..U.RC...D.RCU.D.D...U.CLU.
U.D.D.CL.DUD.RCCLUDRCDCL.DD.UD.D
.RC.CLU..CLCL..U..CL.CL.RCCLRCRC
8 41
.RCDRCRCRCD..CL.RCD.CL..CLCL.RCRC.RCCL.RC
RCUCLUDUDUCL.URC.UCLUDRCU.U...UDUD.UUCL.U
DUCL..CLCLD...DUCL..RC.UCL.RCD.CLCLD....

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No

result:

ok 100 lines

Test #5:

score: 0
Accepted
time: 1ms
memory: 4352kb

input:

100
92 77
.RC.RCCL.D.CLCLD......D.RC.RCRCCLD.CL.RCCLCL..D.D.RCCL.DCL.D.CLRCD.D.D.CLRCD.
..U..UUCLCLU.UDCL.CL.RCRCUD.U.UU.CLU.RCUUDURCRC.CLDUUDRCU..CLUCLUCLCLCLURCUCL
D.D.D.DUCLCL..CLD.U.CLCLURCCLD....CLCLU.DCL.UCL.DRCDRCDRC..CLDUCL.D..CL.DUD..
CLCLCLCLUDUDRC..CLCLU.U.D..URCCLDDU.U..RC.RC.U.RCRCCLRCD...

output:

No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No
No

result:

ok 100 lines

Test #6:

score: 0
Accepted
time: 8ms
memory: 6144kb

input:

1059
2 2
RC
.U
5 2
D.
CL
CL
UD
RC
2 8
DRCDRCD.
CLUCLUCL
4 4
CLRC
URCU
RCUD
.URC
11 2
D.
CL
RC
DU
CL
RC
DU
CL
RC
DU
CL
5 5
CLRC.
URCUD
CLURC
UDDRC
RCCLU
14 2
RC
DU
CL
RC
DU
CL
RC
DU
CL
RC
DU
CL
RC
.U
4 7
CLDCLD.
URCUDCL
DRCDCLD
CLUCLRC
17 2
D.
CL
RC
DU
CL
RC
DU
CL
RC
DU
CL
RC
DU
CL
RC
DU
CL
20 2
D.
C...

output:

No
Yes
Yes
No
Yes
Yes
No
Yes
Yes
Yes
Yes
No
No
No
No
No
No
No
Yes
Yes
Yes
Yes
Yes
No
No
No
No
Yes
No
No
No
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
No
Yes
No
No
Yes
No
No
Yes
Yes
Yes
Yes
No
Yes
No
Yes
Yes
Yes
No
No
Yes
No
No
No
Yes
No
No
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
No
No
No
No
Yes
Yes
No
No
No
Yes
Yes
...

result:

ok 1059 lines

Test #7:

score: 0
Accepted
time: 7ms
memory: 5996kb

input:

81
100 100
CLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLD.
URCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCURCUDCL
CLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLD...

output:

Yes
Yes
Yes
Yes
Yes
No
Yes
No
Yes
Yes
Yes
No
Yes
Yes
No
Yes
No
No
No
No
Yes
No
No
Yes
No
Yes
Yes
No
No
Yes
No
No
Yes
No
Yes
Yes
Yes
Yes
No
No
Yes
No
Yes
Yes
No
No
No
Yes
No
No
No
Yes
No
No
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
No
No
Yes
No
Yes
No
No
No
No
No
Yes
Yes
Yes
No
No
No
Yes
Yes

result:

ok 81 lines

Test #8:

score: 0
Accepted
time: 5ms
memory: 4992kb

input:

15
250 250
CLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLD.
URCURCURCURCURCURCURCURCURCURCURCURCUR...

output:

Yes
No
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
No
No
Yes
Yes
Yes

result:

ok 15 lines

Test #9:

score: 0
Accepted
time: 5ms
memory: 5248kb

input:

10
301 301
CLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCCLCLRCC...

output:

No
Yes
Yes
No
No
Yes
No
No
Yes
Yes

result:

ok 10 lines

Test #10:

score: 0
Accepted
time: 5ms
memory: 6016kb

input:

4
497 497
CLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCLDCL...

output:

No
Yes
No
Yes

result:

ok 4 lines

Extra Test:

score: 0
Extra Test Passed