본문 바로가기

전체 글

(638)
[webhacking.kr] 웹해킹.kr old-17번 (100) 이번에는 webhacking.kr의 old-17번 문제입니다. javascript를 이용하는 문제고, 100점이 배점되어 있습니다. 처음 들어가면 login 폼 하나가 존재합니다. 소스 코드를 보겠습니다. unlock 변수는 아주 긴 사칙연산들로 이루어져 있고, sub 함수를 보면 login.pw.value가 unlock이면 문제가 해결될 것 같습니다. 크롬의 Console 창을 열어서 계산을 해보겠습니다. 7809297.1이 결과값입니다. 결과값을 입력하고 check 버튼을 누르면 문제를 해결할 수 있습니다.
[webhacking.kr] 웹해킹.kr old-16번 (100) 이번에는 webhacking.kr의 old-16번 문제입니다. javascript를 이용하는 문제고, 100점이 배점되어 있습니다. 들어가면 위와 같이 별 모양이 출력됩니다. 소스 코드를 보겠습니다. if 문이 몇 개 보입니다. +-50, px 같은 문자들이 붙은 걸로 봐서 출력된 별의 위치를 이동시키는 기능인 것 같습니다. cd라는 변수가 100, 97, 119, 115, 124일 때로 구분되어 있는데, 97을 보니까 아스키코드가 아닐까 생각하였습니다. 100 : d 97 : a 119 : w 115 : s 124 : | if문을 대충 해석해보면 w, a, s, d를 입력하면 별이 상하좌우로 이동하고, | (파이프)를 이용하면 location.href로 어딘가로 이동하는 모양입니다. 방금 발견하였는데 ..
[webhacking.kr] 웹해킹.kr old-34번 (400) 이번에는 webhacking.kr의 old-34번 문제입니다. javascript를 이용하는 문제고 400점이 배점되어 있습니다. 처음 문제에 들어가면, 'debug me' 라는 내용이 포함된 alert 창이 하나 뜹니다. 그 후로는 검은 화면만 출력되고 아무 event도 일어나지 않습니다. 소스코드를 확인하여 보겠습니다. 엄청나게 불친절한 코드 같습니다. 의도적으로 가독성이 안 좋게 만든건지는 모르겠지만.. 일단 코드를 확인하기 위하여 정리를 해주겠습니다. 정리는 구글에 'javascript beautifier'로 검색하면 여러가지의 무료 사이트를 제공해 줍니다. 정리를 해도 여러 함수들과 변수들이 존재하여서, 서로의 연관관계를 확인하기가 어려워 보입니다. 처음 접속했을 때 alert() 함수가 띄워졌..
[백준] 그리디 알고리즘 - 폴리오미노 (1343번) #파이썬 #python 폴리오미노 (1343번) 시간 제한 : 2초 메모리 제한 : 128 MB 문제 민식이는 다음과 같은 폴리오미노 2개를 무한개만큼 가지고 있다. AAAA와 BB 이제 '.'와 'X'로 이루어진 보드판이 주어졌을 때, 민식이는 겹침없이 'X'를 모두 폴리오미노로 덮으려고 한다. 이때, '.'는 폴리오미노로 덮으면 안 된다. 폴리오미노로 모두 덮은 보드판을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 보드판이 주어진다. 보드판의 크기는 최대 500이다. 출력 첫째 줄에 사전순으로 가장 앞서는 답을 출력한다. 만약 덮을 수 없으면 -1을 출력한다. 예제 입력 XXXXXX 예제 출력 AAAABB 해답 board = input() board = board.replace("XXXX", "AAAA") board =..
[백준] 그리디 알고리즘 - 컵홀더 (2810번) #파이썬 #python 컵홀더 (2810번) 시간 제한 : 1초 메모리 제한 : 128 MB 문제 십년이면 강산이 변한다. 강산이네 동네에 드디어 극장이 생겼고, 강산이는 극장에 놀러갔다. 매점에서 콜라를 산 뒤, 자리에 앉은 강산이는 큰 혼란에 빠졌다. 양쪽 컵홀더를 이미 옆 사람들이 차지했기 때문에 콜라를 꽂을 컵 홀더가 없었기 때문이다. 영화를 보는 내내 콜라를 손에 들고 있던 강산이는 극장에 다시 왔을 때는 꼭 콜라를 컵 홀더에 놓겠다는 다짐을 한 후 집에 돌아갔다. 극장의 한 줄에는 자리가 N개가 있다. 서로 인접한 좌석 사이에는 컵홀더가 하나씩 있고, 양 끝 좌석에는 컵홀더가 하나씩 더 있다. 또, 이 극장에는 커플석이 있다. 커플석 사이에는 컵홀더가 없다. 극장의 한 줄의 정보가 주어진다. 이때, 이 줄에 사람들이..