RSS

 

RSS


プ:枠線も含めてテーブルで持つ

  • いわいまさか
  • at 2014/7/01 19:55:32

プログラム的なアイデア

ペンシルパズルにおいては、マスだけでなく、枠線にも着目するものもある。

数独
 マス内の数字に意味あり

スリザーリンク
  枠線に着目 線をひく/ひかない
  枠線個数指定としてマスも意味あり

プログラムで解こうとしたときにデータの管理を
Masu      masuTable[3,5];
Yokosen  yokosenTable[4,5];
Tatesen  tatesenTable[3,6];
として行うかも。

だが、テーブルが3つもあって多い。
masuTable[2,1]の上の横線データはどこ(=yokosen[?,?])を見ればいいのだっけ?とかちょっと複雑。

そこで、アイデアとしては、
Data  dataTable[7,11]; として、
マスメも横線も縦線もそして十字部分も全部、いっしょにつっこんじゃえばいいじゃん。というもの。

↓図の下側を参考のこと



テーブルが1個だし、
data[3,5]のマスから、その上の横線へは
縦座標を 1個ずらしdata[2,5]にアクセスすればいいわけだし、その点簡単。

縦横の偶奇をみれば、マスなのか縦線なのか何なのか、わかる。
なんならDataの中にその情報も、前処理で、持たせればいい。

enum 種類
{
  マス、
  縦線、
  横線、
  十字
};  

struct Data
{
  種類 kind;
  その他の情報
  ・・・・
};


  • コメント (0)
  • トラックバック (0)
トラックバックURL :
http://www.iwai-masaka.jp/tb.cgi/56095