QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#794764#8523. Puzzle IIwangjunruiRE 3ms4028kbC++141.7kb2024-11-30 15:55:432024-11-30 15:55:43

Judging History

This is the latest submission verdict.

  • [2024-11-30 15:55:43]
  • Judged
  • Verdict: RE
  • Time: 3ms
  • Memory: 4028kb
  • [2024-11-30 15:55:43]
  • Submitted

answer

#include <bits/stdc++.h>
using namespace std;
constexpr int N = 1.5e5 + 5;
int n, m;
char A[N], B[N];
signed main()
{
	ios::sync_with_stdio(false);
	cin.tie(0), cout.tie(0);
	cin >> n >> m >> A >> B;
	int cnt = 0;
	for (int i = 0; i < n; ++i)
		cnt += (A[i] == 'B');
	
	deque<char> a, b;
	for (int i = 0; i < m; ++i)
		a.push_back(A[i]);
	for (int i = n - m; i < n; ++i)
		b.push_back(B[i]);
	b.push_back(B[0]);
	
	vector<pair<int, int>> answer;
	
	if (cnt <= n / 2)
	{
		for (int i = m - 1, j = 0; cnt--;)
		{
			while (a.front() != 'B')
			{
				A[(i - a.size() + 1 + n) % n] = a.front();
				a.pop_front();
				a.push_back(A[i = (i + 1) % n]);
			}
			while (b.back() != 'C')
			{
				B[(j - b.size() + 1 + n) % n] = b.front();
				b.pop_front();
				b.push_back(B[j = (j + 1) % n]);
			}
			answer.emplace_back((i - m + 1 + n) % n, (j - m + n) % n);
			answer.emplace_back((i - m + 1 + n) % n, (j - m + 1 + n) % n);
			a.pop_front(), b.pop_back();
			a.push_back('C'), b.push_front('B');
		}
	}
	else
	{
		cnt = n - cnt;
		for (int i = m - 1, j = 0; cnt--;)
		{
			while (a.front() != 'C')
			{
				A[(i - a.size() + 1 + n) % n] = a.front();
				a.pop_front();
				a.push_back(A[i = (i + 1) % n]);
			}
			while (b.back() != 'B')
			{
				B[(j - b.size() + 1 + n) % n] = b.front();
				b.pop_front();
				b.push_back(B[j = (j + 1) % n]);
			}
			answer.emplace_back((i - m + 1 + n) % n, (j - m + n) % n);
			answer.emplace_back((i - m + 1 + n) % n, (j - m + 1 + n) % n);
			a.pop_front(), b.pop_back();
			a.push_back('B'), b.push_front('C');
		}
	}
	cout << answer.size() << '\n';
	for (auto [u, v] : answer)
		cout << u + 1 << ' ' << v + 1 << '\n';
	return 0;
}

詳細信息

Test #1:

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

input:

6 3
BCCBCC
BBCBBC

output:

4
1 6
1 1
4 4
4 5

result:

ok moves = 4

Test #2:

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

input:

2 1
BC
BC

output:

2
1 1
1 2

result:

ok moves = 2

Test #3:

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

input:

2 1
BB
CC

output:

0

result:

ok moves = 0

Test #4:

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

input:

2 1
CC
BB

output:

0

result:

ok moves = 0

Test #5:

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

input:

3 1
CCC
BBB

output:

0

result:

ok moves = 0

Test #6:

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

input:

3 1
CBC
BCB

output:

2
2 1
2 2

result:

ok moves = 2

Test #7:

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

input:

3 2
BBB
CCC

output:

0

result:

ok moves = 0

Test #8:

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

input:

3 2
BCB
BCC

output:

2
2 2
2 3

result:

ok moves = 2

Test #9:

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

input:

4 2
CCCB
BBCB

output:

2
4 1
4 2

result:

ok moves = 2

Test #10:

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

input:

9 6
CCCBCCCBB
BBBCBBBCC

output:

6
4 7
4 8
7 3
7 4
7 4
7 5

