yukicoder 0018 うーさー暗号

問題文

概要

シーザー暗号的なやつで, $i$ 文字目は $i$ 回シフトしたやつが与えられるので複合しろ.

制約

全部大文字アルファベット, $1024$ 文字以内.

解法

引き算.

ソースコード

1
2
3
4
5
6
7
8
9
10
11
bool solve(){
    string s; cin >> s;
    repsz(i, s){
        int c = s[i] - 'A';
        c -= i+1;
        c = (c % 26 + 26) % 26;
        cout << (char)(c + 'A');
    }
    cout << endl;
    return true;
}
download full source code