😎 κ³΅λΆ€ν•˜λŠ” μ§•μ§•μ•ŒνŒŒμΉ΄λŠ” μ²˜μŒμ΄μ§€?

[BAEKJOON C++] 11655_ROT13 λ³Έλ¬Έ

πŸ¦₯ μ½”ν…Œ/BAEKJOON

[BAEKJOON C++] 11655_ROT13

μ§•μ§•μ•ŒνŒŒμΉ΄ 2023. 8. 17. 09:54
728x90
λ°˜μ‘ν˜•
ROT13은 μΉ΄μ΄μ‚¬λ₯΄ μ•”ν˜Έμ˜ μΌμ’…μœΌλ‘œ μ˜μ–΄ μ•ŒνŒŒλ²³μ„ 13κΈ€μžμ”© λ°€μ–΄μ„œ λ§Œλ“ λ‹€.

예λ₯Ό λ“€μ–΄, "Baekjoon Online Judge"λ₯Ό ROT13으둜 μ•”ν˜Έν™”ν•˜λ©΄ "Onrxwbba Bayvar Whqtr"κ°€ λœλ‹€.
ROT13으둜 μ•”ν˜Έν™”ν•œ λ‚΄μš©μ„ μ›λž˜ λ‚΄μš©μœΌλ‘œ λ°”κΎΈλ €λ©΄ μ•”ν˜Έν™”ν•œ λ¬Έμžμ—΄μ„ λ‹€μ‹œ ROT13ν•˜λ©΄ λœλ‹€. 
μ•žμ—μ„œ μ•”ν˜Έν™”ν•œ λ¬Έμžμ—΄ "Onrxwbba Bayvar Whqtr"에 λ‹€μ‹œ ROT13을 μ μš©ν•˜λ©΄ "Baekjoon Online Judge"κ°€ λœλ‹€.

ROT13은 μ•ŒνŒŒλ²³ λŒ€λ¬Έμžμ™€ μ†Œλ¬Έμžμ—λ§Œ μ μš©ν•  μˆ˜ μžˆλ‹€. 
μ•ŒνŒŒλ²³μ΄ μ•„λ‹Œ κΈ€μžλŠ” μ›λž˜ κΈ€μž κ·ΈλŒ€λ‘œ λ‚¨μ•„ μžˆμ–΄μ•Ό ν•œλ‹€.
예λ₯Ό λ“€μ–΄, "One is 1"을 ROT13으둜 μ•”ν˜Έν™”ν•˜λ©΄ "Bar vf 1"이 λœλ‹€.

λ¬Έμžμ—΄μ΄ μ£Όμ–΄μ‘Œμ„ λ•Œ, "ROT13"으둜 μ•”ν˜Έν™”ν•œ λ‹€μŒ μΆœλ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

μž…λ ₯
첫째 μ€„에 μ•ŒνŒŒλ²³ λŒ€λ¬Έμž, μ†Œλ¬Έμž, κ³΅λ°±, μˆ«μžλ‘œλ§Œ μ΄λ£¨μ–΄μ§„ λ¬Έμžμ—΄ Sκ°€ μ£Όμ–΄μ§„λ‹€.
S의 κΈΈμ΄λŠ” 100을 λ„˜μ§€ μ•ŠλŠ”λ‹€.

좜λ ₯
첫째 μ€„에 Sλ₯Ό ROT13으둜 μ•”ν˜Έν™”ν•œ λ‚΄μš©μ„ μΆœλ ₯ν•œλ‹€.
// [11655] ROT13

/*
ROT13은 카이사λ₯΄ μ•”ν˜Έμ˜ μΌμ’…μœΌλ‘œ μ˜μ–΄ μ•ŒνŒŒλ²³μ„ 13κΈ€μžμ”© λ°€μ–΄μ„œ λ§Œλ“ λ‹€.

예λ₯Ό λ“€μ–΄, "Baekjoon Online Judge"λ₯Ό ROT13으둜 μ•”ν˜Έν™”ν•˜λ©΄ "Onrxwbba Bayvar Whqtr"κ°€ λœλ‹€.
ROT13으둜 μ•”ν˜Έν™”ν•œ λ‚΄μš©μ„ μ›λž˜ λ‚΄μš©μœΌλ‘œ λ°”κΎΈλ €λ©΄ μ•”ν˜Έν™”ν•œ λ¬Έμžμ—΄μ„ λ‹€μ‹œ ROT13ν•˜λ©΄ λœλ‹€. 
μ•žμ—μ„œ μ•”ν˜Έν™”ν•œ λ¬Έμžμ—΄ "Onrxwbba Bayvar Whqtr"에 λ‹€μ‹œ ROT13을 μ μš©ν•˜λ©΄ "Baekjoon Online Judge"κ°€ λœλ‹€.

ROT13은 μ•ŒνŒŒλ²³ λŒ€λ¬Έμžμ™€ μ†Œλ¬Έμžμ—λ§Œ μ μš©ν•  수 μžˆλ‹€. 
μ•ŒνŒŒλ²³μ΄ μ•„λ‹Œ κΈ€μžλŠ” μ›λž˜ κΈ€μž κ·ΈλŒ€λ‘œ 남아 μžˆμ–΄μ•Ό ν•œλ‹€.
예λ₯Ό λ“€μ–΄, "One is 1"을 ROT13으둜 μ•”ν˜Έν™”ν•˜λ©΄ "Bar vf 1"이 λœλ‹€.

λ¬Έμžμ—΄μ΄ μ£Όμ–΄μ‘Œμ„ λ•Œ, "ROT13"으둜 μ•”ν˜Έν™”ν•œ λ‹€μŒ 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

μž…λ ₯
첫째 쀄에 μ•ŒνŒŒλ²³ λŒ€λ¬Έμž, μ†Œλ¬Έμž, 곡백, 숫자둜만 이루어진 λ¬Έμžμ—΄ Sκ°€ 주어진닀.
S의 κΈΈμ΄λŠ” 100을 λ„˜μ§€ μ•ŠλŠ”λ‹€.

좜λ ₯
첫째 쀄에 Sλ₯Ό ROT13으둜 μ•”ν˜Έν™”ν•œ λ‚΄μš©μ„ 좜λ ₯ν•œλ‹€.
*/

#define _CRT_SECURE_NO_WARNINGS
// ν‘œμ€€ μŠ€νŠΈλ¦Όμ—μ„œ 읽기 및 μ“°κΈ°λ₯Ό μ œμ–΄ν•˜λŠ” 개체λ₯Ό μ„ μ–Έ
#include <iostream>
#include <algorithm>    // find
#include <string>
#include <cmath>        // abs
#include <vector>
#include <queue>
using namespace std;

int main() {
	string s;
	getline(cin, s);
	for (int i = 0; i < s.size(); i++) {
		//  μ˜μ–΄ μ•ŒνŒŒλ²³μ„ 13κΈ€μžμ”© λ°€μ–΄μ„œ λ§Œλ“ λ‹€
		if (s[i] >= 'a' && s[i] <= 'z') {
			if ((s[i] + 13) > 'z') {
				// -26을 ν•΄μ„œ 'a'둜 λ§Œλ“€κΈ°
				s[i] -= 13;
			}
			else {
				s[i] += 13;
			}
		}

		if (s[i] >= 'A' && s[i] <= 'Z') {
			if ((s[i] + 13) > 'Z') {
				// -26을 ν•΄μ„œ 'A'둜 λ§Œλ“€κΈ°
				s[i] -= 13;
			}
			else {
				s[i] += 13;
			}
		}
	}
	cout << s;
	return 0;
}

728x90
λ°˜μ‘ν˜•
Comments