QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#661166#8776. Not Another Constructive!comeintocalm#AC ✓509ms249180kbC++201006b2024-10-20 14:59:112024-10-20 14:59:11

Judging History

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

  • [2024-10-20 14:59:11]
  • 评测
  • 测评结果:AC
  • 用时:509ms
  • 内存:249180kb
  • [2024-10-20 14:59:11]
  • 提交

answer

#include <bits/stdc++.h>

bool vis[41][41][401][2501];

char s[45];
int n, m;

bool dfs(int i, int x, int y, int z) {
	if (z > m) {
		return false;
	}
	if (i >= n) {
		if (z == m) {
			printf("%s", s + 1);
			exit(0);
		}
		return false;
	}
	if (vis[i][x][y][z]) {
		return false;
	}
	vis[i][x][y][z] = true;
	if (s[i + 1] != '?') {
		if (s[i + 1] == 'N') {
			dfs(i + 1, x + 1, y, z);
		} else if (s[i + 1] == 'A') {
			dfs(i + 1, x, y + x, z);
		} else if (s[i + 1] == 'C') {
			dfs(i + 1, x, y, z + y);
		} else {
			dfs(i + 1, x, y, z);
		}
	} else {
		s[i + 1] = 'N';
		dfs(i + 1, x + 1, y, z);
		
		s[i + 1] = 'A';
		dfs(i + 1, x, y + x, z);
		
		
		s[i + 1] = 'C';
		dfs(i + 1, x, y, z + y);

		s[i + 1] = 'B';
		dfs(i + 1, x, y, z);
		
		s[i + 1] = '?';
	}
	return false;
}

