XML

ナンプレ問題自動生成エンジン V2.0

XML

SAVEにより作成した問題をファイルとして保存したり、 LOADにより、問題ファイルを読み出して盤面に示すことができます。

問題ファイルは、データ形式として、XMLになっています。

XMLの詳細についてはここでは省略し、プログラマーズメモの中で示します。

以下に、どのような形になっているかについての例を示します。 実際の問題ファイルでは、改行がほとんど入っていませんが、 問題との対応がつけやすいように適当に改行を加えています。


【例1】
ヒントマス、白マスにも数字を指定して問題の自動生成を行った。

生成された問題

セーブされたファイル: "xmlsample-1.xml"

改行を入れて見やすくしたXML。
生成時に指定した数字が、<hidden>の中に入っている。

<?xml version="1.0" encoding="UTF-8" ?>
<problem size="9" name="Number Place" author="Number Place Generator">
<question difficult="3010">
0 0 3 0 0 0 9 0 0 
0 5 0 2 0 7 0 1 0 
7 0 0 0 1 0 0 0 2 
0 6 0 1 0 0 0 4 0 
0 0 7 0 0 0 2 0 0 
0 1 0 0 0 9 0 3 0 
6 0 0 0 4 0 0 0 3 
0 9 0 8 0 2 0 5 0 
0 0 2 0 0 0 7 0 0
</question>
<constraint diagonal="off">
<group block="on">
1 1 1 2 2 2 3 3 3 
1 1 1 2 2 2 3 3 3 
1 1 1 2 2 2 3 3 3 
4 4 4 5 5 5 6 6 6 
4 4 4 5 5 5 6 6 6 
4 4 4 5 5 5 6 6 6 
7 7 7 8 8 8 9 9 9 
7 7 7 8 8 8 9 9 9 
7 7 7 8 8 8 9 9 9
</group>
</constraint>
<answer>
1 2 3 5 6 8 9 7 4 
4 5 6 2 9 7 3 1 8 
7 8 9 3 1 4 5 6 2 
9 6 5 1 2 3 8 4 7 
8 3 7 4 5 6 2 9 1 
2 1 4 7 8 9 6 3 5 
6 7 8 9 4 5 1 2 3 
3 9 1 8 7 2 4 5 6 
5 4 2 6 3 1 7 8 9
</answer>
<hint>
0 0 1 0 0 0 1 0 0 
0 1 0 1 0 1 0 1 0 
1 0 0 0 1 0 0 0 1 
0 1 0 1 0 0 0 1 0 
0 0 1 0 0 0 1 0 0 
0 1 0 0 0 1 0 1 0 
1 0 0 0 1 0 0 0 1 
0 1 0 1 0 1 0 1 0 
0 0 1 0 0 0 1 0 0
</hint>
<hidden>
1 2 3 0 0 0 0 0 0 
4 5 6 0 0 0 0 0 0 
7 8 9 0 0 0 0 0 0 
0 0 0 1 2 3 0 0 0 
0 0 0 4 5 6 0 0 0 
0 0 0 7 8 9 0 0 0 
0 0 0 0 0 0 1 2 3 
0 0 0 0 0 0 4 5 6 
0 0 0 0 0 0 7 8 9
</hidden>
</problem>

【例2】
サイズ7のジグソーナンプレ。さらに、対角線も指定した。 今回は、初期の数字は指定していない。

以下に、自動生成時の指定と、生成された問題を示す。

セーブされたファイル: "xmlsample-2.xml"

改行を入れて見やすくしたXML。
ジグソー分割が、<group>の中に、ブロック毎に同じ数字で示されている。
対角線の指定は、<constraint>の属性 diagonal="on" で示されている。

<?xml version="1.0" encoding="UTF-8" ?>
<problem size="7" name="Number Place" author="Number Place Generator">
<question difficult="2085">
0 0 0 0 6 0 0 
0 0 0 0 4 5 0 
0 0 0 0 0 1 3 
0 0 0 0 0 0 0 
1 4 0 0 0 0 0 
0 7 1 0 0 0 0 
0 0 2 0 0 0 0
</question>
<constraint diagonal="on">
<group block="on">
1 1 1 2 3 3 3 
4 1 1 2 3 3 3 
4 1 1 2 3 5 5 
4 6 6 2 2 5 5 
4 6 6 2 2 5 5 
4 6 6 7 7 7 5 
4 4 6 7 7 7 7
</group>
</constraint>
<answer>
5 2 4 7 6 3 1 
2 1 3 6 4 5 7 
4 6 7 5 2 1 3 
7 3 5 4 1 6 2 
1 4 6 2 3 7 5 
6 7 1 3 5 2 4 
3 5 2 1 7 4 6
</answer>
<hint>
0 0 0 0 1 0 0 
0 0 0 0 1 1 0 
0 0 0 0 0 1 1 
0 0 0 0 0 0 0 
1 1 0 0 0 0 0 
0 1 1 0 0 0 0 
0 0 1 0 0 0 0
</hint>
<hidden>
0 0 0 0 0 0 0 
0 0 0 0 0 0 0 
0 0 0 0 0 0 0 
0 0 0 0 0 0 0 
0 0 0 0 0 0 0 
0 0 0 0 0 0 0 
0 0 0 0 0 0 0
</hidden>
</problem>

Copyright(C) 2007 Time Intermedia Corporation. All Rights Reserved.

株式会社タイムインターメディア | 自動生成エンジンとは | お問い合わせ | About Us