문제 분류 수업 진도 대회 채점현황 순위 질문게시판
게임
스도쿠 타이핑 리듬 타자게임 타이핑 테트리스 타이핑 인베이더 타이핑 지뢰찾기 8192 공룡게임 타이핑 플래피버드 랭킹
로그인

7073 : 비즈네르 암호

•시간제한: 1.000 S •메모리제한: 256 MB •제출: 0 •통과: 0 •만든사람: suakii

7073 : 비즈네르 암호

시간 1.000s · 메모리 256MB · 제출 0 · 정답 0

문제 설명

비즈네르 암호(Vigenère Cipher)는 키워드를 반복 사용하는 고전 암호 방식입니다.
암호화 방법: 평문의 각 소문자를 키의 대응 문자만큼 알파벳 순서로 이동시킵니다. (a=0, b=1, ..., z=25, 모듈러 26)
복호화 방법: 암호화의 역연산을 수행합니다.
공백 문자는 암호화/복호화 대상에서 제외하며 그대로 유지합니다.
키 포인터는 공백이 아닌 문자에 대해서만 증가합니다.

[제약 조건]
• 키: 소문자 영문자
• 대상 문자열: 소문자 영문자와 공백

입력 설명

첫째 줄에 모드 E(암호화) 또는 D(복호화)가 주어집니다.
둘째 줄에 키(소문자 영문자)가 주어집니다.
셋째 줄에 대상 문자열(소문자 영문자와 공백으로 구성)이 주어집니다.

출력 설명

암호화 또는 복호화 결과 문자열을 출력합니다.

입력 예시
COPY
복사되었습니다!

E
lemon
attackatzero

출력 예시
COPY
복사되었습니다!

lxfopvefnrcs

도움

암호화: enc = (plain + key_shift) % 26
복호화: dec = (cipher - key_shift + 26) % 26
키의 인덱스는 공백을 제외한 문자에 대해서만 증가시킵니다.

출처/분류

NOTICE  —  BFStudy OJ 정보샘
애들아, 문제 많이 풀고 게임 잠깐 하는거지?
— 정보샘