result:

ok moves = 6

Test #11:

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

input:

21 3
CCCCBBCBCCCCCCCBCCCCC
BBCCBCBBBBBBBBBCBBBBB

output:

8
5 21
5 1
5 1
5 2
8 3
8 4
16 13
16 14

result:

ok moves = 8

Test #12:

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

input:

49 41
CBCCBCCBCCBCCBCCCBBCCBCBBCCCBBCCBCBCBCBCCCCBCBCCB
BCCCCBCBBBBCBCBBBBBCBBBBCCCCBCBBCBBCBBBBCBCBCBBBC

output:

38
2 10
2 11
4 11
4 12
6 12
6 13
8 13
8 14
10 15
10 16
13 25
13 26
13 27
13 28
15 34
15 35
16 40
16 41
16 41
16 42
19 43
19 44
19 44
19 45
21 46
21 47
22 4
22 5
23 8
23 9
24 14
24 15
29 17
29 18
31 19
31 20
35 24
35 25

result:

ok moves = 38

Test #13:

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

input:

114 8
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC

output:

0

result:

ok moves = 0

Test #14:

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

input:

266 28
CBBCBBCCCCBCBBCBBBCBCBCBCBBCBCBBCCCCBCCCCCBCCBBCCBBCBCBBCCCCCCBBBCCCBCCBCBBCCCBCCCCCCBCBBCCCBCBBCCBCBBBCBCCCBBCBCCCCBBCBBCBBCCBBCCCCCBBCCCBCCCCCCCCBBBBBBCBCCBCCCCBBCBBBBCBCCCCCCCBCBBCBCCCCCCCCCCCBBBBCCCCBCBCCCBCCCCCCCCCBCBCCCBBBCCCBCCBCBBCBCCCCCCBCBCCCCBCBCCBCCCCBCB
CCBCBCBBCBCBBCBCCCBBBCBCBB...

output:

206
2 239
2 240
2 240
2 241
3 242
3 243
3 244
3 245
7 247
7 248
8 249
8 250
8 252
8 253
9 254
9 255
9 255
9 256
9 256
9 257
10 260
10 261
11 262
11 263
12 265
12 266
13 5
13 6
13 13
13 14
14 20
14 21
19 21
19 22
19 23
19 24
29 29
29 30
40 32
40 33
42 33
42 34
44 37
44 38
46 38
46 39
46 43
46 44
47 4...

result:

ok moves = 206

Test #15:

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

input:

620 443
BBBBBBCBBBCBBCBCBCBBBBCCCBCCBCBBBBBBCCCBBBCCBBCBCBCBBCCCCBCBBCBCCCCBBBBBBCCCCCBBBBCCBCBBBBBCBCBBCBCBCCCCBCBBCBBBCBBBCCCBCCCBBBBBCCBBCCBBBCCBCCBCBBCBCCCCCCCCCBCBCBBBCBBCBBCBBBBBBBCCBBBBBBBBBBCBBCBBCBBCCCBBCCBBBBCCCBBBBBBCBBBBBBBBCBBCBCBBBCCBBBBCCBBBCBCBCBBBBBCBBCBBBBCBBBBCCBBBCBBBBBCBBCCCCBCC...

output:

484
7 181
7 182
10 182
10 183
12 183
12 184
13 189
13 190
14 191
14 192
18 193
18 194
18 194
18 195
18 196
18 197
19 198
19 199
19 199
19 200
20 201
20 202
26 203
26 204
26 204
26 205
26 206
26 207
29 209
29 210
29 210
29 211
31 212
31 213
32 213
32 214
33 214
33 215
35 216
35 217
35 217
35 218
35 2...

result:

ok moves = 484

Test #16:

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

input:

