TopCoder

User's AC Ratio

100.0% (2/2)

Submission's AC Ratio

100.0% (2/2)

Tags

Description

凱撒密碼(英語:Caesar cipher),是一種最簡單且最廣為人知的加密技術。凱撒密碼是一種替換加密技術,明文中的所有字母都在字母表上向後按照一個固定數目 $K$ 進行偏移後被替換成密文。例如,當偏移量是 3 的時候,所有的字母 A 將被替換成 DB 變成 EY 將變成 BZ 將變成 C,以此類推。這個加密方法是以羅馬共和時期凱撒的名字命名的,據稱當年凱撒曾用此方法與其將軍們進行聯繫。

—— 改編自維基百科

舉例來說,如果密文是 ABCDE 且決定了 $K = 3$,則密文就會變成 DEFGH。現在,請寫一支程式,給定了一個僅由大寫字母所組成的明文 $S$ 與已知的偏移參數 $K$,請問你可以幫忙加密這份明文並輸出嗎?此外,你必須成功加密出 $N$ 個明文,才算通過。

Input Format

輸入有 $N + 1$ 行。第一行有一個數字 $N(1 \le N \le 10^ 5)$,代表接下來有幾個東西要你加密;接下來的第 $i$ 行有一個字串 $S_i(|S_i| \leq 10^ 5)$ 與加密參數 $K_i(0 \leq K < 26)$。

此外,保證 $\sum |S| \leq 10^ 5$,且所有的 $S_i$ 皆由大寫字母組成。

Output Format

對於每一個輸入,請輸出加密後的密文。

Sample Input 1

5
ABCEFGHIJKLMNOPQRSTUVWXYZ 1
ABCEFGHIJKLMNOPQRSTUVWXYZ 2
ABCEFGHIJKLMNOPQRSTUVWXYZ 3
ABCEFGHIJKLMNOPQRSTUVWXYZ 4
ABCEFGHIJKLMNOPQRSTUVWXYZ 5

Sample Output 1

BCDFGHIJKLMNOPQRSTUVWXYZA
CDEGHIJKLMNOPQRSTUVWXYZAB
DEFHIJKLMNOPQRSTUVWXYZABC
EFGIJKLMNOPQRSTUVWXYZABCD
FGHJKLMNOPQRSTUVWXYZABCDE

Sample Input 2

5
APCSCAMP 7
IOICAMP 1
ITHINKTHEREFOREIAM 4
SHAAAAAAAARK 25
ISCREAMFORSOMEICECREAM 14

Sample Output 2

HWJZJHTW
JPJDBNQ
MXLMROXLIVIJSVIMEQ
RGZZZZZZZZQJ
WGQFSOATCFGCASWQSQFSOA

Hints

Problem Source

Subtasks

No. Testdata Range Constraints Score
1 0~1 範例測資 0
2 0~12 無額外限制 100

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Output Limit (KiB) Subtasks
0 1000 524288 65536 1 2
1 1000 524288 65536 1 2
2 1000 524288 65536 2
3 1000 524288 65536 2
4 1000 524288 65536 2
5 1000 524288 65536 2
6 1000 524288 65536 2
7 1000 524288 65536 2
8 1000 524288 65536 2
9 1000 524288 65536 2
10 1000 524288 65536 2
11 1000 524288 65536 2
12 1000 524288 65536 2