HỘI THI TIN HỌC TRẺ TOÀN QUỐC – 2010
1. Chủ đề
Trò chơi đối kháng “Bắn máy bay trên giấy”
2. Thông tin chung
-Sử dụng chương trình máy tính để giải quyết một bài toán cho trước có liên quan đến thực tế.
-Tại cuộc thi, đề thi sẽ mô tả chi tiết bài toán cần giải quyết, các đội sẽ có thời gian sử dụng máy tính để hoàn thành chương trình giải quyết bài toán dựa trên chương trình đã được chuẩn bị trước ở nhà.
-Thí sinh Trung học phổ thông (bảng C) về dự Hội thi toàn quốc được tổ chức theo đội (mỗi đội có 02 người) mỗi thí sinh sử dụng 1 máy tính, sử dụng ngôn ngữ lập trình Pascal (trên FreePascal) hoặc C/C++ (trên DevC++) làm bài thi trên máy trong thời gian thi là 150 phút.
-Hình thức chấm điểm đối kháng sẽ được sử dụng: Mỗi lượt đấu, chương trình của hai đội sẽ thi đấu với nhau. Các đội sẽ được bắt thăm để đấu với nhau theo hình thức loại trực tiếp.
Trong quá trình chuẩn bị làm bài thi từ nhà, các thí sinh phải thường xuyên cập nhật thông tin liên quan đến bài thi thông qua địa chỉ trang web: www.dstc.org.vn, hoặc khi cần thiết có thể trao đổi với Ban tổ chức qua địa chỉ email: vinhnguyen73@gmail.com, hoặc điện thoại: 04.3.5772351 (đồng chí Nguyễn Sỹ Vinh).
3. Sơ đồ mô tả quá trình chuẩn bị

4. Nội dung thi
4.1Tổng quan
Trò chơi máy bay trên giấy là trò chơi đối kháng gồm hai người chơi. Mỗi người vẽ lên tờ giấy của mình một lưới hình chữ nhật ô vuông. Các dòng được đánh số từ 1 đến từ trên xuống dưới, các cột được đánh số từ 1 đến từ trái qua phải. Ô nằm ở vị trí dòng và cột của lưới được gọi là ô và khi đó, được gọi là toạ độ dòng còn được gọi là toạ độ cột của ô này. Sau đó mỗi người bí mật vẽ lên hình chữ nhật trên tờ giấy của mình một chiếc máy bay theo hình dáng nhất định, có thể đặt nằm ngang hoặc nằm dọc nhưng phải nằm gọn trong lưới hình chữ nhật.

