DOJ logoDOJ
問題
最近追加された問題保存した問題Workbooks
カテゴリDLCコンテストグループチーム掲示板
ランキング
正解数ランキングストリークランキングDOJ Powerランキング
提出状況
問題募集ログイン新規登録
DOJ logoDOJ

OI形式のサブタスク採点、Eloレーティング、Discord認証を備えたオンラインジャッジです。

問題
問題一覧カテゴリ
コミュニティ
コンテストランキング掲示板お知らせ外部のコンテストを開催するガイド
アカウント
ログイン新規登録ジャッジ状態
ポリシー
利用規約DLCの利用規則プライバシーAPI 文書言語ランタイムコンテストの順位報酬レーティングとパフォーマンス
© 2026 DOJ
All rights reserved
解説

Making a Pelindrome

問題に戻る

解説

완성된 문자열을 XXX라고 하자.

길이가 iii인 접두사 X[1..i]X[1..i]X[1..i]가 팰린드롬이면, 그 접두사의 첫 문자와 마지막 문자가 같아야 한다. 따라서 모든 iii (1≤i≤N1 \leq i \leq N1≤i≤N)에 대하여 X1=XiX_1=X_iX1​=Xi​이다. 즉, XXX의 모든 문자는 같아야 한다.

이제 SSS에 이미 적혀 있는 알파벳 대문자만 확인하면 된다.

  • 알파벳 대문자가 하나도 없다면, 공통 문자로 알파벳 대문자 26개 중 아무거나 고를 수 있으므로 답은 262626이다.
  • 적혀 있는 모든 알파벳 대문자가 같다면, 공통 문자는 그 문자로 유일하므로 답은 111이다.
  • 서로 다른 두 알파벳 대문자가 존재한다면, 모든 문자를 같게 만들 수 없으므로 답은 000이다.

각 테스트 케이스를 한 번 순회하면 되므로 시간 복잡도는 O(N)O(N)O(N)이고, 추가 공간 복잡도는 O(1)O(1)O(1)이다.