-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgpcc16.htm
107 lines (79 loc) · 5.21 KB
/
gpcc16.htm
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
<HTML>
<HEAD>
<TITLE>GPCC2016問題</TITLE>
</HEAD>
<BODY>
<H1>GPCC2016問題</H1>
<HR>
<H2><A NAME="g1">それはオレの魚だ!</A></H2>
<P>2~4人で行うボードゲームである。ペンギン型の駒を交互に動かし、足元の魚をより多く奪った方が勝ちとなる。動くごとに足場が崩れていき、だんだん身動きが取れなくなっていく。
<P>最初に、魚の絵が描かれた六角形のタイル60枚をシャッフルして、初期盤面の形に並べる。タイルの内訳は以下の通り。
<UL>
<LI>魚が1匹のタイルが30枚
<LI>魚が2匹のタイルが20枚
<LI>魚が3匹のタイルが10枚
</UL>
<P>一人が担当する駒の数は以下の通り(2016-12-5追加)。
<UL>
<LI>人数2人の場合は駒は4つずつ
<LI>人数3人の場合は駒は3つずつ
<LI>人数4人の場合は駒は2つずつ
</UL>
<P>親から順に駒を1つずつ魚が1匹のタイルの上に置く。全員が駒を置き終わったらゲーム開始。
<UL>
<LI>自分の駒のどれか一つを動かし、今まで載っていたタイルを取り除く(タイルに描かれている魚の数が得点になる)
<LI>動かす先のタイルは、六角形の辺でつながっている6方向のどちらかに好きなだけ進んだところ
<LI>他の駒やタイルがないところは飛び越せない
</UL>
<P>すべての駒が動けなくなったら終了である。動けない駒が乗っているタイルも得点に含める。
<HR>
<H2><A NAME="g2">6 Nimmt!</A></H2>
<P>2~10人で行うカードゲームである。1~104の数字の書かれたカードを使用する。各カードに1~7頭の牛の絵が描かれていて、牛をたくさん集めた人が負けである。
<P>最初に各人に10枚ずつカードを配る(手札)。最初の場札を4枚、縦に並べる。各札から横に列が伸びる。伸びる側の端を「端」と呼ぶ。そして以下を10 ラウンド行う。
<UL>
<LI>全員一斉にカードを出す。
<LI>出されたカードについて、数値の小さい順に、その数値より小さいうちで最大のカードが端にある列につなげる。
<LI>列のカードが6枚になったら、6枚目のカードを置いたプレーヤーがその列の1~5枚目のカードを引き取る(手札には加えない)。
<LI>どこにも置けない数(場の端にある数のうち最小のものより小さい)を出した場合は、出したプレーヤが任意の1列を引き取り、その列に出したカードを置く。
</UL>
絵の牛の数は以下の通り。
<TABLE>
<TR><TD>55<TD>→ 7頭
<TR><TD>11の倍数(55以外)<TD>→ 5頭
<TR><TD>10の倍数<TD>→ 3頭
<TR><TD>上記以外<TD>→ 1頭
</TABLE>
<HR>
<H2><A NAME="g3">ガイスター(継続)</A></H2>
<P>二人で行うボードゲームである。6×6の盤にそれぞれ8個の駒を以下のように配置する。
<PRE>
←▼▼▼▼→ 矢印は出口
・▼▼▼▼・
・・・・・・
・・・・・・
・▲▲▲▲・
←▲▲▲▲→
</PRE>
<P>駒は赤4個、青4個で、相手の駒の色は色は見えない(駒を取ると見られる)。初期配置でどこに赤と青を置くかは自由に決められる。自分の番では駒を前後左右に1マスずつ動かす。相手の駒と同じマスに動かすと、取ることができる。以下のどれかを満たすと勝ちである。
<UL>
<LI>自分の赤い駒を全て相手に取らせる
<LI>相手の青い駒を全て取る
<LI>敵陣の出口に青い駒を置いた状態で自分の番になる(脱出する)
</UL>
<P>千日手を防ぐため、先手後手を合わせて254手目に後手が指して上の条件を満たさなかった場合は、引き分けとします。
<P>対戦できるプログラムを募集する予定です。
<HR>
<H2><A NAME="g4">対戦型2048(継続)</A></H2>
<P>元々は一人で行うゲームだが、ルールを変更して、攻撃側と守備側で戦うようにしたものである。4×4の盤を使う。各マスは空か、2の冪の数が置かれている。攻撃側は好きなマスに2または4を選んで置く(2015年の問題では2のみとしていた)。守備側は上下左右のどれかの向きを選び、すべての数をその方向に動けるだけ動かす。
<UL>
<LI>もし同じ数がその方向に2個並んだ場合は、2倍の数1個に置き換え、空いたマスはつめる。
<LI>3個並んだ場合は、奥の2個を置き換える。
<LI>4個並んでいる場合は、それぞれ2個ずつを置き換える。連鎖はしない。
</UL>
盤が何も変わらない方向を選ぶことはできない。動かせなくなったら(16マスすべて埋まり、縦横に同じ数字がないなら)試合終了である。これを攻守を1回ずつ行い、点数の多い方が勝ちとする。
<P>点数計算は、数を置き換えるたびに、生成された数を守備側の得点として加算するものとする。
<P>対戦できるプログラムを募集する予定ですが、そうではなく、守備側が必ず動かせなくなる攻撃側の手順を見つけてもかまいません。
<HR>
<P style="height:1000px">以下余白</P>
</BODY>
</HTML>