Làm phẳng Bài toán

Một phần của tài liệu Tổng hợp các đề Olympic tin học quốc tế từ năm 1989 đến 2006 (Trang 105 - 107)

- .LCN với chương trình LOGO, PAS với chương trình PASCAL

2. Làm phẳng Bài toán

Bài toán

Một bộ bài được cho bởi N đống, mỗi đống chứa một số quân bàị Xem hình 1. Các đống được ký hiệu từ 1 đến N. Ta định nghĩa một nước đi khi nói p và chỉ ra số m. Khi đó m quân bài sẽ được chuyển từ đống p sang tất cả các đống hàng xóm. Đống p có hai hàng xóm là p-1 và p+1 nếu 1 < p < N, và có một hàng xóm là 2 nếu p=1, một hàng xóm là N-

1 nếu p=N. Để ý rằng nước đi như vậy chỉ tồn tại nếu đống p có ít nhất 2m quân bài nếu p có hai hàng xóm và m quân bài nếu p có một hàng xóm.

Bài tốn đặt ra là "làm phẳng" tất cả các đống sao cho các đống có số quân bài như nhau sau khi sử dụng ít nước đi nhất. Trong trường hợp có nhiều nghiệm chỉ cần chỉ ra 1 trong chúng.

Hình 1. Năm đống với 0, 7, 8, 1 và 4 quân bài

Hình 2. Bộ bài sau nước đi: p=2, m=2

Hạn chế kỹ thuật

  Dữ liệu đã cho bảo đảm rằng để giải quyết bài toán trên phải sử dụng tối đa là 10000 nước đị

  2  N  200

  0  Ci  2000 với Ci là số quân bài ban đầu của đống i với 1 i  N

Input

Input là file text flat.inp có hai dịng

  Dòng đầu tiên: N

  Dịng thứ hai có N số ngun là các giá trị Ci

Output

Output là tệp văn bản flat.out

  Dòng đầu tiên: số các nước đi (gọi số này là M)

  Mỗi dòng tiếp theo trong M dòng: các số tương ứng p, m Số thứ tự các bước đi đúng theo thứ tự các dịng được mơ tả ở trên.

Ví dụ flat.inp 5 0 7 8 1 4 flat.out 5 5 2 3 4 2 4

3 1 4 2

Trắc nghiệm

Chương trình của bạn chỉ được phép chạy trong 3 giâỵ

Để đạt được điểm tối đa A cho các test, số các nước đi của bạn x phải nhỏ hơn số B do chương trình kiểm tra đã rạ Chú ý rằng, giá trị B của chương trình kiểm tra có thể khơng là tối ưụ Thực tế, B được chọn dựa trên một thuật tốn có chiến lược đơn giản với khơng có nước đi nào thừa và phụ thuộc vào giá trị trung bình của các qn bài trong các đống. Bạn có thể đạt điểm theo cách tính sau đây:

Một phần của tài liệu Tổng hợp các đề Olympic tin học quốc tế từ năm 1989 đến 2006 (Trang 105 - 107)