티스토리 뷰
11655번: ROT13
첫째 줄에 알파벳 대문자, 소문자, 공백, 숫자로만 이루어진 문자열 S가 주어진다. S의 길이는 100을 넘지 않는다.
www.acmicpc.net
시도했지만 맞히지 못한 문제에 있길래 풀어봤다.
옛날에 처음 문제를 풀때 못풀고 지나간 문제인가보다.
소문자일때, 대문자일때로 케이스를 나누고,
또 13을 더했을때 'z', 'Z'를 넘으면 넘은만큼 'a', 'A'에서 더해준다.
#include <iostream>
using namespace std;
#include <string>
int main() {
string s;
getline(cin, s);
for(int i = 0; i < s.length(); i++) {
if(s[i] >= 'a' && s[i] <= 'z') { // small letter
int res = s[i] + 13;
if(res > 'z') s[i] = 'a' + res - 'z'-1;
else s[i] = res;
}
else if(s[i] >= 'A' && s[i] <= 'Z') { // big letter
int res = s[i] + 13;
if(res > 'Z') s[i] = 'A' + res - 'Z'-1;
else s[i] = res;
}
}
for(auto x : s) cout << x;
}
'PS' 카테고리의 다른 글
백준 7569. 토마토 (0) | 2021.04.14 |
---|---|
백준 1012. 유기농 배추 (0) | 2021.04.13 |
백준 10875. 피보나치수 5 (0) | 2021.04.06 |
백준 1316. 그룹 단어 체커 (0) | 2021.04.06 |
2941. 크로아티아 알파벳 (0) | 2021.04.06 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- floyd warshall
- Stack
- dfs
- back tracking
- 조합
- C++
- Unity
- priority queue
- 이분탐색
- Dijkstra
- graph
- 재귀
- BFS
- binary search
- Implementation
- DP
- Python
- 자료구조
- C
- recursion
- Kruskal
- CSS
- greedy
- two pointer
- Spring
- db
- MVC
- Tree
- permutation
- Brute Force
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
글 보관함