(요청)[pwnable.kr] coin2

해킹대회 문제 풀이 연습장소

Moderator: amesianx

Post Reply
gee8195
Posts: 34
Joined: Thu Jul 21, 2016 5:12 pm

(요청)[pwnable.kr] coin2

Post by gee8195 » Fri Oct 28, 2016 4:16 pm

1.png
1.png (8.5 KiB) Viewed 471 times
이번문제는 coin1 문제의 연장선이라 금방 해결할수 있을줄 알았는데 막혔습니다..


2.png
2.png (162.16 KiB) Viewed 471 times
일단 연결해보면 설명은 coin1과 같습니다.
조금의 차이점이 있는데 이번에는 코인의 무게를 (-)dash를 이용해서 비교하라는것 같습니다.
일단 예제처럼 시도를 해보니 위의 결과처럼 확인할 수 있었습니다.
조금 까다로워진건 클라이언트는 send한뒤, 한번만 무게를 확인할 수 있습니다.
coin1에서는 기회만큼 주고받으면서 무게를 확인할 수 있지만 coin2에서는 (-)를 사용해 한번에 모든 기회를
사용한뒤 무게도 기회수만큼 출력해줍니다. 한번 보낼때 그 기회수만큼 보내지 않으면 format error를
출력하고 종료합니다.


3.png
3.png (57.26 KiB) Viewed 471 times
일단 게임의 방식에 맞게 코드를 짜서 적용해봤습니다.
이와같은 방법으로는 그나마 가짜코인이 있는곳의 범위를 줄일수는 있지만,
한번에 가짜코인을 찾아낼수는 없을것 같습니다.
클라이언트가 보낼수 있는 기회가 한번, 무게를 출력해주는것도 한번입니다.
아무리 생각해봐도 한번에 C만큼 정해진 기회를 사용해서 가짜코인을 찾아낼 아이디어가 떠오르질 않습니다. ㅠㅠ

필요한 알고리즘이나 정보가 있다면 조금만 알려주시면 감사하겠습니다 ㅠ

hackhack
Posts: 14
Joined: Mon Sep 26, 2016 1:12 am

Re: (요청)[pwnable.kr] coin2

Post by hackhack » Fri Nov 04, 2016 11:21 pm

이 문제는 한번에 다량의 요청으로 무게들을 알아내고, 그것을 기반으로 가짜 동전을 찾아내는 문제입니다. 아래 N=10일때의 예를 들어서 설명했으니, 참고해서 코딩해 보세요.
asdf.png
asdf.png (28.49 KiB) Viewed 458 times

Post Reply

Who is online

Users browsing this forum: No registered users and 21 guests