QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#105979#5414. Stop, Yesterday Please No MoreRabbieWjy#WA 83ms3876kbC++141.2kb2023-05-16 09:37:152023-05-16 09:37:16

Judging History

你现在查看的是最新测评结果

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-05-16 09:37:16]
  • 评测
  • 测评结果:WA
  • 用时:83ms
  • 内存:3876kb
  • [2023-05-16 09:37:15]
  • 提交

answer

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;

int t,n,m,K;
char s[1000010];
int len;
int cnt[1010][1010],ans;

int main()
{
	scanf("%d",&t);
	while (t --)
	{
		ans = 0;
		scanf("%d%d%d",&n,&m,&K);
		for (int i = 1;i <= n;i ++)
			for (int j = 1;j <= m;j ++)
				cnt[i][j] = 0;
		scanf("%s",s + 1);
		len = strlen(s + 1);
		int maxx = 0,minx = 0,maxy = 0,miny = 0;
		int x = 0,y = 0;
		for (int i = 1;i <= len;i ++)
		{
			if (s[i] == 'U') x ++;
			else if (s[i] == 'D') x --;
			else if (s[i] == 'L') y --;
			else y ++;
			maxx = max(maxx,x),minx = min(minx,x);
			maxy = max(maxy,y),miny = min(miny,y);
		}
//		printf("%d %d %d %d\n",maxx,minx,maxy,miny);
		for (int i = maxx + 1;i <= n + minx;i ++)
			for (int j = maxy + 1;j <= m + miny;j ++)
			{
				int nx = i,ny = j;
				cnt[nx][ny] ++;
				for (int k = 1;k <= len;k ++)
				{
					if (s[k] == 'U') nx --;
					else if (s[k] == 'D') nx ++;
					else if (s[k] == 'L') ny --;
					else ny ++;
					cnt[nx][ny] ++;
				}
			}
		for (int i = 1;i <= n;i ++)
			for (int j = 1;j <= m;j ++)
				if (cnt[i][j] == max(0,n + minx - maxx) * max(0,m + miny - maxy) - K) ans ++;
		printf("%d\n",ans);
	}
}

详细

Test #1:

score: 100
Accepted
time: 2ms
memory: 3492kb

input:

3
4 5 3
ULDDRR
4 5 0
UUUUUUU
4 5 10
UUUUUUU

output:

2
20
0

result:

ok 3 number(s): "2 20 0"

Test #2:

score: -100
Wrong Answer
time: 83ms
memory: 3876kb

input:

1060
19 12 0
UDLDDUUUUDDDLLRDUDUURULUUUDRDUDRDRLRLRLULULLLDLDDRLUUUURUUUDDRLLRUUUDULURUULLRDRLRDDURDUUURRRLURLRUULRRUDURDLUUURDLURDDLUUURDDRLLURRDLRUDLRDRLLRRDRDDLDRURRRLUDULLLRUUDLRRURRDLLRRRDLLRDDDLRLRURURDDDL
11 1 0
UR
3 18 33
UDRLR
17 11 132
RLDRDLDRUU
6 10 13
UULUDDLRDLUUDLDD
1 15 0
D
6 20 50
D...

output:

228
11
17
9
12
15
19
240
9
0
0
3
1
18
1
15
8
30
108
8
0
1
3
48
1
15
3
5
0
8
10
9
3
5
320
1
5
3
0
0
4
0
11
0
0
6
128
22
0
51
23
2
6
1
9
48
28
8
1
11
49
13
5
0
12
4
18
44
0
1
5
0
4
30
14
99
105
1
14
17
0
66
9
11
28
52
31
8
22
7
0
90
15
0
22
3
48
23
2
9
0
30
2
3
3
6
16
45
5
16
0
19
0
21
0
6
0
20
13
48
...

result:

wrong answer 3rd numbers differ - expected: '20', found: '17'