解答・コメントを送る方法

コメントを送るには2つの方法があります。
  • 匿名でコメントを書く
    ログインせずにコメントを書くことができます。 名前は「匿名」となります。
  • アカウントを作成してコメントを書く
    アカウントを作成すると、記名での投稿ができます。 また、プロフィールページが作成され、 簡単なプロフィールや 統計情報が表示されるようになります。
どちらの場合も投稿後の修正・削除はできないので、 投稿前によくご確認下さい。

投稿ボタンを押す前に以下の文章を確認してください

  • 当サイトへの投稿は クリエイティブ・コモンズ・ライセンス BY(表示)および、その解釈に同意するものとみなされます。各ページには下のようにライセンス表示が行われます。
    Creative Commons License このサイトの内容は、 クリエイティブ・コモンズ・ライセンスの下でライセンスされています。 [詳細]
  • あなたの投稿したコード・コメント・トピックが再利用・添削されることを望まない場合は、投稿をお控えください。
  • 自分が書いていない、ウェブサイトや書籍などからの無断コピーは著作権の侵害です。著作権者の了解を得るか、自分で0から書いてください。
  • 著作権の侵害、名誉毀損、など投稿内容に問題がある場合、削除することがあります。
  • これらのことにあなたはあらかじめ同意したものとみなされます。

Post comment

Post a comment to the following challenge: マルバツゲーム (Nested Flatten)

As a reply to the following comment: [1..100]>>=pen: 直線に3個揃っているかの判定を整数計算で...(#6228) [show]

[hide]
直線に3個揃っているかの判定を整数計算ですませる方法。

縦3本、横3本、斜め2本、計8本の直線に素数
2,3,5,7,11,13,17,19
を対応させる。
各マスには通っている直線の素数の積を対応させる。つまり
  2*7*17      2*11        2*13*19
  3*7         3*11*17*19  3*13
  5*7*19      5*11        5*13*17
のように整数を配置する。
  ○(または×)が置いてあるマスの場所の整数すべての積をとって
それが (2*3*5*7*11*13*17*19)^2 を
割り切ったらどの直線でも3個揃っていない、
割り切れなかったらどこかの直線で3個揃っている、
と判定できる。

コードはさかいさんの #6209 の判定関数のインタフェースをお借りしてます。
1
2
3
4
5
6
7
8
9
judgeTable :: Array Pos Integer
judgeTable = array ((0,0), (2,2)) [
  ((0,0), 2*7*17), ((0,1), 2*11      ), ((0,2), 2*13*19),
  ((1,0), 3*7   ), ((1,1), 3*11*17*19), ((1,2), 3*13   ),
  ((2,0), 5*7*19), ((2,1), 5*11      ), ((2,2), 5*13*17)]

win :: Board -> View -> Bool
win b v = (2*3*5*7*11*13*17*19)^2 `mod` pr /= 0 where
  pr = product [judgeTable!p | (p, ox) <- assocs b, ox == Just (v True)]


コメント本文
形式 [?]
コード
言語

タグ
半角スペースで区切って複数のタグを入力できます。
参考ページタイトル

参考ページURL
利用規約を読んで同意する必要があります。
by guest

Index

Feed

Other

Link

Pathtraq

loading...