提出 #38218856
ソースコード 拡げる
from collections import deque
N, A, B = map(int, input().split())
S = list(input())
def count_cost(st, b): #回文にするコスト
cost = 0
for i in range(len(st) // 2):
if st[i] != st[(i + 1) * (-1)]:
cost += B
return cost
que = deque(S)
max_B = N // 2
result = count_cost(que, B)
for i in range(max_B):
ins = que.popleft()
que.append(ins)
result = min(result, count_cost(que, B) + A * (i + 1))
print(result)
提出情報
| 提出日時 | |
|---|---|
| 問題 | C - Rotate and Palindrome |
| ユーザ | Jone931 |
| 言語 | PyPy3 (7.3.0) |
| 得点 | 300 |
| コード長 | 482 Byte |
| 結果 | AC |
| 実行時間 | 318 ms |
| メモリ | 74612 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 300 / 300 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | 00_sample_01.txt, 00_sample_02.txt |
| All | 00_sample_01.txt, 00_sample_02.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 00_sample_01.txt | AC | 162 ms | 64608 KiB |
| 00_sample_02.txt | AC | 52 ms | 64820 KiB |
| 01_test_01.txt | AC | 318 ms | 74464 KiB |
| 01_test_02.txt | AC | 312 ms | 74584 KiB |
| 01_test_03.txt | AC | 313 ms | 74600 KiB |
| 01_test_04.txt | AC | 310 ms | 74496 KiB |
| 01_test_05.txt | AC | 317 ms | 74496 KiB |
| 01_test_06.txt | AC | 316 ms | 74548 KiB |
| 01_test_07.txt | AC | 315 ms | 74364 KiB |
| 01_test_08.txt | AC | 315 ms | 74520 KiB |
| 01_test_09.txt | AC | 311 ms | 74528 KiB |
| 01_test_10.txt | AC | 313 ms | 74384 KiB |
| 01_test_11.txt | AC | 309 ms | 74612 KiB |
| 01_test_12.txt | AC | 310 ms | 74588 KiB |
| 01_test_13.txt | AC | 311 ms | 74148 KiB |
| 01_test_14.txt | AC | 313 ms | 74580 KiB |
| 01_test_15.txt | AC | 308 ms | 74600 KiB |