목록전체 글 (542)
선릉역 1번 출구
이 문제도 javascript문제다. ctrl+u로 페이지 소스를 확인한다. login.pw.value가 unlock과 같으면 href가 재설정되는 것을 확인할 수 있다. 그래서 unlock의 계산식을 python으로 돌려보니 답이 7809297.1이 나왔다. 이 값을 저 form에 작성해주면 성공이다.
어떤 value를 넣는가?가 핵심이다. 먼저 ctrl+u를 눌러서 페이지 소스를 확인해보자 document.URL은 문서의 URL을 반환하는 속성이다. 여기서 indexOf()함수는 문자열에서 원하는 문자열을 검색하는 함수로 위치값을 index로 반환하는 함수이다. 그래서 https://webhacking.kr/challenge/js-1/여기서 .kr가 나오는 인덱스는 18이기 때문에 18*30 = 540을 input type에 넣어주면 성공이다.
에서 view-source을 누르면 위 코드에서 if(!$_COOKIE['user_lv'])은 쿠키가 없다면 user_lv을 1로 설정해주는 코드이다. 그리고 아래 코드에서 $_COOKIE['user_lv']가 4이상이면 $_COOKIE['user_lv']이 1로 다시 고쳐진다. $_COOKIE['user_lv']이 3보다 크면 solve(1)이 실행되는데 여기서 쿠키 값을 3 < COOKIE < 4로 설정하면 level이 바뀌고 문제를 해결했다.
앙상블 학습(ensemble learning): 정형 데이터를 다루는 데 가장 뛰어난 성과를 내는 알고리즘이다. 랜덤 포레스트(random forest)는 앙상블 학습의 대표 주자 중 하나로 안정적인 성능을 낸다. 부트스트랩: 데이터 세트에서 중복을 허용해 데이터를 샘플링하는 방식 ->부트스트랩 샘플에 포함되지 않고 남는 샘플을 OOB(out of bag)샘플이라고 하는데 이 남는 샘플이 검증 세트의 역할을 할 수 있다. 엑스트라 트리(extra trees)는 랜덤 포레스트와 아주 유사하게 동작한다. 그레이디언트 부스팅(gradient boosting)은 깊이가 얕은 결정 트리를 사용해 이전 트리의 오차를 보완하는 방식이다. 히스토그램 기반 그레이디언트 부스팅(histogram-based gradient..