1446 646
CCCBCCCCCCCBBCCBBCCCCBBCCCBBCCCCCCCCCCCCCCCBCCCCCCCCBBCCBBCCCBCBBBCCCCBBCCCCCCCCCCCBCBCCCBBCCCCBBCBCBCCCCCCCBCCCCCCCBCCBCBBCCCCCCCCCCCCBCCCBCCCCCCBCCCBCCCCCBBCCCBBCCCBBBCCBCCBCCBBBCBCBCCCCBCBCCCBCCCCBBCCCCCCCBCCCCBCCCBBBCCCBCCBBCCCCBCCCBBCBCCCCCBBCCBCCCCCCBCCCCCCCCCCCCCCBCCCCCBCBCCCCBCCCCCB...

output:

874
4 801
4 802
11 804
11 805
11 805
11 806
13 814
13 815
13 815
13 816
17 817
17 818
17 820
17 821
20 822
20 823
20 833
20 834
35 834
35 835
43 837
43 838
43 838
43 839
45 839
45 840
45 840
45 841
48 841
48 842
49 851
49 852
49 853
49 854
49 863
49 864
53 869
53 870
53 870
53 871
64 876
64 877
65 8...

result:

ok moves = 874

Test #17:

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

input:

3374 2755
BCBBCBBBCBBBBBBBBBCCBBBBBBBCCBBCBBCBBBBBCBBBBBBBBCBBBBBBBBBBBBCBBBCCBBBBCBBBBBCBBBBBCBBBBCBBBBBBBBBCBBBBBBBBBBBCBBBBBBBCBBBBBBBBBBCCBBBBBBBBBCBBCBBBCBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCBBBCBBCBBBBBBBBBBBBBBCCBCBCBCBBBBCBBBCBBBBBBBBCBBCBCBBCBCCBBBBBBBBBBBCCBBBBBBBBBBBBBBBBBCBBBBBBBBBBB...

output:

1216
2 622
2 623
4 637
4 638
7 642
7 643
16 643
16 644
16 645
16 646
23 649
23 650
23 650
23 651
25 655
25 656
27 656
27 657
32 662
32 663
40 665
40 666
52 666
52 667
55 676
55 677
55 687
55 688
59 698
59 699
64 699
64 700
69 718
69 719
73 725
73 726
82 729
82 730
93 734
93 735
100 739
100 740
110 7...

result:

ok moves = 1216

Test #18:

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

input:

7872 7827
BCBBCBCBBCCBCBBBCCCBBBBBBBCBBBBCCBCCBCBBBBBBCBBCBBBCCCBBBCCCCBCBBBBCBBCCBBBBCCBBCBBBCBCBBCBCBBCCBBBCCBBBBCCBBCBBBBBBCBBBBBBBBCCBBCCCCBCCCBBCCCBBCBCBBBCBBBBCBBBBCBCBBBCCBBCCCCBBBCBBCCBBBBBBCBBBBCCCBBBCCCBBCCCBBBBBBCCBBBCCCCBBBCBBCBCCBBBCCCCBCBBCCBBBBCCBBBCBBCBBBCBBBCBBBBCCBBBBBCCBCBCBBBBBBB...

output:

5928
2 46
2 47
4 49
4 50
5 51
5 52
7 52
7 53
7 53
7 54
8 58
8 59
11 59
11 60
11 63
11 64
11 64
11 65
18 66
18 67
22 67
22 68
22 68
22 69
23 69
23 70
23 72
23 73
24 73
24 74
30 79
30 80
32 83
32 84
35 89
35 90
35 92
35 93
35 99
35 100
38 102
38 103
38 110
38 111
38 115
38 116
38 116
38 117
39 119
39 ...

result:

ok moves = 5928

Test #19:

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

input:

18368 17997
CBBBBBBBBBBCBBBBBBBBBBBBBBCBBCCBBBBBBBBBBBBBCBCBBBBBBBBCBBBBBCBBBBBBBBBBBBBBCBBBBBBBBBBCBBBCBCBBBBBCBCBBCBBBBBBBBBBBBBCCCBBBBBBCBBBBCBCBBCBBBBBCBBBBBBBCCBBBBCCBCBBBBBBBBBBBBCBBBBBBBBCBCBBBBBBBBCBCBBBBBBBBBBBCBBBBCCBBBBBBBCBBBBBBBBBBBBBBBCCBBCBCBBCBCBBBCBBBBBBBBBBBBBCBBCBBBBBBBCCCBBBBBBBB...

