일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 백준 #10430
- istio #k8s #kubernetes
- jgrp000032 #ocp #
- OCP
- shell #shell script
- 티스토리챌린지
- lvm #lv #vg #pv
- bootstrap #css #CSS
- EKS
- EFK
- Node #POD #Container
- jmap #jstack
- Kafka #카프카
- PODS #POD #pods #pod #파드 #재기동 #롤링재기동 #rolling
- lenova #레노버 #노트북
- test #비교
- Linux #wc
- Excel #엑셀
- 오블완
- DB #mariaDB #SQL
- Python #pakage
- NameSpace #NS
- Swap Memory
- 네트워크 #NW
- dump #jattach
- publishnotreadyaddress
- dify
- CI #CD #CI/CD
- function #사용자 정의 함수
- Grid #CSS
Archives
- Today
- Total
BEOM_IT
[programmers]python 12926 시저암호 본문
728x90
반응형
# 시저암호
# 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다.
# 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다.
# "z"는 1만큼 밀면 "a"가 됩니다. 문자열 s와 거리 n을 입력받아 s를 n만큼 민 암호문을 만드는 함수 return
# 아스키코드
# 문자열을 숫자로 ord()
# 숫자를 문자열로 chr()
# 알파벳은 총 26개
# 대소문자 구분으로 나누자
def solution(s, n):
S=''
print(ord("a"))
# print(ord("z"))
print(ord("A"))
# print(ord("Z"))
for i in s:
if i.isupper():
# 65 = A
S+=chr((ord(i)+n-65)%26+65)
elif i.islower():
# 97 = a
S+=chr((ord(i)+n-97)%26+97)
elif i==' ':
S+=' '
return S
print(solution("xyz",3)) #abc
# print(solution("AB",1)) # BC
# print(solution("z",1)) # a
# print(solution("a B z",4)) # e F d
728x90
반응형
'Algorithm > Python' 카테고리의 다른 글
[programmers] python 86491 최소직사각형 (1) | 2024.06.04 |
---|---|
[programmers]python 12940 최소공배수 최대공약수 (0) | 2024.05.31 |
[programmers]python 12980 점프와 순간이동 (0) | 2024.05.28 |
[programmers]python 12917 문자열 내림차순 배치 (0) | 2024.05.17 |
약수구하기 (0) | 2024.05.09 |