python challenge 1

Posted 2012. 5. 22. 15:01

 

 


파이썬 챌린지 1을 풀었다..

푼지는 좀 됬는데 지금 올리는,,,

everybody thinks twice before solving this.

g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle. sqgle qrpgle.kyicrpylq() gq pcamkkclbcb. lmu ynnjw ml rfc spj. 

 

 

일단 문제는 이렇다..

다행인지 불행인지 모르겠지만 난 처음에 시저함호라는걸 미리 알고 있었다.,.만약 모르고 있었더라면 좀더 생각했을텐데..
 
거기다 보너스로 그림까지도 알파벳이 2칸씩 옮겨지는 힌트를 주고 있다.

파이썬 챌린지를 풀고나서 답은 꼭 봐야된다고 생각한다. 적어도 사람들과 공유정도는 해야겠지,,

왜냐하면 문제가 원하는 답이 분명 있는데 우리는 그 방법대로 안하고 훨씬 돌아가는 경우가 있기 때문이다.

내가 저 문자를 2칸씩 밀기 위해서 쓴 방법이다.

a="g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle. sqgle qrpgle.kyicrpylq() gq pcamkkclbcb. lmu ynnjw ml rfc spj."

b=""

temp=0

for i in a:

temp=ord(i)

if 97<=temp<=122:
    temp+=2
if temp>122:
        temp
-=26

b+=chr(temp)

 

print b






 

 

 

 

 

 


i hope you didnt translate it by hand. thats what computers are for. doing it in by hand is inefficient and that's why this text is so long. using string.maketrans() is recommended. now apply on the url.





읽어보면 maketrans() 를 쓰란다

찾아보니 번역 테이블을 반환? 이렇게 쓰인다고 한다.

그러니까 먼저 테이블을 만들고 또 translate() 라는 함수가 있다고 한다 ㅜ
이 함수는 translate(s,table) 이렇게 쓰일수 있다.
그러니까 문자열 s 에 있는 것을 table 에 맞춰 바꿔준다는 것이다. 만약 s에 'a' 라는 문자가 있는데
테이블을 보니까 a 문자가 있던 자리에 c 가 있으면 a를 c로 바꿔주는 것이다.

따라서
import string => 이게 필요하다.maketrans랑 translate 를 쓰려면
text = "g fmnc wms bgblr rpylqjyrc gr zw fylb. rfyrq ufyr amknsrcpq ypc dmp. bmgle gr gl zw fylb gq glcddgagclr ylb rfyr'q ufw rfgq rcvr gq qm jmle. sqgle qrpgle.kyicrpylq() gq lmu ynnjw ml rfc spj."
string.translate(text,table)




'python > python challenge' 카테고리의 다른 글

python challenge 2  (0) 2012.05.25
python challenge 0  (0) 2012.05.22