問題作成、解説担当:中島 副担当:坪坂、松本

Slides:



Advertisements
Similar presentations
組合せ最適化輪講 2.3 連結性 川原 純. 2.3 連結性 内容 – グラフ上の節点をすべてたどるアルゴリズム 計算機上でのグラフの表現 – 強連結成分を求めるアルゴリズム トポロジカル順序を求める方法も – k- 連結、 k- 辺連結について – 2- 連結グラフの耳分解について.
Advertisements

人工知能 ( Artificial Intelligence ) 状態空間表現と探索 State Space Representation and Search Lecture 2 田中美栄子.
模擬国内予選2013 Problem F テトラ姫のパズル 原案:須藤 解答:大友、須藤 解説:須藤.
プログラミング実習 1 ・ 2 ク ラス 第 2 週目 担当教員 : 渡邊 直樹. 課題 2 ● 2 × 2型行列の固有値, 固有ベクトルを求め る EigMatrix.java というプログラムを作成せ よ。 ● 行列の各要素はコマンド・プロンプトから入力 ● 計算した結果もコマンド・プロンプトに表示.
0章 数学基礎.
J: Magical Switches JAG 模擬地区予選 2013 原案:保坂 解答:保坂・楠本 解説:保坂.
ハノイグラフの生成と最短経路の導出 東京電機大学 理工学部 村田和也 松浦昭洋
配列の宣言 配列要素の初期値 配列の上限 メモリ領域 多次元配列 配列の応用
2009/12/4 グラフ (2) 第10講: 平成21年12月4日 (金) 4限 E252教室 コンピュータアルゴリズム.
データ構造と アルゴリズム 第十二回 知能情報学部 知能情報学科 新田直也.
アルゴリズムとデータ構造 2012年6月27日
Problem J Tile Puzzle 原案:野田 担当:平野,吉田,泉,松本.
C言語 配列 2016年 吉田研究室.
第11回 整列 ~ シェルソート,クイックソート ~
A: Attack the Moles 原案:高橋 / 解説:保坂.
第11回 整列 ~ バケットソート,基数ソート,ヒープソート~
数理科学コース・ 倉田 和浩 2007/11/3 大学祭オープンラボ
5.チューリングマシンと計算.
5.チューリングマシンと計算.
An Algorithm for Enumerating Maximal Matchings of a Graph
原案:阿部 担当:福澤, 笠原 英訳:寺島 解説:福澤
人 工 知 能 第3回 探索法 (教科書21ページ~30ページ)
プログラミング実習 1・2 クラス 第 1 週目 担当教員:  渡邊 直樹.
香川大学工学部 富永浩之 情報数学1 第2-1章 合同式の性質と計算 香川大学工学部 富永浩之
4.2 連立非線形方程式 (1)繰返し法による方法
第11講: 平成18年12月 8日 (金) 4限 E352教室 グラフ (1).
第4章 空間解析 2.ネットワーク分析 (3) ネットワーク構造分析
最短路問題のための LMS(Levelwise Mesh Sparsification)
原案・解説 : 野田 解答 : 野田・吉田 Problem D Futon ~布団~.
第11回 整列 ~ シェルソート,クイックソート ~
法政大学 情報科学部 2008年度「離散数学」講義資料
二分探索木によるサーチ.
シャノンのスイッチングゲームにおけるペアリング戦略について
アルゴリズムとデータ構造 2011年7月4日
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
Ibaraki Univ. Dept of Electrical & Electronic Eng.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
人工知能概論 第2回 探索(1) 状態空間モデル,基本的な探索
WWW上の効率的な ハブ探索法の提案と実装
Problem I: Aaron と Bruce
わんくま同盟茶藝部顧問 Microsoft MVP for VC episthmh
離散数学 07. 木 五島.
類似度を用いた WWW のリンク構造の解析 谷 研究室    栗原 伸行.
変換されても変換されない頑固ベクトル どうしたら頑固になれるか 頑固なベクトルは何に使える?
プログラミング 4 整列アルゴリズム.
プログラミング 4 探索と計算量.
算法数理工学 第8回 定兼 邦彦.
アルゴリズムとデータ構造 第3章 ヒープ 5月31日分
Problem L: シャノワール 問題作成: 高橋 解法作成: 安達・高橋・前原 解説: 安達.
データ構造とアルゴリズム (第5回) 静岡大学工学部 安藤和敏
行列式 方程式の解 Cramerの公式 余因数展開.
アルゴリズムとデータ構造 2012年7月2日
5.チューリングマシンと計算.
アルゴリズムとデータ構造 2011年6月28日
アルゴリズムとデータ構造 2013年7月2日
アルゴリズムとデータ構造 2013年7月8日
2009/11/27 グラフ (1) 第9講: 平成21年11月27日 (金) 4限 E252教室 コンピュータアルゴリズム.
◎小堀 智弘,菊池 浩明(東海大学大学院) 寺田 真敏(日立製作所)
香川大学創造工学部 富永浩之 情報数学1 第2-1章 合同式の性質と計算 香川大学創造工学部 富永浩之
アルゴリズムとデータ構造 2012年6月25日
ヒープソート.
ヒープソート.
参考:大きい要素の処理.
C問題 高所恐怖症 原案・ライタ : 伊藤 テスタ : 青木・西出.
第4章 空間解析 2.ネットワーク分析 (2) 最大流問題
プログラミング入門2 第5回 配列 変数宣言、初期化について
プログラミング入門2 第3回 条件分岐(2) 繰り返し文 篠埜 功.
アルゴリズムとデータ構造 2012年7月9日
プログラミング論 バイナリーサーチ 1.
画像の変更方法
Presentation transcript:

