Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Pentomino Farm
Search
USAMI Kosuke
January 24, 2021
Science
1.3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Pentomino Farm
※ Docswell に移行しました
https://www.docswell.com/s/usami-k/ZLL2VQ-pentomino-farm
USAMI Kosuke
January 24, 2021
More Decks by USAMI Kosuke
See All by USAMI Kosuke
Onsager代数とその周辺 / Onsager algebra tsudoi
usamik26
0
700
Apple HIG 正式名称クイズ結果発表 / HIG Quiz Result
usamik26
0
270
ゆめみ大技林製作委員会の立ち上げの話 / daigirin project
usamik26
0
400
@ViewLoadingプロパティラッパの紹介と自前で実装する方法 / @ViewLoading property wrapper implementation
usamik26
0
550
これからUICollectionViewを実践活用する人のためのガイド / Guide to UICollectionView
usamik26
1
820
Xcodeとの最近の付き合い方のはなし / Approach To Xcode
usamik26
2
740
UICollectionView Compositional Layout
usamik26
0
880
Coding Swift with Visual Studio Code and Docker
usamik26
0
590
Swift Extension for Visual Studio Code
usamik26
2
1.1k
Other Decks in Science
See All in Science
コーヒー豆様核 (Coffee-bean nuclei) における形態学的サブタイピングと精選・焙煎特性の同定
jagupath
PRO
0
120
Kritische evaluatie van GenAI-output voor literatuuronderzoek
voginip
0
190
HajimetenoLT vol.17
hashimoto_kei
1
240
機械学習 - 決定木からはじめる機械学習
trycycle
PRO
0
1.5k
データベース02: データベースの概念
trycycle
PRO
2
1.2k
フィードフォワードニューラルネットワークを用いた記号入出力制御系に対する制御器設計 / Controller Design for Augmented Systems with Symbolic Inputs and Outputs Using Feedforward Neural Network
konakalab
0
160
Bear-safety-running
akirun_run
0
170
俺たちは本当に分かり合えるのか? ~ PdMとスクラムチームの “ずれ” を科学する
bonotake
2
2.5k
Distributional Regression
tackyas
0
550
AI bij literatuuronderzoek in de wetenschap
voginip
0
210
TypeScript で WebAssembly を用いた 型安全なプラグイン設計
nagano
2
570
データベース05: SQL(2/3) 結合質問
trycycle
PRO
0
1.2k
Featured
See All Featured
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
410
Navigating Weather and Climate Data
rabernat
0
330
The Spectacular Lies of Maps
axbom
PRO
1
860
Measuring & Analyzing Core Web Vitals
bluesmoon
9
880
The SEO Collaboration Effect
kristinabergwall1
1
500
Context Engineering - Making Every Token Count
addyosmani
9
1k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
650
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
930
Utilizing Notion as your number one productivity tool
mfonobong
4
390
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
630
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
590
Transcript
1/13 ペントミノ牧場パズル 宇佐見 公輔 2021 年 1 月 24 日
宇佐見 公輔 ペントミノ牧場パズル
2/13 自己紹介 職業:プログラマ / 趣味:数学 最近の活動: ルービックキューブ群を SageMath で見る(10 月
/ 日曜数 学会) ルービックキューブと群論(10 月 / 関西日曜数学友の会) 平面の敷き詰めとルート系(6 月 / 日曜数学会) 四元数のはなし(5 月 / 関西日曜数学友の会) 宇佐見 公輔 ペントミノ牧場パズル
3/13 ペントミノ 正方形 5 つを辺どうしを合わせてつなげた形。回転・鏡像で重な るものを同じとみなすと、12 個あります。 宇佐見 公輔 ペントミノ牧場パズル
4/13 ペントミノパズル ペントミノを使ったパズルとして、12 個のピースを並べて平面図 形を作る、というものがもっともよく知られています。 次の図では、6 × 10 の長方形を作っています。 宇佐見
公輔 ペントミノ牧場パズル
5/13 ペントミノパズルの解 一般的に「いくつかのポリオミノを使って特定の平面図形を作る」 という問題に対して、それを解くアルゴリズムが知られています。 (Donald E. Knuth, Dancing links, arXiv
cs/0011047, 2000) このアルゴリズムは SageMath に実装されていて、簡単に使うこ とができます。 (sage.combinat.tiling.TilingSolver クラス) 先ほどの 6 × 10 の長方形の場合、2339 通りの解があります。 宇佐見 公輔 ペントミノ牧場パズル
6/13 ペントミノ牧場 ここでは、ペントミノを使った別のパズル、ペントミノ牧場 (Pentomino farm)を紹介します。12 個のピースを並べて輪を作 ります。囲まれてできる図形の面積の最大値はいくつでしょうか。 宇佐見 公輔 ペントミノ牧場パズル
7/13 ペントミノ牧場の最大値 答えを示してしまいますが、最大値は 128 です。 ペントミノのタイリングパズルではコンピュータを使って解を出 していました。そのため、ペントミノ牧場のパズルもコンピュー タを使うのが良さそうに見えます。 しかし、実は理詰めで最大値が 128
であることを証明することが できます。今回はその概略を説明します。 宇佐見 公輔 ペントミノ牧場パズル
8/13 できる図形の形を考える 矩形を基準として内側にへこんだ形と考えることができます。 矩形は 12 × 12 = 144、へこんだ部分は全部で 17、飛び出ている
部分が 1 です。したがって、144 − 17 + 1 = 128 となります。 宇佐見 公輔 ペントミノ牧場パズル
9/13 周の長さを考える (1) 可能な基準矩形の大きさを考えるために、周の長さを考えます。 各ピースが周をかたちづくるときに、 「他のピースから入ってく る正方形」と「他のピースに出ていく正方形」があります。その 間の「長さ」の最大値がピースごとに決まります。 宇佐見 公輔
ペントミノ牧場パズル
10/13 周の長さを考える (2) 合計すると 5 × 6 + 4 ×
5 + 3 × 1 = 53 です。矩形の周の長さなの で偶数である必要があり、実際には 52 が最大です。 このことから、次のような矩形が基準として考えられます。 13 × 13 の正方形 : 面積は 12 × 12 = 144 です。 14 × 12 の長方形 : 面積は 13 × 11 = 143 です。 15 × 11 の長方形 : 面積は 14 × 10 = 140 です。 1 つのピースだけ最大の長さを使いません。U のピースを長さ 3 とみなして、矩形から飛び出る部分が 1 個生じると考えるのが最 も効率が良いです。 宇佐見 公輔 ペントミノ牧場パズル
11/13 ピースの分類 さらに突っ込んで考えるには「長さ」だけでなく、入ってから出 るまでの「進み」と「寄り」で分類します。 宇佐見 公輔 ペントミノ牧場パズル
12/13 へこみの量 この分類から、基準矩形に対してへこみが 6 と飛び出しが 1 ある ことが分かります。 さらに細かく考えて、辺に置くべきピース、角に置くべきピース を考えると、基準矩形に対して
11 の削りが必要であることが分 かります。 このため、144 − 6 + 1 − 11 = 128 が最大面積であることが導け ます。 宇佐見 公輔 ペントミノ牧場パズル
13/13 参考文献 ペントミノパズル: Donald E. Knuth, Dancing links, arXiv cs/0011047
Tiling Solver - Sage Reference Manual ペントミノ牧場: 島内剛一, ルービック・キューブと数学パズル 宇佐見 公輔 ペントミノ牧場パズル