문제 출처:https://www.acmicpc.net/problem/5598
5598번: 카이사르 암호
가이우스 율리우스 카이사르(Gaius Julius Caesar)는 고대 로마 군인이자 정치가였다. 카이사르는 비밀스럽게 편지를 쓸 때, 'A'를 'D로', 'B'를 'E'로, 'C'를 'F'로... 이런 식으로 알파벳 문자를 3개씩 건
www.acmicpc.net

문제 분석
말 그대로 암호화되어있는 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
GitHub - gurcks8989/CodingTest: CodingTest_study_with_c++
CodingTest_study_with_c++. Contribute to gurcks8989/CodingTest development by creating an account on GitHub.
github.com
훈수 및 조언은 언제든 환영입니다.
문제 출처:https://www.acmicpc.net/problem/5598
5598번: 카이사르 암호
가이우스 율리우스 카이사르(Gaius Julius Caesar)는 고대 로마 군인이자 정치가였다. 카이사르는 비밀스럽게 편지를 쓸 때, 'A'를 'D로', 'B'를 'E'로, 'C'를 'F'로... 이런 식으로 알파벳 문자를 3개씩 건
www.acmicpc.net

문제 분석
말 그대로 암호화되어있는 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
GitHub - gurcks8989/CodingTest: CodingTest_study_with_c++
CodingTest_study_with_c++. Contribute to gurcks8989/CodingTest development by creating an account on GitHub.
github.com
훈수 및 조언은 언제든 환영입니다.