This repository was archived by the owner on Apr 22, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path1034.html
More file actions
62 lines (61 loc) · 8.38 KB
/
1034.html
File metadata and controls
62 lines (61 loc) · 8.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<strong><span style="font-family: Courier New;">ริเวอสิ (Reversi หรือ Othello) </span></strong><span style="font-family: Courier New;">เป็นเกมที่เล่นกระดานขนาด 8x8 ช่อง ที่เล่นโดยผู้เล่นสองคน โดยคนหนึ่งจะใช้หมากสีดำ และอีกคนจะใช้หมากสีขาว การเริ่มการเล่นทุกครั้งจะต้องวางหมากสีดำและหมากสีขาวอย่างละสองตัวตรงกลางตารางดังภาพที่ ๑<br />
<br />
<center><img src="./img/1034/1034-1.gif" alt="" /></center><br />
<br />
ผู้เล่นที่ใช้หมากสีดำจะเป็นผู้เริ่มเล่นก่อนเสมอ โดยการเล่นจะต้องวางหมากลงในตำแหน่งที่มีหมากสีขาวอยู่ตรงกลาง ในแนวนอน แนวตั้ง หรือแนวทะแยงทั้งสองด้าน ซึ่งในรูปที่ ๒ เป็นตำแหน่งที่สีดำสามารถจะวางหมากของตัวเองลงได้<br />
<br />
</span><span style="font-family: Courier New;"><center><img src="./img/1034/1034-2.gif" alt="" /></center></span><br />
<span style="font-family: Courier New;"> <br />
ในรูปที่ ๓ เป็นผลลัพธ์จากการวางหมากที่ตำแหน่ง d3 ซึ่งทำให้หมากสีขาวที่ตำแหน่ง d4 "ถูกจับ" ซึ่งทำให้ หมากสีขาวที่ d4 ถูกเปลี่ยนมาเป็นหมากสีดำ<br />
<br />
</span><span style="font-family: Courier New;"><center><img src="./img/1034/1034-3.gif" alt="" /></center></span><br />
<span style="font-family: Courier New;"> <br />
ทีนี้หมากสีขาวจะเหลือเพียงตัวเดียว รูปที่ ๔ แสดงตำแหน่งที่วางได้ของสีขาว นั่นก็คือจะต้องมีหมากสีดำอย่างน้อยหนึ่งตัวถูกจับในการวางหมากสีขาวครั้งนี้<br />
<br />
</span><span style="font-family: Courier New;"><center><img src="./img/1034/1034-4.gif" alt="" /></center></span><br />
<span style="font-family: Courier New;"> <br />
ในรูปที่ ๕ เป็นการแสดงผลลัพธ์หลังจากที่หมากสีขาวถูกวางหมากที่ c5<br />
<br />
</span><span style="font-family: Courier New;"><center><img src="./img/1034/1034-5.gif" alt="" /></center></span><br />
<span style="font-family: Courier New;"> <br />
นอกจากนี้ ในการวางหมากแต่ละครั้งนั้นอาจทำให้หมากของผู้เล่นฝ่ายตรงข้ามถูกจับได้มากกว่าหนึ่งหมาก หากหมากเหล่านั้นถูกปิดหัวท้าย (ในแนวนอน แนวตั้ง และแนวทแยง) ด้วยหมากสีตรงข้ามกับหมากใหม่ที่ถูกวางลงไป เช่นในรูปที่ ๖ การวางหมากสีขาวในตำแหน่ง d6 จะทำให้หมากสีดำในตำแหน่ง d4 d5 และ e5 ถูกเปลี่ยนเป็นสีขาวทั้งหมด<br />
<br />
</span><span style="font-family: Courier New;"><center><img src="./img/1034/1034-6.gif" alt="" /></center></span><span style="font-family: Courier New;"><br />
<br />
ผู้เล่นก็จะต้องผลัดกันเล่นอย่างนี้ไปเรื่อยๆ ทั้งนี้จะไม่มีผู้เล่นคนใดลงผิดกติกา ถ้าผู้เล่นคนใดไม่สามารถหาที่วางอย่างถูกกติกาได้กะจะผ่านไปให้ผู้เล่นอีกคนเล่นแทน เมื่อจบเกมผู้เล่นที่มีหมากสีของตัวเองมากกว่าจะเป็นผู้ชนะ<br />
<br />
<u><strong>โจทย์</strong></u><br />
จงเขียนโปรแกรมเพื่อรับขั้นตอนการเล่นริเวอสิของผู้เล่นสองคน โดยสีดำเป็นผู้เริ่มเล่นก่อนเสมอ แล้วหาว่าเมื่อวางหมากหมดแล้วตำแหน่งของหมากบนตารางเป็นอย่างไร ทั้งนี้ในข้อมูลทดสอบทุกชุด การวางทุกครั้งจะมีการวางที่ถูกกติกาเสมอ<br />
<br />
<u><strong>ข้อมูลนำเข้า</strong></u><br />
<strong>บรรทัดแรก</strong>เป็นจำนวนหมากทั้งสองสีที่วางในเกมนี้ เป็นจำนวนเต็ม k (1 <= k <= 60)<br />
<strong>บรรทัดที่ 2*i </strong>(1 <= i <= k/2) เป็น ตำแหน่งการวางของหมากสีดำ และ <br />
<strong>บรรทัดที่ 2*i+1</strong> (1 <= i <= k/2) เป็น ตำแหน่งการวางของหมากสีขาวโดยแต่ละบรรทัดจะเป็นตำแหน่งบนกระดานที่จะเอาหมากไปวาง โดยจะประกอบด้วยตัวอักษรหนึ่งตัว ('a'..'h') และจำนวนเต็มหนึ่งค่า (1-8) คั่นด้วยช่องว่าง<br />
<br />
<u><strong>ข้อมูลส่งออก</strong></u><br />
ให้แสดงสถานะของตารางโดยจะมี 8 บรรทัด โดยแต่ละบรรทัดจะแทนข้อมูลแถวที่ 1 ถึงแถวที่ 8 ตามลำดับ และแต่ละบรรทัด จะมีตัวอักขระ 8 ตัวแทนสถานะของแถวนั้น โดยตัวอักขระตัวที่ 1-8 คือข้อมูลของคอลัมน์ a-h ในแต่ละคอลัมน์จะแทนด้วย </span>
<ul>
<li><span style="font-family: Courier New;">'.' (จุดทศนิยม) ถ้าไม่มีหมากใดในช่อง</span></li>
<li><span style="font-family: Courier New;">'X' (ตัวอักษรเอ็กซ์ ตัวพิมพ์ใหญ่)ถ้ามีหมากสีดำอยู่ในช่อง และ</span></li>
<li><span style="font-family: Courier New;">'O' (ตัวอักษรโอ ตัวพิมพ์ใหญ่) ถ้ามีหมากสีขาวในช่องนั้น</span></li>
</ul>
<span style="font-family: Courier New;"> <u><strong>ที่มา</strong></u><strong>: การสอบแข่งขันคณิตศาสตร์และวิทยาศาสตร์โอลิมปิกแห่งประเทศไทย<br />
ประจำปี พ.ศ.2549 (สอบแข่งขันรอบที่ 2 ภาคปฏิบัติวันที่ 2)</strong> </span>
<table>
<tr>
<th>ข้อมูลนำเข้า</th>
<th>ข้อมูลส่งออก</th>
</tr>
<tr>
<td>2
<br />d 3
<br />c 5</td>
<td>........
<br />........
<br />...X....
<br />...XX...
<br />..OOO...
<br />........
<br />........
<br />........</td>
</tr></table>