Codewars 챌린지 4일 차: ROT13

세부



이름 카타: ROT13
5쿠이
설명: NSA에서 내성적인 사람과 외향적인 사람을 어떻게 구분할 수 있습니까? Va gur ryringbef, gur rkgebireg ybbxf ng gur BGURE thl'f ​​fubrf.

USENET에서 이 농담을 찾았지만 요점이 뒤죽박죽입니다. 해독할 수 있을까요? Wikipedia에 따르면 ROT13은 USENET에서 농담을 난독화하는 데 자주 사용됩니다.

힌트: 이 작업에서는 문자만 교체하면 됩니다. 공백, 구두점, 숫자 등이 아닙니다.
예시:

"EBG13 rknzcyr." -->
"ROT13 example."

"This is my first ROT13 excercise!" -->
"Guvf vf zl svefg EBG13 rkprepvfr!"


내 솔루션



자바스크립트




const rot13 = (str) => {
  return str.replace(/[a-z]/giu, (x) => {
    return String.fromCharCode(
      x.charCodeAt() + (
        x.toLowerCase() <= 'm' ? 13: -13
      ));
  });
}


파이썬




def rot13(message: str) -> str:
    rot13 = bytes.maketrans(
        b"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",
        b"nopqrstuvwxyzabcdefghijklmNOPQRSTUVWXYZABCDEFGHIJKLM"
    )
    return message.translate(rot13)

좋은 웹페이지 즐겨찾기