Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Python
- udemy
- web
- Algorithm
- 백준
- greedy
- String
- graph
- C
- BASIC
- Math
- sorting
- server
- BOJ
- 인프런
- BFS
- 종만북
- C언어
- php
- 생활코딩
- programmers
- 따라하며 배우는 C언어
- Algospot
- Cleancode
- DP
- dfs
- 따배씨
- 정수론
- 따라하면서 배우는 C언어
- JavaScript
Archives
- Today
- Total
몽상실현개발주의
[BOJ] 11655 / ROT13 / Python 파이썬 본문
[BOJ] 11655 / ROT13 / Python 파이썬
https://www.acmicpc.net/problem/11655
11655번: ROT13
첫째 줄에 알파벳 대문자, 소문자, 공백, 숫자로만 이루어진 문자열 S가 주어진다. S의 길이는 100을 넘지 않는다.
www.acmicpc.net
풀이
알파벳을 List 에 담아 index 로 암호화를 구현 하였다.
0~25 를 넘어가는 숫자는 26으로 나눈 나머지 값으로 처리 해 주었다.
asciiCode = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
rot = ""
for s in input():
if s.isalpha():
if s.isupper():
idx = asciiCode.index(s.lower())
idx = (idx + 13)%26
rot += asciiCode[idx].upper()
else:
idx = asciiCode.index(s)
idx = (idx + 13)%26
rot += asciiCode[idx]
else:
rot += s
print(rot)
'Algorithm PS > BOJ' 카테고리의 다른 글
[BOJ] 1158 / 요세푸스 문제 / Python 파이썬 (0) | 2021.05.27 |
---|---|
[BOJ] 11656 / 접미사 배열 / Python 파이썬 (0) | 2021.05.26 |
[BOJ] 10820 / 문자열 분석 / Python 파이썬 (0) | 2021.05.26 |
[BOJ] 10809 / 알파벳 찾기 / Python 파이썬 (0) | 2021.05.25 |
[BOJ] 10808 / 알파벳 개수 / Python 파이썬 (0) | 2021.05.25 |
Comments