평면 위의 직선
시간 제한2초메모리 제한1024 MB
매 턴마다 k0와 b0를 골라 k와 b에 더하고, 근의 개수와 부호를 받아 숨겨진 정수 k와 b를 50턴 안에 찾습니다.
문제
몬스터도 공부를 해야 한다. 그래서 드라큘라 백작은 작년에 어린 몬스터들을 위한 학교를 열었다. 이 학교에서는 사회에서의 예절, 사람을 겁주는 방법, 그리고 당연히 수학을 가르친다. 내일 드라큘라는 함수의 그래프, 그중에서도 직선을 다루는 수업을 할 계획이다. 그는 세로로 놓이지 않은 평면 위의 직선은 모두 꼴로 나타낼 수 있다고 설명할 것이다. 하지만 설명만으로는 부족하다고 보고, 수업의 나머지 절반은 학생들이 내용을 더 잘 이해하도록 게임에 쓰기로 했다. 여러 게임 중에서 그는 다음 게임을 골랐다.
작은 몬스터들은 방정식 의 계수가 되는 정수 , (, )를 정하지만, 드라큘라에게는 알려주지 않는다. 드라큘라는 이 두 값을 알아맞혀야 한다. 한 턴에 드라큘라는 정수 , ()를 종이에 적는다. 그러면 몬스터들은 현재 방정식 의 근이 몇 개인지 알려준다. 근이 정확히 하나이면 그 근의 부호도 알려준다. 이후 현재 는 으로, 현재 는 으로 바뀐다.
드라큘라는 학생들 앞에서 체면을 잃고 싶지 않아서 여러분에게 곁에서 도와 달라고 부탁한다. 적절한 , 을 고르는 데 여러분이 도와주어야 한다. 50턴 이하로 몬스터들이 정한 계수 , 를 찾도록 도와라.
힌트
프로그램이 올바르게 동작하려면 출력을 할 때마다 아래 명령을 실행해야 한다.
- Pascal:
flush(output); - C/C++:
fflush(stdout); - Java:
System.out.flush(); - Python:
sys.stdout.flush();
또한 출력한 줄마다 줄바꿈을 넣는 것도 잊지 말아야 한다.