시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 | 512 MB | 529 | 56 | 39 | 9.375% |
베시는 양의 정수로 이루어진 수열 $A = \{A_1, A_2, \cdots, A_N\}$를 가지고 있다. 이 수열은 다음과 같은 특징을 가진다.
하지만 베시의 컴퓨터가 고장 나 수열의 $N/4$개의 원소에 양의 정수 $k$가 더해졌다. ($1 \leq k \leq 1,000,000,000$)
베시를 위해 수열 $A$의 공차 $a$, 초항 $b$, 그리고 더해진 값 $k$를 구해보자.
첫 번째 줄에 베시가 가지고 있는 수열의 크기를 나타내는 정수 $N$이 주어진다.
채점기는 적응적이지 않다. 즉, 베시의 수열은 채점 데이터에 저장되어 있으며, 실행 중에 생성되거나 변경되지 않는다.
당신은 베시에게 아래와 같은 질문을 최대 200번까지 할 수 있다. 질문 횟수가 200번을 초과하거나 조건을 만족하지 않을 경우 틀렸습니다를 받는다.
? p q
- 수열의 $p~$번째 원소와 $q~$번째 원소의 합을 물어본다. ($1 \leq p, q \leq N,~ p \neq q$, $~p, q$는 정수)정답은 다음과 같이 출력한다.
! a b k
- 공차가 $a$이고 초항이 $b$이며, 더해진 값은 $k$이다. ($1 \leq a, b, k \leq 1,000,000,000$, $~a, b, k$는 정수)각 출력에 대해 개행 문자는 정확히 하나여야 한다. 질문이나 정답을 출력한 다음에는 반드시 표준 출력 버퍼를 flush
해야 하고, 표준 입력 스트림(stdin)
을 통해 질문에 대한 답을 입력받아야 한다.
정답을 출력한 이후에는 다른 출력을 하지 않고 프로그램을 종료해야 한다.
4 12 10 12 16 18 16
? 1 2 ? 1 3 ? 1 4 ? 2 3 ? 2 4 ? 3 4 ! 2 3 4
$a=2,~ b=3,~ k=4$인 경우이며 2번째 원소에 $k$가 더해져 있다.
예제는 인터랙티브 문제의 동작에 대한 이해를 돕기 위한 예시로, 풀이와는 관련이 없다.
언어 별로 표준 출력 버퍼를 flush
하는 방법은 다음과 같다.
fflush(stdout)
std::cout << std::flush
System.out.flush()
sys.stdout.flush()
University > 경북대학교 > 2021 Goricon J번