BÀI TẬP 2 [C++]: TÌM PHẦN THƯỞNG

Trong Học kỳ I vừa qua, Tý đạt được danh hiệu học sinh giỏi nên được bố thưởng. Biết Tý là học sinh rất đam mê Toán và Tin học nên bố muốn thử thách Tý bằng một trò chơi có thưởng như sau:

            Bố có rất nhiều hộp khối lập phương giống nhau xếp thành một hàng thẳng và được đánh số ký hiệu bằng các số tự nhiên lẻ bắt đầu từ 1; 3; 5; … Trong các hộp đó có duy nhất 1 hộp đựng phần thưởng, các hộp khác là hộp rỗng. Bố cho Tý biết hộp đựng phần thưởng là hộp chính giữa của một đoạn dài nhất (ít nhất là 3 hộp liên tiếp) có tổng các số ký hiệu ghi trên các hộp bằng số m.

            Yêu cầu: Với số m cho trước, hãy tìm số ký hiệu của hộp có chứa phần thưởng.

            Dữ liệu vào: Đọc ở file văn bản THUONG.INP số nguyên dương m (m <= 1016).

            Dữ liệu ra: Ghi ra file văn bản THUONG.OUT một số k là số ký hiệu của hộp có chứa phần thưởng.

            Ví dụ:

THUONG.INP

THUONG.OUT

45

9

            Giải thích:

            Các hộp được đánh số ký hiệu là 1; 3; 5; 7; 9; 11; 13; 15; 17; 19; 21; 23; 25; …

            Đoạn dài nhất có tổng các số ký hiệu ghi trên hộp bằng 45 là các hộp có số ký hiệu 5; 7; 9; 11; 13. Do đó hộp cần tìm có ký hiệu là 9.

Nhãn:

Đăng nhận xét

[blogger]

Biểu mẫu liên hệ

Tên

Email *

Thông báo *

Được tạo bởi Blogger.
Javascript DisablePlease Enable Javascript To See All Widget