COCI 2016/2017 - Contest 4 - Rekonstruiraj

View as PDF

Submit solution

Points: 1.20 (partial)
Time limit: 2.0s
Memory limit: 128M
Input: stdin
Output: stdout

Suggester:
Problem source:
COCI 2016/2017 - Contest 4
Problem type
Allowed languages
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Trên một mảnh giấy, Mirko viết ra một tập hợp ~N~ số thực với hữu hạn chữ số thập phân. Sau đó, với mỗi số, anh ấy viết ra một cấp số cộng khởi đầu bằng ~0~ với công sai là số đang xét. Ví dụ như nếu số đang xét là ~x~, cấp số cộng tương ứng sẽ là ~0,\:x,\:2x,\:3x,\:4x,\:…~

Trên một mảnh giấy khác, Mirko viết ra tất cả các số trong ~N~ cấp số cộng thu được nằm trong đoạn ~[A,B]~ thành một chuỗi số được sắp xếp theo thứ tự tăng dần và loại bỏ các giá trị trùng lặp.

Tuy nhiên, Mirko vô tình làm mất mảnh giấy đầu tiên và muốn tìm lại tập hợp các số ban đầu dựa trên mảnh giấy thứ hai. Hãy giúp anh ấy!

Input

Dòng đầu tiên chứa một số tự nhiên ~K~ ~(K \leq 50)~, số lượng giá trị khác nhau trong chuỗi số của Mirko nằm trong đoạn ~[A,B]~.

Dòng thứ hai chứa số nguyên ~A~ và ~B~ ~(1 \leq A < B \leq 10^6)~.

~K~ dòng tiếp theo, mỗi dòng chứa một số trong chuỗi (sắp xếp theo thứ tự tăng dần). Các số này được đảm bảo là số thực với không quá 5 chữ số thập phân.

Output

In ra ~N~ dòng (~N~ là kích thước của tập hợp các số ban đầu của Mirko) chứa các số khác nhau trong tập hợp, theo bất kì thứ tự nào.

Nếu có nhiều tập hợp thỏa mãn, in ra tập hợp có kích thước nhỏ nhất (~N~ nhỏ nhất). Nếu vẫn có nhiều tập hợp như vậy, in ra bất kì tập hợp nào thỏa mãn.

Subtask

  • ~5~ test có tất cả giá trị đầu vào là số tự nhiên.
  • ~5~ test còn lại không có ràng buộc gì thêm.

Sample 1

Input
4
1 2
1
1.4
1.5
2
Output
0.5
0.7
Giải thích

Một tập hợp khác thỏa mãn là ~\{0.5, 1.4\}~.

Sample 2

Input
5
10 25
12
13.5
18
20.25
24
Output
6.0
6.75

Comments

Please read the guidelines before commenting.


There are no comments at the moment.