int main() {
	scanf("%d%d", &n, &m);
	scanf("%s", s + 1);
	bool ans = dfs(0, 0, 0, 0);
	if (!ans) {
		puts("-1");
	} else {
		printf("%s", s + 1);
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 4708kb

input:

22 2
N??A??????C???????????

output:

NNCANNNNNNCNNNNNNNNNNN

result:

ok correct

Test #2:

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

input:

18 0
COUNTINGSATELLITES

output:

COUNTINGSATELLITES

result:

ok correct

Test #3:

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

input:

2 1
??

output:

-1

result:

ok correct

Test #4:

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

input:

1 0
?

output:

N

result:

ok correct

Test #5:

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

input:

1 0
N

output:

N

result:

ok correct

Test #6:

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

input:

1 0
X

output:

X

result:

ok correct

Test #7:

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

input:

1 1
?

output:

-1

result:

ok correct

Test #8:

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

input:

1 1
N

output:

-1

result:

ok correct

Test #9:

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

input:

1 1
X

output:

-1

result:

ok correct

Test #10:

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

input:

2 0
??

output:

NN

result:

ok correct

Test #11:

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

input:

2 0
N?

output:

NN

result:

ok correct

Test #12:

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

input:

2 0
?C

output:

NC

result:

ok correct

Test #13:

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

input:

2 1
N?

output:

-1

result:

ok correct

Test #14:

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

input:

2 1
?C

output:

-1

result:

ok correct

Test #15:

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

input:

3 1
???

output:

NAC

result:

ok correct

Test #16:

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

input:

3 1
N??

output:

NAC

result:

ok correct

Test #17:

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

input:

3 1
?A?

output:

NAC

result:

ok correct

Test #18:

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

input:

3 1
??C

output:

NAC

result:

ok correct

Test #19:

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

input:

3 1
NA?

output:

NAC

result:

ok correct

Test #20:

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

input:

3 1
N?C

output:

NAC

result:

ok correct

Test #21:

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

input:

3 1
?AC

output:

NAC

result:

ok correct

Test #22:

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

input:

4 1
????

output:

NANC

result:

ok correct

Test #23:

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

input:

4 1
X???

output:

XNAC

result:

ok correct

Test #24:

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

input:

4 1
???Z

output:

NACZ

result:

ok correct

Test #25:

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

input:

4 1
?AA?

output:

-1

result:

ok correct

Test #26:

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

input:

4 1
N???

output:

NANC

result:

ok correct

Test #27:

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

input:

4 1
?N??

output:

ANAC

result:

ok correct

Test #28:

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

input:

4 1
??N?

output:

NANC

result:

ok correct

Test #29:

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

input:

4 1
???N

output:

NACN

result:

ok correct

Test #30:

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

input:

4 1
A???

output:

ANAC

result:

ok correct

Test #31:

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

input:

4 1
?A??

output:

NANC

result:

ok correct

Test #32:

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

input:

4 1
??A?

output:

NCAC

result:

ok correct

Test #33:

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

input:

4 1
???A

output:

NACA

result:

ok correct

Test #34:

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

input:

4 1
C???

output:

CNAC

result:

ok correct

Test #35:

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

input:

4 1
?C??

output:

NCAC

result:

ok correct

Test #36:

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

input:

4 1
??C?

output:

NACN

result:

ok correct

Test #37:

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

input:

4 1
???C

output:

NANC

result:

ok correct

Test #38:

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

input:

5 4
?????

output:

NNAAC

result:

ok correct

Test #39:

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

input:

6 14
??????

output:

-1

result:

ok correct

Test #40:

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

input:

7 14
???????

output:

-1

result:

ok correct

Test #41:

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

input:

8 43
????????

output:

-1

result:

ok correct

Test #42:

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

input:

9 55
?????????

output:

-1

result:

ok correct

Test #43:

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

input:

10 112
??????????

output:

-1

result:

ok correct

Test #44:

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

input:

11 110
???????????

output:

-1

result:

ok correct

Test #45:

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

input:

12 4
????????????

output:

NNNNANNNNNNC

result:

ok correct

Test #46:

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

input:

13 193
?????????????

output:

-1

result:

ok correct

Test #47:

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

input:

14 91
??????????????

output:

NNNNANAAACACCC

result:

ok correct

Test #48:

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

input:

15 15
???????????????

output:

NNNNNNNANANNNNC

result:

ok correct

Test #49:

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

input:

16 261
????????????????

output:

-1

result:

ok correct

Test #50:

score: 0
Accepted
time: 6ms
memory: 11880kb

input:

17 514
?????????????????

output:

-1

result:

ok correct

Test #51:

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

input:

18 678
??????????????????

output:

-1

result:

ok correct

Test #52:

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

input:

19 40
???????????????????

output:

NNNNNNNNNNNNNANCANC

result:

ok correct

Test #53:

score: 0
Accepted
time: 9ms
memory: 19296kb

input:

20 1019
????????????????????

output:

-1

result:

ok correct

Test #54:

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

input:

21 1218
?????????????????????

output:

-1

result:

ok correct

Test #55:

score: 0
Accepted
time: 16ms
memory: 26404kb

input:

22 1348
??????????????????????

output:

-1

result:

ok correct

Test #56:

score: 0
Accepted
time: 11ms
memory: 30888kb

input:

23 476
???????????????????????

output:

-1

result:

ok correct

Test #57:

score: 0
Accepted
time: 20ms
memory: 35816kb

input:

24 1445
????????????????????????

output:

-1

result:

ok correct

Test #58:

score: 0
Accepted
time: 19ms
memory: 41596kb

input:

25 1331
?????????????????????????

output:

-1

result:

ok correct

Test #59:

score: 0
Accepted
time: 6ms
memory: 12672kb

input:

26 459
??????????????????????????

output:

NNNNNNNNNNNNANAAACCCCCCCCC

result:

ok correct

Test #60:

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

input:

27 398
???????????????????????????

output:

NNNNNNNNNNNNNNNNAANAACACCCC

result:

ok correct

Test #61:

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

input:

28 274
????????????????????????????

output:

NNNNNNNNNNNNNNNNNNNAANAACACC

result:

ok correct

Test #62:

score: 0
Accepted
time: 68ms
memory: 72508kb

input:

29 1624
?????????????????????????????

output:

-1

result:

ok correct

Test #63:

score: 0
Accepted
time: 81ms
memory: 82348kb

input:

30 2079
??????????????????????????????

output:

-1

result:

ok correct

Test #64:

score: 0
Accepted
time: 135ms
memory: 93592kb

input:

31 2067
???????????????????????????????

output:

-1

result:

ok correct

Test #65:

score: 0
Accepted
time: 161ms
memory: 105904kb

input:

32 1267
????????????????????????????????

output:

-1

result:

ok correct

Test #66:

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

input:

33 928
?????????????????????????????????

output:

NNNNNNNNNNNNNNNNNANAAAAACCCCACCCC

result:

ok correct

Test #67:

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

input:

34 298
??????????????????????????????????

output:

NNNNNNNNNNNNNNNNNNNNNNNNANAAAAANCC

result:

ok correct

Test #68:

score: 0
Accepted
time: 279ms
memory: 150144kb

input:

35 2361
???????????????????????????????????

output:

-1

result:

ok correct

Test #69:

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

input:

36 489
????????????????????????????????????

output:

NNNNNNNNNNNNNNNNNNNNNNNNNANAACANCCCC

result:

ok correct

Test #70:

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

input:

37 294
?????????????????????????????????????

output:

NNNNNNNNNNNNNNNNNNNNNNNNNNNNNAANACCAC

result:

ok correct

Test #71:

score: 0
Accepted
time: 28ms
memory: 45144kb

input:

38 1558
??????????????????????????????????????

output:

NNNNNNNNNNNNNNNNNNNAAAAAAAAAAACCACCCCC

result:

ok correct

Test #72:

score: 0
Accepted
time: 4ms
memory: 31884kb

input:

39 1319
???????????????????????????????????????

output:

NNNNNNNNNNNNNNNNNNNNNNAAACAANAAACCCCCCC

result:

ok correct

Test #73:

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

input:

40 993
????????????????????????????????????????

output:

NNNNNNNNNNNNNNNNNNNNNNNNNNANAAAAACCCCCAC

result:

ok correct

Test #74:

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

input:

40 498
ACNANACNNACNACNNNCNCNNNANNNACNCCACAA?ANA

output:

-1

result:

ok correct

Test #75:

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

input:

40 855
NAAANAACNNNCNAANCNANCNANACANCCAANCACNCAC

output:

-1

result:

ok correct

Test #76:

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

input:

40 1007
?CNACNNAANACANACNACCC?CAANNCCCCANNANCACN

output:

-1

result:

ok correct

Test #77:

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

input:

40 1778
NACANANN?CCANNCCAACNNCCNCCCNCCNACCNC?NNN

output:

-1

result:

ok correct

Test #78:

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

input:

40 2186
ACCCACAN?NNA?AACCNNNN?ANACCANCNCNNCA?NCN

output:

-1

result:

ok correct

Test #79:

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

input:

40 332
ACAC?NCCCANAA?ACCNNC?NAC?CAC?CNCNNACNNNN

output:

-1

result:

ok correct

Test #80:

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

input:

40 712
ANCNANAAC?CACAACA?CNACCCANAACCA?CNNAANCN

output:

-1

result:

ok correct

Test #81:

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

input:

40 1127
C?CAAAANNCANANAC?NCANACANAACAACANNCCNCAC

output:

-1

result:

ok correct

Test #82:

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

input:

40 1835
CANNCAANNNAANANNCACANAC?CCCCAACA?NNNCAC?

output:

-1

result:

ok correct

Test #83:

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

input:

40 2009
CANAAAN?ANAACNCCNCCNCAAANCANCCAN?CCNCAAN

output:

-1

result:

ok correct

Test #84:

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

input:

40 54
CNAC?ACAAC?ACC?ANC?C?NNCAANCCAC?NCN?CACA

output:

-1

result:

ok correct

Test #85:

score: 0
Accepted
time: 18ms
memory: 30532kb

input:

40 955
?A?ANA?NN?C?ANC??CNNACAAC?N?AAN?AN??ANNA

output:

-1

result:

ok correct

Test #86:

score: 0
Accepted
time: 12ms
memory: 39904kb

input:

40 1451
??CCCA?N?ACCN?C???NNN??C?ANAN??NCNA??NAN

output:

-1

result:

ok correct

Test #87:

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

input:

40 1526
CN??AC?CCCCNACCNCNCCNC?CAAN?C?CA??ANCN?A

output:

-1

result:

ok correct

Test #88:

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

input:

40 2453
C?NC?CCAAN?ACCCNCC??ACAANCANCNCNNAACC?NN

output:

-1

result:

ok correct

Test #89:

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

input:

40 166
?NC??AACAN??NCA?CCAA?A??CNNN?ACNN?AN?ANC

output:

NNCAAAACANBBNCABCCAANABBCNNNBACNNNANBANC

result:

ok correct

Test #90:

score: 0
Accepted
time: 4ms
memory: 9864kb

input:

40 887
?NA?AN?N?A?ANN??N?ANCAN?N????AC?NN?NA???

output:

NNANANNNNANANNNNNNANCANANANCAACCNNCNACCC

result:

ok correct

Test #91:

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

input:

40 1310
CCN?NNANC??CANN??NC?N??NA?NNNNCN?N?CCCCC

output:

-1

result:

ok correct

Test #92:

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

input:

40 1568
ANCN?N?NACC??NNN?AAC?AANA?CA?NC?CNNAN??N

output:

-1

result:

ok correct

Test #93:

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

input:

40 2035
CA?N?ACCNN??CANA?NC?NACNC??CC???NCA?N?AC

output:

-1

result:

ok correct

Test #94:

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

input:

40 126
AC?CACCCN???C?NCCN?NN??CN?CNCN?C?N?C?A?C

output:

ACNCACCCNNNNCNNCCNNNNNNCNNCNCNNCANNCCACC

result:

ok correct

Test #95:

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

input:

40 962
CCC???A??????AN?N???C?NN??CANA?CNA??N???

output:

CCCNNNANNNNNNANANAAACCNNCACANAACNACCNCCC

result:

ok correct

Test #96:

score: 0
Accepted
time: 16ms
memory: 31644kb

input:

40 1043
?A??NANA?CN?N?AN?ANN?CNAANCC??AAANNN????

output:

-1

result:

ok correct

Test #97:

score: 0
Accepted
time: 73ms
memory: 69868kb

input:

40 1638
N?ANA?NA???A??N?CNNAA???NC????CNN??AC??N

output:

-1

result:

ok correct

Test #98:

score: 0
Accepted
time: 44ms
memory: 52400kb

input:

40 2240
NNC??NCA???N?N?NNC??CNNNAN??C?AN??AC?C??

output:

-1

result:

ok correct

Test #99:

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

input:

40 55
N?NCNC????C?A??A?A?NN??ACC??C??NC???ACN?

output:

-1

result:

ok correct

Test #100:

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

input:

40 639
C???NN??C?N?N????N?CA?NCAN????AN????NA??

output:

CNNNNNNNCNNNNNNNNNNCANNCANNANAANCCACNACC

result:

ok correct

Test #101:

score: 0
Accepted
time: 30ms
memory: 50492kb

input:

40 1438
?C?A?NA?AN???CA???NAAAN??A?NNANNCAA?????

output:

-1

result:

ok correct

Test #102:

score: 0
Accepted
time: 63ms
memory: 82708kb

input:

40 1660
???C?A???????NN??AANNAC???A?CN??ACN?AC?C

output:

-1

result:

ok correct

Test #103:

score: 0
Accepted
time: 169ms
memory: 114396kb

input:

40 2016
??AA??N?N??A?C?C????????C????C?C?CN??N?A

output:

-1

result:

ok correct

Test #104:

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

input:

40 242
?C???A???AA??A??C?CN???C???A?ANA?NN??AA?

output:

NCNNNANNNAANNANNCNCNNNNCNNNANANANNNANAAC

result:

ok correct

Test #105:

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

input:

40 711
??A?AA?C??C???CCNA?????C????A?????A??C??

output:

NNANAANCNNCNNNCCNANNNNNCNNNNAAAAAAACACCC

result:

ok correct

Test #106:

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

input:

40 1094
??AACN??N?A?????C????AA??CC???CC?N?A????

output:

NNAACNNNNNANNNNNCNNNNAAAACCAAACCCNCACCAC

result:

ok correct

Test #107:

score: 0
Accepted
time: 38ms
memory: 66884kb

input:

40 1878
?A??AACCA????N???A???C?C?C??C?NANC?N?NAC

output:

-1

result:

ok correct

Test #108:

score: 0
Accepted
time: 59ms
memory: 60280kb

input:

40 2082
AC??ACANC?CN?C?N???C?N???N??C?CC?????C?C

output:

-1

result:

ok correct

Test #109:

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

input:

40 268
N?N??NNNCNC??CAC????A?C?????N???AN??NC??

output:

NNNNNNNNCNCNNCACNNNNANCNNNNNNNNNANANNCCC

result:

ok correct

Test #110:

score: 0
Accepted
time: 4ms
memory: 13780kb

input:

40 960
?????????N???NA?????????C??AC???AN?A???A

output:

NNNNNNNNNNNNNNANNNNNNNAACNAACCCCANAACCCA

result:

ok correct

Test #111:

score: 0
Accepted
time: 65ms
memory: 56168kb

input:

40 1342
???C?????C?????NA?N??N?C?????A?N???NA???

output:

NNNCNNNNNCNNNAANAANAANACACACAACNCCCNACCC

result:

ok correct

Test #112:

score: 0
Accepted
time: 111ms
memory: 100504kb

input:

40 1739
?A?A???A???N?A??N???C???NCC??C??ANN???A?

output:

-1

result:

ok correct

Test #113:

score: 0
Accepted
time: 456ms
memory: 199768kb

input:

40 2484
??????N????N?????N?C??N????????????A???N

output:

-1

result:

ok correct

Test #114:

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

input:

40 116
?CN????????A??A???C????????????????C????

output:

NCNNNNNNNNNANNANNNCNNNNNNNNNNNNNCCACNNNN

result:

ok correct

Test #115:

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

input:

40 538
NC???N?????????????NN??N????????CC???N??

output:

NCNNNNNNNNNNNNNNNNNNNNNNNNNANAAACCANANCC

result:

ok correct

Test #116:

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

input:

40 1128
?????AN?????CN????N?A????C???C??????????

output:

NNNNNANNNNNNCNNNNNNNANNNACAAACNAACCCACCC

result:

ok correct

Test #117:

score: 0
Accepted
time: 345ms
memory: 147032kb

input:

40 1819
?????????C?AC?????C??A??NC?????????????C

output:

-1

result:

ok correct

Test #118:

score: 0
Accepted
time: 380ms
memory: 169028kb

input:

40 2198
??????A???N????????ANN???N?C??????C?????

output:

-1

result:

ok correct

Test #119:

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

input:

40 373
???????????C?A?????????A???A?C??????????

output:

NNNNNNNNNNNCNANNNNNNNNNANNNANCNNNNACANCC

result:

ok correct

Test #120:

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

input:

40 744
?????????????????C????????????A????C???N

output:

NNNNNNNNNNNNNNNNNCNNNNNNNNNAANAACCACCCCN

result:

ok correct

Test #121:

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

input:

40 1103
???????????????????????????N????????????

output:

NNNNNNNNNNNNNNNNNNNNNNNNANANAAAAAACCACCC

result:

ok correct

Test #122:

score: 0
Accepted
time: 47ms
memory: 41448kb

input:

40 1866
???????A??????A??A???????????????C??????

output:

NNNNNNNANNNNNNANNANNANAAAAACCCACCCCCCCCC

result:

ok correct

Test #123:

score: 0
Accepted
time: 509ms
memory: 203192kb

input:

40 2466
????????????CN?????????????????N??CA????

output:

-1

result:

ok correct

Test #124:

score: 0
Accepted
time: 31ms
memory: 249180kb

input:

40 1
?????????????????????????????????????NAC

output:

AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANAC

result:

ok correct