output:

7330
1 373
1 374
11 381
11 382
25 382
25 383
27 389
27 390
27 392
27 393
40 415
40 416
41 416
41 417
49 417
49 418
54 421
54 422
68 436
68 437
78 438
78 439
81 441
81 442
82 457
82 458
87 470
87 471
88 476
88 477
90 480
90 481
103 481
103 482
103 500
103 501
103 501
103 502
109 506
109 507
113 510
1...

result:

ok moves = 7330

Test #20:

score: 0
Accepted
time: 2ms
memory: 3908kb

input:

42858 28689
CCCCCCCCCCCCCCCCCCCCBCCCBBCCCBCCCCCCCCCBCCCCCCCBCCCBCCCCCBCCCCCCCCBCCBCCBCCCCCCCCCCCCCCCCCBCCCCCCCCCBCCCCBCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCCCCCCCCCCCCCCCCCBBCCCCCCCCCCCCCCBBCCCBCCCCCCCCCCBCCCCCCCBCCCCBCBCCCBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCBCBCCCBCBCCCCCCCCCCCCCCBCCCCCCCCBCCCCCCCCCCCCCCCCCC...

output:

8086
21 14170
21 14171
24 14172
24 14173
24 14177
24 14178
27 14182
27 14183
36 14186
36 14187
43 14198
43 14199
46 14211
46 14212
51 14212
51 14213
59 14216
59 14217
61 14224
61 14225
63 14225
63 14226
80 14251
80 14252
89 14254
89 14255
93 14257
93 14258
121 14259
121 14260
138 14271
138 14272
138...

result:

ok moves = 8086

Test #21:

score: 0
Accepted
time: 3ms
memory: 4020kb

input:

100002 40466
BBBBBBBCCBCBCCBCBBBBCCBBCBBBBBBBBBBCBBBBCBBBBBCBBBBBBBBBCBBBCBBBCCBCBCBBBBBBCBBBBBBBCBBBBBCBBBBCBCBCBBBBBBBBCBBBBBBBBCBCBBBBCBBBBBBBBBBBBBCBCBBCBBBBBBBBBBBCBBBBBBBCBCBCBCBBBBBBBBCBCBBBBBBBBCBBBBBBBBCBCCBBBCCBBCBBCBBBBBBBBBBCBBBCBBBBBBBBBBBBCBBCCBBCBBCBBBBCBBBBCBBBCCBBBCBBBBBBBCBBBBCBBBC...

output:

45728
8 59539
8 59540
8 59543
8 59544
9 59547
9 59548
10 59549
10 59550
10 59550
10 59551
11 59554
11 59555
15 59567
15 59568
15 59569
15 59570
17 59570
17 59571
27 59571
27 59572
31 59572
31 59573
36 59574
36 59575
45 59581
45 59582
48 59582
48 59583
51 59589
51 59590
51 59590
51 59591
52 59596
52 ...

result:

ok moves = 45728

Test #22:

score: -100
Runtime Error

input:

233338 159967
CCBCBBCCCCBBCCCCCCCCBCCCBCCCCBCCBCCCCCCCCCBCBCCBBCBBCCCCBCCCCCCCCCCCCCCCCCCCBCCBCCBBCBCCBBBCCBCCCCBBCCCBCCCCCCCCCCCBCCBCCCCCCCCBCCCBBCBCCCBCCCCCBCCBCCBCCCCCCCBCCCCCBCCBBCCCCCCCBCCCCCCCCBBBCCCCCCCCCCCCBBBCCCBBCCBCBCCCCCCCCCBCCCCBCCCCCCCCBBCCCCBCCCCBCCCBCCCBCCCCCBCCCCCBBCCCBCCCCCCCCCCCCC...

output:


result: