結果

問題 No.2276 I Want AC
ユーザー square1001
提出日時 2023-04-21 23:03:48
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 405 ms / 2,000 ms
コード長 479 bytes
コンパイル時間 516 ms
コンパイル使用メモリ 12,544 KB
実行使用メモリ 36,096 KB
最終ジャッジ日時 2024-11-06 16:30:34
合計ジャッジ時間 17,085 ms
ジャッジサーバーID
(参考情報)
judge1 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 56
権限があれば一括ダウンロードができます

ソースコード

diff #

n = int(input())
s = input()
s1 = [ 0 ] * (n + 1)
s2 = [ 0 ] * (n + 1)
s3 = [ 0 ] * (n + 1)
for i in range(n):
	s1[i + 1] = s1[i] + (s[i] == 'A')
	s2[i + 1] = s2[i] + (s[i] == 'C')
	s3[i + 1] = s3[i] + (s[i] == '?')
t = list(s)
for i in range(n):
	if s[i] == '?':
		na = s1[i] + s3[i]
		nc = (s2[n] - s2[i + 1]) + (s3[n] - s3[i + 1])
		t[i] = ('A' if na <= nc else 'C')
numa = 0
answer = 0
for i in range(n):
	numa += (t[i] == 'A')
	if t[i] == 'C':
		answer += numa
print(answer)
0