그리고 문제 설명에 "값이 잘못되었다"라는 맥락이 있다던데, 2^109875 - 1 의 값을 구해서 보내주면 된다고 한다.
그리고 문제 소스코드는 너무 오래 걸려서 pow_plus함수는 안쓴다.
파이썬은 그걸 한줄로 줄여준다! ㄹㄹ
사실 등비수열 합공식을 써서 줄인거다. 원래 함수는..
def pow_plus(x,n):
result = 0
for i in range(0,n+1):
result = result + x*i
return result
인데, 그냥 수학적으로 계산해서 아래에 나온 한 줄로 줄인다.
import socket
x = 2**109876-1
key = x
print (key)
host = '172.30.1.11'
port = 9696
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect((host,port))
s.send(key)
s.recv(1024)
'writeup > 해킹캠프CTF 2014' 카테고리의 다른 글
2014 동계 해킴캠프 미니 CTF - 출제 실패한 문제 (0) | 2014.02.19 |
---|---|
2014 동계 해킹캠프 미니 CTF SleepSleepSleep 문제 풀이 (2) | 2014.02.19 |
2014 동계 해킹캠프 미니 CTF WinRev 풀이 (0) | 2014.02.19 |
2014 동계 해킹캠프 미니 CTF recovery 문제 풀이(python) (0) | 2014.02.19 |