Problem hidden
|This problem was hidden by Editorial Board member probably because it has incorrect language|version or invalid test data, or description of the problem is not clear.|

C11PINES - Growing Pines




yenthanh132 có một vườn thông, vườn thông bao gồm N cây thông xếp theo một đường thẳng. Do được trồng ở khu đất màu mỡ nên các cây thông của anh ta lớn rất nhanh, mỗi ngày mỗi cây thông sẽ tăng thêm d cm chiều cao.

Pines

Giáng sinh sắp tới rồi nên yenthanh132 muốn làm đẹp lại khu vườn của mình, anh ta muốn N cây thông sẽ có chiều cao như nhau, để làm được điều đó anh ta có một loại thuốc ngăn chặn sự phát triển của cây thông, mỗi lần phun thuốc cho 1 cây thông thuốc sẽ có tác dụng làm cho cây thông giữ nguyên chiều cao trong vòng 1 ngày, do thời gian có hạn nên mỗi ngày yenthanh132 chỉ có thể chọn một cây thông trong N cây thông để phun loại thuốc đó, cây thông bị phun thuốc sẽ giữ nguyên chiều cao trong suốt ngày hôm ấy và N-1 cây thông còn lại mỗi cây sẽ tăng thêm d cm chiều cao như bình thường.

Hãy giúp yenthanh132 sắp xếp lịch phun thuốc để N cây thông có chiều cao bằng nhau sau ít ngày nhất. Hoặc nói với yenthanh132 rằng anh ta không thể làm cho N cây thông có chiều cao bằng nhau được.

Input

  • Dòng đầu gồm 2 số nguyên dương: N, d; mỗi số cách nhau 1 dấu cách
  • Dòng tiếp theo có N số nguyên dương, số thứ i là chiều cao của cây thông thứ i.

Output

  • In ra một số nguyên duy nhất là số ngày ít nhất để N cây thông của yenthanh132 có chiều cao như nhau. Trường hợp không thể làm N cây thông có chiều cao như nhau được thì in ra -1

Giới hạn

  • 1 <= d <= 10.
  • Chiều cao của cây thông là 1 số nguyên trong đoạn [1, 109]
  • Trong 20% test đầu có N <= 100.
  • Trong 20% test tiếp theo có N <= 1000.
  • Trong tất cả các test có N <= 10000.

Example

Input:
3 2
1 5 3

Output:
3
Giải thích: Có cách để sau 3 ngày 3 cây thông sẽ có chiều cao như nhau:
- Ngày 1: Phun thuốc vào cây thông thứ 2, chiều cao của 3 cây sau ngày 1 là: 3 5 5
- Ngày 2: Phun thuốc vào cây thông thứ 3, chiều cao của 3 cây sau ngày 2 là: 5 7 5
- Ngày 3: Phun thuốc vào cây thông thứ 2, chiều cao của 3 cây sau ngày 3 là: 7 7 7.
Vậy sau 3 ngày chiều cao của 3 cây thông đã bằng nhau

Được gửi lên bởi:Hacker7
Ngày:2013-12-06
Thời gian chạy:1s
Giới hạn mã nguồn:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Ngôn ngữ cho phép:Tất cả ngoại trừ: ASM64 GOSU PERL6 PYPY RUST SED
Nguồn bài:VOS Round 23 - Lê Yên Thanh

hide comments
2017-01-06 02:38:35 Sơn Tùng M-TP
Điều quan trọng là phải biết lật ngược cách nhìn bài toán.
Thay vì cho các cây cao lên và hãm một cây lại, ta có thể cho tất cả các cây đứng yên và cho 1 cây đi xuống thôi.
Cách nhìn thứ 2 đơn giản hơn.
2014-08-28 20:03:10 No One
code xong mới đọc lại cmt là phải để int64 :P
bài này hay :)
2014-08-28 17:19:38 Nguyễn Ðức Linh
1 đấm ac
2014-06-13 19:00:12 Thcs Ðặng Chánh Kỷ
để tổng thiếu int64 mất ac: thánh nhọ của thứ 6/13
2013-12-17 16:34:48 Nguyễn Hoàng Nam
để ý test để bài (a2-a1) mod d=0 :v gợi ý đến thế thôi k hỏng mất bài này
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.