Hình 1. Ví dụ về lưới chữ nhật và cách bố trí máy bay trên lưới.
Sau đó hai người thay nhau lần lượt chơi bắn máy bay: Bắt đầu từ người thứ nhất bắn máy bay bằng cách thông báo cho người thứ hai tọa độ ô bị bắn, giả sử là ô . Nếu trên tờ giấy của người thứ hai ô có chứa máy bay thì người thứ hai phải thông báo cho người thứ nhất là bắn trúng, còn nếu không thì người thứ hai thông báo cho người thứ nhất là bắn trượt và chuyển lượt chơi sang cho người thứ hai. Tương tự như vậy, đến lượt người thứ hai thông báo cho người thứ nhất tọa độ ô được bắn và người thứ nhất thông báo về kết quả. Trò chơi kết thúc khi toàn bộ các ô chứa máy bay của một người nào đó bị bắn và người đó sẽ là người thua cuộc. Để đảm bảo công bằng cho người chơi thứ hai, trong trường hợp máy bay của người chơi thứ hai bị bắn hạ tại lượt chơi của người thứ nhất và tại lượt bắn tiếp theo, người thứ hai cũng bắn hạ được máy bay của người thứ nhất thì trò chơi sẽ kết thúc với kết quả hòa.
4.2. Cách thức thi đấu
Mỗi đội sẽ phải chuẩn bị hai chương trình:
-Chương trình chuẩn bị sẽ sinh ra cách bố trí máy bay của đội mình trên lưới hình chữ nhật
-Chương trình thi đấu để đưa ra chiến thuật bắn máy bay.
Ban tổ chức sẽ tổ chức thi đấu giữa các cặp đấu loại trực tiếp. Mỗi cặp đấu sẽ đấu 5 trận. Đội nào chiến thắng nhiều trận hơn sẽ chiến thắng chung cuộc. Trong trường hợp có kết quả hòa, các trận đấu thêm sẽ được tiến hành từng trận một cho đến khi xác định được đội thắng cuộc. Chương trình của hai đội sẽ giao tiếp với chương trình của ban giám khảo để thi đấu với nhau trên một máy tính. Mỗi trận đấu diễn ra như sau:
-Chương trình của ban giám khảo sẽ gọi chương trình chuẩn bị của hai đội để ghi nhận cách bố trí máy bay của hai đội.
-Sau đó chương trình của ban tổ chức sẽ lần lượt giao tiếp với từng chương trình thi đấu của hai đội để mô phỏng cách chơi như đã mô tả trên đề bài.
-Cuối cùng, chương trình của ban giám khảo sẽ xác định kết quả của trận đấu.
4.3. Định dạng tệp thông tin và cách thức giao tiếp (dự kiến)
Lưu ý: Định dạng tệp thông tin sẽ được mô tả chi tiết trong đề chính thức.
Dữ liệu vào được cho trong tệp văn bản “MAYBAY.INP”, bao gồm một dòng duy nhất chứa hai số nguyên dương m và n(1 <>
Dữ liệu ra của chương trình chuẩn bị được ghi ra tệp văn bản “BOTRI.OUT” với định dạng như sau:
-Dòng đầu tiên chứa hai số nguyên dương x và y là tọa độ của đầu máy bay
-Dòng tiếp theo chứa số nguyên dương d là hướng đặt máy bay (1: từ dưới lên trên, 2: là từ phải sang trái, 3: là từ trên xuống dưới, và 4: là từ trái sang phải).
Chương trình thi đấu của các đội sẽ giao tiếp với chương trình của ban giám khảo thông qua gọi các hàm từ một thư viện do ban giám khảo cung cấp. Mỗi lượt đi, chương trình thi đấu của các đội sẽ gọi hàm xuất từ thư viện với tham số là hai số nguyên dương x, y cách nhau bởi dấu cách mô tả tọa độ của ô bị bắn. Chương trình thi đấu của các đội sau đó sẽ goi hàm nhập từ thư viện để lấy kết quả trả lời từ chương trình của ban giám khảo. Nếu trả lời là Y, có nghĩa là đã bắn trúng; nếu trả lời là N, có nghĩa là đã bắn trượt; và nếu trả lời là Q, có nghĩa là trò chơi kết thúc và chương trình thi đấu của các đội phải kết thúc.
THƯỜNG TRỰC BAN TỔ CHỨC HỘI THI
Trò chơi đối kháng “Bắn máy bay trên giấy”
2. Thông tin chung
-Sử dụng chương trình máy tính để giải quyết một bài toán cho trước có liên quan đến thực tế.
-Tại cuộc thi, đề thi sẽ mô tả chi tiết bài toán cần giải quyết, các đội sẽ có thời gian sử dụng máy tính để hoàn thành chương trình giải quyết bài toán dựa trên chương trình đã được chuẩn bị trước ở nhà.
-Thí sinh Trung học phổ thông (bảng C) về dự Hội thi toàn quốc được tổ chức theo đội (mỗi đội có 02 người) mỗi thí sinh sử dụng 1 máy tính, sử dụng ngôn ngữ lập trình Pascal (trên FreePascal) hoặc C/C++ (trên DevC++) làm bài thi trên máy trong thời gian thi là 150 phút.
-Hình thức chấm điểm đối kháng sẽ được sử dụng: Mỗi lượt đấu, chương trình của hai đội sẽ thi đấu với nhau. Các đội sẽ được bắt thăm để đấu với nhau theo hình thức loại trực tiếp.
Trong quá trình chuẩn bị làm bài thi từ nhà, các thí sinh phải thường xuyên cập nhật thông tin liên quan đến bài thi thông qua địa chỉ trang web: www.dstc.org.vn, hoặc khi cần thiết có thể trao đổi với Ban tổ chức qua địa chỉ email: vinhnguyen73@gmail.com, hoặc điện thoại: 04.3.5772351 (đồng chí Nguyễn Sỹ Vinh).
3. Sơ đồ mô tả quá trình chuẩn bị

4. Nội dung thi
4.1Tổng quan
Trò chơi máy bay trên giấy là trò chơi đối kháng gồm hai người chơi. Mỗi người vẽ lên tờ giấy của mình một lưới hình chữ nhật ô vuông. Các dòng được đánh số từ 1 đến từ trên xuống dưới, các cột được đánh số từ 1 đến từ trái qua phải. Ô nằm ở vị trí dòng và cột của lưới được gọi là ô và khi đó, được gọi là toạ độ dòng còn được gọi là toạ độ cột của ô này. Sau đó mỗi người bí mật vẽ lên hình chữ nhật trên tờ giấy của mình một chiếc máy bay theo hình dáng nhất định, có thể đặt nằm ngang hoặc nằm dọc nhưng phải nằm gọn trong lưới hình chữ nhật.

Hình 1. Ví dụ về lưới chữ nhật và cách bố trí máy bay trên lưới.
Sau đó hai người thay nhau lần lượt chơi bắn máy bay: Bắt đầu từ người thứ nhất bắn máy bay bằng cách thông báo cho người thứ hai tọa độ ô bị bắn, giả sử là ô . Nếu trên tờ giấy của người thứ hai ô có chứa máy bay thì người thứ hai phải thông báo cho người thứ nhất là bắn trúng, còn nếu không thì người thứ hai thông báo cho người thứ nhất là bắn trượt và chuyển lượt chơi sang cho người thứ hai. Tương tự như vậy, đến lượt người thứ hai thông báo cho người thứ nhất tọa độ ô được bắn và người thứ nhất thông báo về kết quả. Trò chơi kết thúc khi toàn bộ các ô chứa máy bay của một người nào đó bị bắn và người đó sẽ là người thua cuộc. Để đảm bảo công bằng cho người chơi thứ hai, trong trường hợp máy bay của người chơi thứ hai bị bắn hạ tại lượt chơi của người thứ nhất và tại lượt bắn tiếp theo, người thứ hai cũng bắn hạ được máy bay của người thứ nhất thì trò chơi sẽ kết thúc với kết quả hòa.
4.2. Cách thức thi đấu
Mỗi đội sẽ phải chuẩn bị hai chương trình:
-Chương trình chuẩn bị sẽ sinh ra cách bố trí máy bay của đội mình trên lưới hình chữ nhật
-Chương trình thi đấu để đưa ra chiến thuật bắn máy bay.
Ban tổ chức sẽ tổ chức thi đấu giữa các cặp đấu loại trực tiếp. Mỗi cặp đấu sẽ đấu 5 trận. Đội nào chiến thắng nhiều trận hơn sẽ chiến thắng chung cuộc. Trong trường hợp có kết quả hòa, các trận đấu thêm sẽ được tiến hành từng trận một cho đến khi xác định được đội thắng cuộc. Chương trình của hai đội sẽ giao tiếp với chương trình của ban giám khảo để thi đấu với nhau trên một máy tính. Mỗi trận đấu diễn ra như sau:
-Chương trình của ban giám khảo sẽ gọi chương trình chuẩn bị của hai đội để ghi nhận cách bố trí máy bay của hai đội.
-Sau đó chương trình của ban tổ chức sẽ lần lượt giao tiếp với từng chương trình thi đấu của hai đội để mô phỏng cách chơi như đã mô tả trên đề bài.
-Cuối cùng, chương trình của ban giám khảo sẽ xác định kết quả của trận đấu.
4.3. Định dạng tệp thông tin và cách thức giao tiếp (dự kiến)
Lưu ý: Định dạng tệp thông tin sẽ được mô tả chi tiết trong đề chính thức.
Dữ liệu vào được cho trong tệp văn bản “MAYBAY.INP”, bao gồm một dòng duy nhất chứa hai số nguyên dương m và n(1 <>
Dữ liệu ra của chương trình chuẩn bị được ghi ra tệp văn bản “BOTRI.OUT” với định dạng như sau:
-Dòng đầu tiên chứa hai số nguyên dương x và y là tọa độ của đầu máy bay
-Dòng tiếp theo chứa số nguyên dương d là hướng đặt máy bay (1: từ dưới lên trên, 2: là từ phải sang trái, 3: là từ trên xuống dưới, và 4: là từ trái sang phải).
Chương trình thi đấu của các đội sẽ giao tiếp với chương trình của ban giám khảo thông qua gọi các hàm từ một thư viện do ban giám khảo cung cấp. Mỗi lượt đi, chương trình thi đấu của các đội sẽ gọi hàm xuất từ thư viện với tham số là hai số nguyên dương x, y cách nhau bởi dấu cách mô tả tọa độ của ô bị bắn. Chương trình thi đấu của các đội sau đó sẽ goi hàm nhập từ thư viện để lấy kết quả trả lời từ chương trình của ban giám khảo. Nếu trả lời là Y, có nghĩa là đã bắn trúng; nếu trả lời là N, có nghĩa là đã bắn trượt; và nếu trả lời là Q, có nghĩa là trò chơi kết thúc và chương trình thi đấu của các đội phải kết thúc.
THƯỜNG TRỰC BAN TỔ CHỨC HỘI THI
Không có nhận xét nào:
Đăng nhận xét