본문 바로가기
CTF/PythonChallenge

[PCC] PythonChallenge Level 0 problem-solving

by 선인장 🌵 2022. 8. 5.
728x90
728x90

Level 0 problem-solving

pythonchallenge 사이트에 대해서는 간단히 먼저 설명을 했다.

 

[PCC] pythonchallenge? 한번 풀어보자!!!

pythonchallenge? 한번 풀어보자!!! 이리저리 인터넷 서핑 중에 우연히 pythonchallenge라는 사이트를 보게 되었다. The Python Challenge What people have said about us: "These sorts of things are in my opi..

happylie.tistory.com

설명했던 대로 이제 각 Level 별로 어떻게 해결하였는지 정리를 해보도록 하겠다.

일단 Level 0부터 진행하도록 하자.

[PCC] pythonchallenge Level 0 problem-solving

1. 문제 확인

제일 처음으로 풀어보는 Level 0 문제이다.

해당 사이트에 접속하여 "Click here to get challenged"를 클릭하면 바로 아래 주소로 리다이렉트(Redirect)한다.

 

warming up

Hint: try to change the URL address.

www.pythonchallenge.com

1. 문제 확인
1. 문제 확인

일단 문제는 확인하였고 힌트는 "try to change the URL address.(URL 주소를 변경해 보십시오.)"이다.

자 이제 한번 풀어보도록 하자.

728x90

2. 풀이 과정

처음 화면을 보고 힌트를 보았을 때 0.html을 다른 주소로 이동하면 답이 나올 것 같았다.

그래서 바로 0.html1.html로 변경해 보았다.

2. 풀이 과정
2. 풀이 과정

변경하였더니 위와 같이 다른 내용이 보이고 "2**38 is much much larger.(2**38은 훨씬 큽니다.)"라고 확인하였다.

아직 정확한 답을 확인할 수 없어서 두 번째로 1.html238.html로 다시 변경해 보았다.

2. 풀이 과정
2. 풀이 과정

역시 정답은 아니었고, "No... the 38 is a little bit above the 2...(아니요... 38은 2보다 약간 위에 있습니다...)"라고 확인하였다.

"38은 2보다 약간 위에 있다"라는 의미와 이미지에 숫자 간의 높이 간격, 그리고 1.html에서 확인하였던 "2**38"이라는 내용을 보고 2의 거듭제곱(승)에 대한 내용이라는 것을 알 수 있었다.

그럼 2**38(2^38)을 계산하면 274877906944가 나온다.

0.html을 274877906944.html로 한번 변경해 보자.

2. 풀이 과정
2. 풀이 과정

해당 274877906944.html에서 map.html 페이지로 리프레쉬(Refresh) 되면서 Level 1 문제로 이동한다.

위 과정을 통해서 Level 0 문제에 대해서 이렇게 해결을 할 수 있었다.

728x90

3. 문제 풀이

해당 부분은 Python Challenged이며, 해당 사이트 내용을 보면 Python을 통해서 문제 해결이 가능하다고 한다.

2**38(2^38)의 계산 값 또한 Python을 통해서 작성을 할 수 있다.

바로 계산을 할 수도 있고, math 모듈을 통해서 math.pow를 통해서 거듭제곱을 계산할 수 있다.

#!/usr/bin/python
# -*- coding: utf-8 -*-

import math

if __name__ == "__main__":
    answer = 2**38
    print(answer)

    # 2**38
    print(math.pow(2, 38))
    


# OUTPUT
274877906944
274877906944.0

작성한 코드에 대해서는 Github를 통해서 확인할 수 있도록 하였다.

 

GitHub - happylie/pythonchallenge_code: Problem solving code for pythonchallenge.com site

Problem solving code for pythonchallenge.com site. Contribute to happylie/pythonchallenge_code development by creating an account on GitHub.

github.com

물론 앞으로 진행될 많은 문제들은 점점 Python을 이용하여 진행을 해야 할 것이다.

이제 겨우 한 문제 풀었는데 아직 32문제에 대해서 하나하나 고민해보면서 풀어보고 풀었던 내용에 대해서 잘 작성해보도록 하겠다.

728x90
728x90


🌵댓글

 

loading