SlideShare a Scribd company logo
1 of 66
すべての基本“全探索”
情報理工学コース3年 菊地 翔馬
全探索とは
しらみつぶしにすべての組み合わせを調べ、その中から解をさがす方法。
今回は、基本中の基本
・深さ優先探索(Depth-First Search)
・幅優先探索(Breadth-First Search)
を扱います。
全探索の前に知っておいてほしい知識
その前に、全探索のコードの中で使う考え方やデータ構造
を覚えましょう。
・再帰関数
・スタック(stack)
・キュー(queue)
再帰関数
再帰関数とは、関数の中で同じ関数を呼び出すことを再帰呼び出しといい、再
帰呼び出しをする関数を再帰関数といいます。
例:フィボナッチ数列を計算する関数int fib(int n)
Int fib( int n){
if(n <= 1) return n; //停止条件
return fib(n-1) + fib(n-2); // 関数fibの中で関数fibが呼び出されている
}
fib(0)=0 , fib(1)=1 , fib(2)=1, fib(3)=2 , fib(4)=3 , fib(5)=5 , fib(6)=8 , …
fib(6)の再帰の様子
fib(6)
fib(5)
fib(4)
fib(4)
fib(3)
fib(3)
fib(2)
fib(3) fib(2)
fib(6)の再帰の様子
fib(6)
fib(5)
fib(4)
fib(4)
2
2
1
fib(3) 1
fib(6)の再帰の様子
fib(6)
fib(5)
3
3
2
2
1
2 1
fib(6)の再帰の様子
fib(6)
5
3
3
2
2
1
2 1
fib(6)の再帰の様子
8
5
3
3
2
2
1
2 1
スタックとキュー
次に、深さ優先探索と幅優先探索で用いられているデータ
構造を紹介します。
データ構造って?
そもそもデータ構造とは、計算機でデータを効率よく扱うために、
データの格納の形式がすでにできているもの。中身は配列をうまく
組み合わせたものなので、配列を使って同様のものを実装すること
は可能であるが、C++やJavaでは標準ライブラリが用意されている
ので、楽しく安全に使える。Cだとめんどくさい。
データ構造にはこれから紹介するスタックとキューや他に、リスト、
べクター、マップなどがある。
スタック(stack)
まずは、図のイメージから。
push poppush
push poppop
スタック
本A 本A
本B
本A
本C
本A 本A
出された本の順番は
① ③②
本B 本A本C
スタック(stack)
スタックは、pushとpopという二つの操作ができるデータ構造。Pushはスタック
の一番上にデータを積む操作。Popは逆にスタックの一番上からデータを取り
出す操作。つまり、最後に入れた要素が最初に出てくる。(これをLIFO:Last In
First Outと呼ぶ。)
push
本A
pop
本A
本B
本A
キュー(queue)
まずは、図のイメージから。
push poppush
push poppop
キュー
本A
本B
本A
本C
本B
本B 本C
出された本の順番は
① ③②
本B本A 本C
キュー(queue)
キューはスタックと同じように、pushとpopができるデータ構造。スタックと異なるのは、popが一
番上から取り出すのではなく、一番下から取り出す部分。つまり最初に入れたものが最初に出
てくる。(これをFIFO:First In First Outと呼ぶ。)
pop
本B
本A 本B
push
本A
再帰、スタック、キューの練習問題
再帰
最大公約数を求める
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ALDS1_1_B&lang=jp
フィボナッチ数列
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ALDS1_10_A
スタック
電車車両入替え
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0013&lang=jp
逆ポーランド記法
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ALDS1_3_A&lang=jp
キュー
ラウンドロビンスケジューリング
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ALDS1_3_B&lang=jp
深さ優先探索(Depth-First Search)
深さ優先(DFS: Depth-First Search)とは、グラフの探索ア
ルゴリズムの一つです。
AOJ 0030 Sum of Integers
問題 制限時間1sec
n個の異なる数字で合計がsになるような組み合わせの数を出力せよ。ただし、各数字は0から9で
あるとする。(1≤n≤ 9、0≤s≤100)
例: n = 3、s = 6の時は
1 + 2 + 3 = 6
0 + 1 + 5 = 6
0 + 2 + 4 = 6
の3通りなので、答えは3。
どうやって解く?
素直な解法
各数字に対して、ループ文を回して探す。
For i= 0 to 9
For j = 0 to 9
For k = 0 to 9
…
if i + j + k + …. == s then ans++
Return ans
これだと10 𝑛回計算することになるので、最悪で109回計算することになる。実はこれ1秒じゃ終
わらない・・・。 1秒は107 〜108回くらい。
1
2
3
4 5
6
7
8
9 10
11
状態の遷移の順番
深さ優先探索(Depth-First Search)
ある状態から出発し、遷移できなくなるまで状態を進めて
いき、遷移できなくなったら1つ前の状態に戻るということを
繰り返して解を見つける。
一番はじめの状態から遷移を繰り返せば、たどり着ける全
ての状態を見ることになります。したがって、全ての状態に
対して操作を施したり、全状態を列挙したりできます。
DFSはスタックを(暗に)使っている
DFSを書くとき、コードの中にスタックが出てくることはない
のですが、DFSでスタックを使ってる様子を図で見て見ま
しょう。
考え方は、あるノードを探索したら、そこからいける全ての
ノードをスタックに入れ、また先頭のノードを探索していきま
す。
push
1
pop
1
1
2 7
3 6
4 5
8
9 10
11
push
1
pop
2,7
7
2
1
2 7
3 6
4 5
8
9 10
11
push pop
2
7
6
3,6
3
1
2 7
3 6
4 5
8
9 10
11
push
4,5
7
6
5
3
4
pop
1
2 7
3 6
4 5
8
9 10
11
pushpush
7
6
5
4
pop
1
2 7
3 6
4 5
8
9 10
11
pushpush
7
6
5
pop
1
2 7
3 6
4 5
8
9 10
11
pushpush
7
6
pop
1
2 7
3 6
4 5
8
9 10
11
pushpush
11
8
7
pop
8,11
1
2 7
3 6
4 5
8
9 10
11
pushpush
11
10
8
pop
9,10
9
1
2 7
3 6
4 5
8
9 10
11
pushpush
11
10
9
pop
1
2 7
3 6
4 5
8
9 10
11
pushpush
11
10
pop
1
2 7
3 6
4 5
8
9 10
11
pushpush
11
pop
1
2 7
3 6
4 5
8
9 10
11
depth=3,s=3,n=1
depth=2,s=5,n=2
depth=1,s=6,n=3
depth=0,s=6,n=3
・・・0
・・・1
・・・2
・・・3
depth=4,s=0,n=0
計算量のお話
0〜9の数字をそれぞれ、選ぶ、選ばないという状態がある
ので、状態数は2 𝑛+1
− 1なのでO(2 𝑛
)になります。
今回だと大きくても210
回なので大丈夫
ここで状態数とは、さっきのグラフの○の数のこと。
計算量のお話
深さ優先探索や幅優先探索は、全ての状態を探索するの
で、計算量はO(|V|)になる。|V|は頂点数。
計算量のお話
そもそも計算量とは?
→問題を解くのにどれくらいの計算をするか。
競技プログラミングではプログラム自体の速度も重要になるので必要な計算。自分で計算して
プログラムが制限時間以内に間に合うかどうかを見積もる。
O(N),O(logN),O(𝑁2),O(2 𝑛)とか書くことが多い。
教養の微積分学でランダウの記号をやったと思うけどそれと同じ感じ。
X→∞の時、f(x) = 3𝑥2 + 4x+ 5 は
f(x) = O(𝑥2)
である。
DFSを使って解く問題
Sum of Intager
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0030&lang=jprs
Ball
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0033
Split Up!
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1045
幅優先探索(Breadth-First Search)
幅優先探索(BFS:Breadth-First Search)も、グラフの探索ア
ルゴリズムの一つです。
1
2
4
8 9
5
3
6
10 11
7
状態の遷移の順番
幅優先探索(Breadth-First Search)
ある状態から出発し、近いところから状態を進めていく。
つまり、
最短1回の遷移でたどり着ける状態
↓
最短2回の遷移でたどり着ける状態
↓
最短3回の遷移でたどり着ける状態
↓
:
という順に探索します。
BFSはキューを使う
DFSでは、スタックは書かなくても良いのですが、BFSの場合
はキューを書く必要があります。なのでCだとつらい。
ただ、考え方はDFSと同じで、あるノードを探索したら、そこ
からいける全てのノードをキューに入れ、また先頭のノード
を探索していきます。
push
1
pop
1
1
2 3
4 5
8 9
6
10 11
7
push
2
pop
2,3 1
3
1
2 3
4 5
8 9
6
10 11
7
push
3
pop
4,5 2
4
5
1
2 3
4 5
8 9
6
10 11
7
push
4
pop
6,7 3
5
6
7
1
2 3
4 5
8 9
6
10 11
7
push
5
pop
8,9 4
6
7
8
9
1
2 3
4 5
8 9
6
10 11
7
push
6
pop
5
7
8
9
1
2 3
4 5
8 9
6
10 11
7
push
7
pop
6
8
9
10
11
10,11
1
2 3
4 5
8 9
6
10 11
7
push
8
pop
7
9
10
11
1
2 3
4 5
8 9
6
10 11
7
push
9
pop
8
10
11
1
2 3
4 5
8 9
6
10 11
7
push
10
pop
9
11
1
2 3
4 5
8 9
6
10 11
7
push
11
pop
10
1
2 3
4 5
8 9
6
10 11
7
push pop
11
1
2 3
4 5
8 9
6
10 11
7
二次元配列のようなものも解ける!!
問題:迷路の最短路
大きさがN×Mの迷路が与えられます。迷路は壁と通路からできており、1ターンに隣接する上
下左右4マスの通路へ移動することができます。スタートからゴールまで移動するのに必要な
最小のターン数を求めなさい。
入力例:N=10,M=10
入力例: #,.,S,Gはそれぞれ、壁、通路、スタート、ゴール
N=10,M=10
#S######.#
......#..#
.#.##.##.#
.#........
##.##.####
....#....#
.#######.#
....#.....
.####.###.
....#...G#
計算量
状態数は各マスのことなので、N×M。Loopごとに4方向のfor文を回すので4NM。
よってO(NM)になる。
BFSを使って解く問題
Seven Puzzle
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0121
Stray Twins
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0223
Mysterious Worm
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0179
Amazing Mazes
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1166&lang=jp