問題作成、解説担当:中島 副担当:坪坂、松本 いけるかな? 問題作成、解説担当:中島 副担当:坪坂、松本

問題の概要 無向グラフが与えられる ある頂点から他の頂点まで決められたステップ数で行けるか ただし、後戻りすることはできない 頂点数、枝数は50まで ステップ数は2^31まで

具体例 goal ステップ数:10 start

前処理 後戻り不可能条件に対応させるため、「現在グラフ上のどこにいるか」を、(現在位置,1ステップ前にいた位置)で表現する。 状態数は枝の数の2倍になる この状態1つ1つを頂点とし、1ステップでの遷移を枝としたグラフを構成する

駄目な回答例(多くの場合では有効な方法) グラフをステップ数倍に拡大した上でのグラフ探索 各頂点を(頂点番号, 残りステップ数)に拡大 (スタート地点, 初期ステップ数)から(ゴール地点, 0)まで到達可能か 幅優先探索をすることで空間計算量はO(M)にはなる ステップ数が非常に大きいためこれでは制限時間内に正解することは不可能!

解法 行列Akの各要素ak_ijを として定義すると、Akは以下の性質がある 頂点iから頂点jへkステップで到達可能な場合:1 到達不可能な場合:0  として定義すると、Akは以下の性質がある A1は元のグラフの隣接行列 AnとAmからA(m+n)が計算可能 よって、行列乗算と同様の方法で、行列の計算回数をlog(Z)回に落とすことができる

知識1 行列Aの各要素a_ijを としたとき、A^Zのij成分がiからjへZステップで移動するための場合の数 接続してしていない場合:0 としたとき、A^Zのij成分がiからjへZステップで移動するための場合の数

知識2 (N×N)の行列AのZ乗はO(N^3*log(Z))で計算することが可能 matrix pow(matrix A, int Z){ if(Z == 1)return A; matrix B = pow(A, Z/2); if(Z % 2 == 0){ return B*B; // O(N^3) } else { return B*B*A; // O(N^3) }

別解 以下の方法でもジャッジデータに対して正解可能 これで解けそうな理由(完全な考察はしていません) 行列Akを毎ステップシミュレーションしてkの値を1つずつふやしながら計算する iステップ目の行列Aiがjステップ目(j<i)の行列と同じになったら、残りステップ数を(j-i)で割った余りにする 以上の2つを残りステップが0になるまで繰り返す これで解けそうな理由(完全な考察はしていません) kを増やしていくと最終的にAkは周期的な動きになりそう 収束までのステップ数はあまり大きくなさそう 1500ステップ以上計算するようなデータを作ることができませんでした

回答状況 Submitted:3 Accepted:1/2 1st Acceptance:Takahashi Shuuhei

コメント 少し知識色の強い問題 しかし、知識2くらいは知っている人が多いはず 想定解法以外でもジャッジデータを通すことは可能 知らなかった人はぜひ覚えましょう 想定解法以外でもジャッジデータを通すことは可能 問題に対して柔軟なアプローチを 解法は1つとは限りません

最後に これでサイコロが1億個になっても大丈夫!