문제 출처:https://www.acmicpc.net/problem/5598
문제 분석
말 그대로 암호화되어있는 Caesar code를 복호화하는 과정입니다. 무척 단순한 암호이기에 A에서 Z까지의 개수(26)를 이용하여 다음과 같이 풀었습니다. 코드는 다음과 같습니다:
#include <iostream>
using namespace std ;
int main(){
ios::sync_with_stdio(false) ;
cin.tie(NULL) ; cout.tie(NULL) ;
string code ;
int gap = 'Z' - 'A' + 1 ;
cin >> code ;
for(auto c : code)
cout << (char)((c-3) < 'A' ? c-3+gap : c-3) ;
return 0 ;
}
해당 문제는 Github에서도 보실 수 있습니다:
https://github.com/gurcks8989/CodingTest/blob/master/BackJoon/HPS/P5598_Caesar_Code.cpp
훈수 및 조언은 언제든 환영입니다.