More Related Content

What's hot

CUDAのアセンブリ言語基礎のまとめ PTXとSASSの概説
CUDAのアセンブリ言語基礎のまとめ PTXとSASSの概説CUDAのアセンブリ言語基礎のまとめ PTXとSASSの概説
CUDAのアセンブリ言語基礎のまとめ PTXとSASSの概説Takateru Yamagishi
 
Parser combinatorってなんなのさ
Parser combinatorってなんなのさParser combinatorってなんなのさ
Parser combinatorってなんなのさcct-inc
 
STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)
STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)
STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)Hiro H.
 
実環境にTerraform導入したら驚いた
実環境にTerraform導入したら驚いた実環境にTerraform導入したら驚いた
実環境にTerraform導入したら驚いたAkihiro Kuwano
 
C#や.NET Frameworkがやっていること
C#や.NET FrameworkがやっていることC#や.NET Frameworkがやっていること
C#や.NET Frameworkがやっていること信之 岩永
 
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)NTT DATA Technology & Innovation
 
SSE4.2の文字列処理命令の紹介
SSE4.2の文字列処理命令の紹介SSE4.2の文字列処理命令の紹介
SSE4.2の文字列処理命令の紹介MITSUNARI Shigeo
 
マスター・オブ・Reflectパッケージ
マスター・オブ・Reflectパッケージマスター・オブ・Reflectパッケージ
マスター・オブ・ReflectパッケージTakuya Ueda
 
