問題一覧 > 通常問題

No.1455 拡張ROTN

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 通常問題
タグ : / 解いたユーザー数 80
作問者 : cpcznksutbeoacpcznksutbeoa / テスター : shiomusubi496shiomusubi496 NaHCO3_314NaHCO3_314
1 ProblemId : 4824 / 出題時の順位表
問題文最終更新日: 2021-03-31 19:37:36

問題文

文字 $c$ を $1$ つずらすという操作を、次のように定義します。

  • $c$ が英小文字の場合、 $c$ をアルファベット順で $1$ つ後の文字に置き換える。ただし、 $c$ がzの場合、aに置き換える。

  • $c$ が英大文字の場合、 $c$ をアルファベット順で $1$ つ後の文字に置き換える。ただし、 $c$ がZの場合、Aに置き換える。

  • $c$ が数字の場合、 $c$ を数とみて $1$ を足した数に置き換える。ただし、 $c$ が9の場合、CpCzNkSuTbEoAに置き換える。

文字列 $S_0$ が与えられます。$1\leq i\leq N$ を満たす任意の $i$ について、 $S_i$ を $S_{i-1}$ の各文字を $1$ つずつずらしたものとします。
このとき、 $S_0$ と $N$ が与えられるので、 $S_N$ を求めて下さい。

制約

  • $S_0$ は小英文字、大英文字、数字から成る文字列
  • $N$ は整数で与えられる
  • $1\leq |S_0|\leq 100$
  • $0\leq N\leq 10^{18}$

入力

$S_0$
$N$

出力

$S_N$

$S_N$ を一行に出力し、最後に改行してください。

サンプル

サンプル1
入力
CpCzNkSuTbEoA
2
出力
ErEbPmUwVdGqC

$S_1$ はDqDaOlTvUcFpB、 $S_2$ はErEbPmUwVdGqCです。

サンプル2
入力
3141592653589793238ushitapu
7
出力
CpCzNkSuTbEoA8DqDaOlTvUcFpB8ErEbPmUwVdGqCIvIfTqYaZhKuG9FsFcQnVxWeHrDErEbPmUwVdGqCCpCzNkSuTbEoAErEbPmUwVdGqCHuHeSpXzYgJtFIvIfTqYaZhKuGGtGdRoWyXfIsEIvIfTqYaZhKuGCpCzNkSuTbEoA9CpCzNkSuTbEoAHuHeSpXzYgJtFbzopahwb

数字が $10$ 以上になると文字列に変わり、 $9$ 以下だと数字のままであることに気を付けてください。
また、数字が含まれていると $|S_0| < |S_N|$ となることがありますが、この制約下で $|S_N| \leq1300$ であることが証明されます。

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。