題目: UVa - 458 - The Decoder

題目說明

給一個加密後的字串,找出加密的規則並且輸出解密後的字串。

Input: 每行都是一個加密的字串。

Output: 輸出解密後的字串。

解題思路

先觀察 Sample I/O,找一些相同的字比對,可以發現加密方法應該是加上某個偏移量而成。找任意一組字串相減可以知道偏移量為 7,最後對每個字元做偏移即可得到解密後的字串。

參考解法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <bits/stdc++.h>

using namespace std;

static auto __ = []
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
return 0;
}();

int main()
{
string str;
while (getline(cin, str))
{
for (auto& ch : str) ch -= 7;
cout << str << '\n';
}
}