WebSocketのキホン
WebSocketのキホンWebSocketのキホン
WebSocketのキホンYou_Kinjoh
 
PostgreSQLの実行計画を読み解こう(OSC2015 Spring/Tokyo)
PostgreSQLの実行計画を読み解こう(OSC2015 Spring/Tokyo)PostgreSQLの実行計画を読み解こう(OSC2015 Spring/Tokyo)
PostgreSQLの実行計画を読み解こう(OSC2015 Spring/Tokyo)Satoshi Yamada
 
中3女子でもわかる constexpr
中3女子でもわかる constexpr中3女子でもわかる constexpr
中3女子でもわかる constexprGenya Murakami
 
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門masayoshi takahashi
 
今から始める Lens/Prism
今から始める Lens/Prism今から始める Lens/Prism
今から始める Lens/PrismNaoki Aoyama
 
並列クエリを実行するPostgreSQLのアーキテクチャ
並列クエリを実行するPostgreSQLのアーキテクチャ並列クエリを実行するPostgreSQLのアーキテクチャ
並列クエリを実行するPostgreSQLのアーキテクチャKohei KaiGai
 
なかったらINSERTしたいし、あるならロック取りたいやん?
なかったらINSERTしたいし、あるならロック取りたいやん?なかったらINSERTしたいし、あるならロック取りたいやん?
なかったらINSERTしたいし、あるならロック取りたいやん?ichirin2501
 
LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)
LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)
LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)Takeshi Yamamuro
 
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京Koichi Hamada
 
プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~Takuya Akiba
 

What's hot (20)

CUDAのアセンブリ言語基礎のまとめ PTXとSASSの概説
CUDAのアセンブリ言語基礎のまとめ PTXとSASSの概説CUDAのアセンブリ言語基礎のまとめ PTXとSASSの概説
CUDAのアセンブリ言語基礎のまとめ PTXとSASSの概説
 
Parser combinatorってなんなのさ
Parser combinatorってなんなのさParser combinatorってなんなのさ
Parser combinatorってなんなのさ
 
STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)
STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)
STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)
 
実環境にTerraform導入したら驚いた
実環境にTerraform導入したら驚いた実環境にTerraform導入したら驚いた
実環境にTerraform導入したら驚いた
 
C#や.NET Frameworkがやっていること
C#や.NET FrameworkがやっていることC#や.NET Frameworkがやっていること
C#や.NET Frameworkがやっていること
 
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
 
SSE4.2の文字列処理命令の紹介
SSE4.2の文字列処理命令の紹介SSE4.2の文字列処理命令の紹介
SSE4.2の文字列処理命令の紹介
 
マスター・オブ・Reflectパッケージ
マスター・オブ・Reflectパッケージマスター・オブ・Reflectパッケージ
マスター・オブ・Reflectパッケージ
 
WebSocketのキホン
WebSocketのキホンWebSocketのキホン
WebSocketのキホン
 
PostgreSQLの実行計画を読み解こう(OSC2015 Spring/Tokyo)
PostgreSQLの実行計画を読み解こう(OSC2015 Spring/Tokyo)PostgreSQLの実行計画を読み解こう(OSC2015 Spring/Tokyo)
PostgreSQLの実行計画を読み解こう(OSC2015 Spring/Tokyo)
 
C++の黒魔術
C++の黒魔術C++の黒魔術
C++の黒魔術
 
中3女子でもわかる constexpr
中3女子でもわかる constexpr中3女子でもわかる constexpr
中3女子でもわかる constexpr
 
何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門
 
Glibc malloc internal
Glibc malloc internalGlibc malloc internal
Glibc malloc internal
 
今から始める Lens/Prism
今から始める Lens/Prism今から始める Lens/Prism
今から始める Lens/Prism
 
並列クエリを実行するPostgreSQLのアーキテクチャ
並列クエリを実行するPostgreSQLのアーキテクチャ並列クエリを実行するPostgreSQLのアーキテクチャ
並列クエリを実行するPostgreSQLのアーキテクチャ
 
なかったらINSERTしたいし、あるならロック取りたいやん?
なかったらINSERTしたいし、あるならロック取りたいやん?なかったらINSERTしたいし、あるならロック取りたいやん?
なかったらINSERTしたいし、あるならロック取りたいやん?
 
LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)
LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)
LLVMで遊ぶ(整数圧縮とか、x86向けの自動ベクトル化とか)
 
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
 
プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~
 

Viewers also liked

Viewers also liked (17)

Meet inthemiddle
Meet inthemiddleMeet inthemiddle
Meet inthemiddle
 
Binary indexed tree
Binary indexed treeBinary indexed tree
Binary indexed tree
 
Topological sort
Topological sortTopological sort
Topological sort
 
ACPC2016Day3:C問題
ACPC2016Day3:C問題ACPC2016Day3:C問題
ACPC2016Day3:C問題
 
ACPC2016Day3:G問題
ACPC2016Day3:G問題ACPC2016Day3:G問題
ACPC2016Day3:G問題
 
ACPC2016Day3:D問題
ACPC2016Day3:D問題ACPC2016Day3:D問題
ACPC2016Day3:D問題
 
ACPC2016Day3:F問題
ACPC2016Day3:F問題ACPC2016Day3:F問題
ACPC2016Day3:F問題
 
ACPC2016Day3:E問題
ACPC2016Day3:E問題ACPC2016Day3:E問題
ACPC2016Day3:E問題
 
C pub
C pubC pub
C pub
 
G pub
G pubG pub
G pub
 
F pub
F pubF pub
F pub
 
A pub
A pubA pub
A pub
 
二分探索をはじめからていねいに
二分探索をはじめからていねいに二分探索をはじめからていねいに
二分探索をはじめからていねいに
 
