Description
Khôi phục chính xác dãy số nguyên dương ẩn bằng các truy vấn trả về tổng của hai vị trí khác nhau.
Trạng thái cần tìm được bộ tương tác chọn trước khi phiên bắt đầu và không thay đổi trong suốt phiên. Lời giải không được đọc trực tiếp trạng thái này; mọi thông tin chỉ đến từ các phản hồi hợp lệ của giao thức bên dưới.
Interaction
Đọc trước khi hỏi. Truy vấn có dạng ? với và khác ; đáp án cuối có dạng ! . Flush sau mỗi dòng.
Bộ tương tác trả đúng cho mỗi truy vấn hợp lệ. Dòng bắt đầu bằng ! phải chứa đúng số của dãy.
Dãy đúng nhận AC; chỉ cần một phần tử sai nhận WA. Sai cú pháp, sai chỉ số hoặc vượt truy vấn nhận lỗi giao thức. Khi nhận hoặc khi luồng vào kết thúc bất thường, chương trình phải dừng ngay. Mọi dòng truy vấn và đáp án đều phải được đẩy khỏi bộ đệm, chẳng hạn bằng endl hoặc cout.flush() trong C++.
Constraints
- và . Có không quá truy vấn; mọi tổng vừa trong kiểu số nguyên bit.
Scoring
- Subtask
small- điểm: mười hidden session đầu dùng kích thước nhỏ để kiểm tra mô hình giao thức và các trường hợp biên cơ bản. - Subtask
full- điểm: mười hidden session còn lại dùng toàn bộ giới hạn, gồm ít nhất hai session bổ sung cho nhau khi contract có nhiều đại lượng kích thước. - Mỗi hidden session có giá trị điểm. Một session chỉ được tính điểm khi toàn bộ cuộc hội thoại kết thúc với verdict AC.
Example interaction
Mẫu E01
Bộ tương tác -> Lời giải: 3
Lời giải -> Bộ tương tác: ? 1 2
Bộ tương tác -> Lời giải: 137708
Lời giải -> Bộ tương tác: ? 2 3
Bộ tương tác -> Lời giải: 163658
Lời giải -> Bộ tương tác: ? 1 3
Bộ tương tác -> Lời giải: 159696
Lời giải -> Bộ tương tác: ! 66873 70835 92823
Kết quả: AC
Giải thích: Ba tổng được trả về là và . Từ ba phương trình đó lời giải suy ra đúng ba giá trị của dãy mẫu rồi gửi toàn bộ dãy, nên nhận AC.