動的計画法を極める!
動的計画法を極める!動的計画法を極める!
動的計画法を極める!
 
D pub
D pubD pub
D pub
 
B pub
B pubB pub
B pub
 
E pub
E pubE pub
E pub
 

More from HCPC: 北海道大学競技プログラミングサークル

More from HCPC: 北海道大学競技プログラミングサークル (20)

写像 12 相
写像 12 相写像 12 相
写像 12 相
 
ACPC 2017 Day3 F: 掛け算は楽しい
ACPC 2017 Day3 F: 掛け算は楽しいACPC 2017 Day3 F: 掛け算は楽しい
ACPC 2017 Day3 F: 掛け算は楽しい
 
ACPC 2017 Day3 D: 優柔不断
ACPC 2017 Day3 D: 優柔不断ACPC 2017 Day3 D: 優柔不断
ACPC 2017 Day3 D: 優柔不断
 
ACPC 2019 Day3 G: Restricted DFS
ACPC 2019 Day3 G: Restricted DFSACPC 2019 Day3 G: Restricted DFS
ACPC 2019 Day3 G: Restricted DFS
 
ACPC 2019 Day3 F: 部分文字列分解
ACPC 2019 Day3 F: 部分文字列分解ACPC 2019 Day3 F: 部分文字列分解
ACPC 2019 Day3 F: 部分文字列分解
 
ACPC 2019 Day3 E: 総和の切り取り
ACPC 2019 Day3 E: 総和の切り取りACPC 2019 Day3 E: 総和の切り取り
ACPC 2019 Day3 E: 総和の切り取り
 
ACPC 2019 Day3 B: パフェ
ACPC 2019 Day3 B: パフェACPC 2019 Day3 B: パフェ
ACPC 2019 Day3 B: パフェ
 
ACPC 2019 Day3 A: 間違い探し
ACPC 2019 Day3 A: 間違い探しACPC 2019 Day3 A: 間違い探し
ACPC 2019 Day3 A: 間違い探し
 
HUPC 2019 Day2 G: 木
HUPC 2019 Day2 G: 木HUPC 2019 Day2 G: 木
HUPC 2019 Day2 G: 木
 
HUPC 2019 Day2 E: ジャム
HUPC 2019 Day2 E: ジャムHUPC 2019 Day2 E: ジャム
HUPC 2019 Day2 E: ジャム
 
HUPC 2019 Day2 H: Revenge of UMG
HUPC 2019 Day2 H: Revenge of UMGHUPC 2019 Day2 H: Revenge of UMG
HUPC 2019 Day2 H: Revenge of UMG
 
HUPC 2019 Day2 F: MOD Rush
HUPC 2019 Day2 F: MOD RushHUPC 2019 Day2 F: MOD Rush
HUPC 2019 Day2 F: MOD Rush
 
HUPC 2019 Day2 C: 串刺し
HUPC 2019 Day2 C: 串刺しHUPC 2019 Day2 C: 串刺し
HUPC 2019 Day2 C: 串刺し
 
HUPC 2019 Day1 F: グリッドの番号
HUPC 2019 Day1 F: グリッドの番号HUPC 2019 Day1 F: グリッドの番号
HUPC 2019 Day1 F: グリッドの番号
 
HUPC 2019 Day1 E: 最短経路の復元
HUPC 2019 Day1 E: 最短経路の復元HUPC 2019 Day1 E: 最短経路の復元
HUPC 2019 Day1 E: 最短経路の復元
 
HUPC 2019 Day1 D: 貪欲が最適?
HUPC 2019 Day1 D: 貪欲が最適?HUPC 2019 Day1 D: 貪欲が最適?
HUPC 2019 Day1 D: 貪欲が最適?
 
HUPC 2019 Day1 C: 短絡評価
HUPC 2019 Day1 C: 短絡評価HUPC 2019 Day1 C: 短絡評価
HUPC 2019 Day1 C: 短絡評価
 
HUPC 2019 Day1 B: 自身の 2 倍
HUPC 2019 Day1 B: 自身の 2 倍HUPC 2019 Day1 B: 自身の 2 倍
HUPC 2019 Day1 B: 自身の 2 倍
 
HUPC 2019 Day1 A: four tea
HUPC 2019 Day1 A: four teaHUPC 2019 Day1 A: four tea
HUPC 2019 Day1 A: four tea
 
Convex Hull Trick
Convex Hull TrickConvex Hull Trick
Convex Hull Trick
 

Recently uploaded

[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 

Recently uploaded (9)

[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 

全探索