Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
kuno4n
PDF, PPTX
4,570 views
Donutsプロコンチャレンジ 2015 解説
2015/02/11 19:00〜20:30 に開催された Donutsプロコンチャレンジ 2015 の解説です。 http://donuts-2015.contest.atcoder.jp/
Technology
◦
Read more
2
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 81
2
/ 81
3
/ 81
4
/ 81
5
/ 81
6
/ 81
7
/ 81
8
/ 81
9
/ 81
10
/ 81
11
/ 81
12
/ 81
13
/ 81
14
/ 81
15
/ 81
16
/ 81
17
/ 81
18
/ 81
19
/ 81
20
/ 81
21
/ 81
22
/ 81
23
/ 81
24
/ 81
25
/ 81
26
/ 81
27
/ 81
28
/ 81
29
/ 81
30
/ 81
31
/ 81
32
/ 81
33
/ 81
34
/ 81
35
/ 81
36
/ 81
37
/ 81
38
/ 81
39
/ 81
40
/ 81
41
/ 81
42
/ 81
43
/ 81
44
/ 81
45
/ 81
46
/ 81
47
/ 81
48
/ 81
49
/ 81
50
/ 81
51
/ 81
52
/ 81
53
/ 81
54
/ 81
55
/ 81
56
/ 81
57
/ 81
58
/ 81
59
/ 81
60
/ 81
61
/ 81
62
/ 81
63
/ 81
64
/ 81
65
/ 81
66
/ 81
67
/ 81
68
/ 81
69
/ 81
70
/ 81
71
/ 81
72
/ 81
73
/ 81
74
/ 81
75
/ 81
76
/ 81
77
/ 81
78
/ 81
79
/ 81
80
/ 81
81
/ 81
More Related Content
PDF
AtCoder Regular Contest 035 解説
by
AtCoder Inc.
PDF
AtCoder Beginner Contest 022 解説
by
AtCoder Inc.
PDF
AtCoder Regular Contest 039 解説
by
AtCoder Inc.
PDF
AtCoder Regular Contest 023 解説
by
AtCoder Inc.
PPTX
AtCoder Beginner Contest 012 解説
by
AtCoder Inc.
PDF
目指せグラフマスター
by
HCPC: 北海道大学競技プログラミングサークル
PDF
AtCoder Beginner Contest 017 解説
by
AtCoder Inc.
PDF
arc047
by
AtCoder Inc.
AtCoder Regular Contest 035 解説
by
AtCoder Inc.
AtCoder Beginner Contest 022 解説
by
AtCoder Inc.
AtCoder Regular Contest 039 解説
by
AtCoder Inc.
AtCoder Regular Contest 023 解説
by
AtCoder Inc.
AtCoder Beginner Contest 012 解説
by
AtCoder Inc.
目指せグラフマスター
by
HCPC: 北海道大学競技プログラミングサークル
AtCoder Beginner Contest 017 解説
by
AtCoder Inc.
arc047
by
AtCoder Inc.
What's hot
PDF
AtCoder Regular Contest 018 解説
by
AtCoder Inc.
PDF
AtCoder Regular Contest 032 解説
by
AtCoder Inc.
PDF
双対性
by
Yoichi Iwata
PPTX
CODE FESTIVAL 2014 本選 解説
by
AtCoder Inc.
PDF
abc031
by
AtCoder Inc.
PPTX
AtCoder Regular Contest 001
by
AtCoder Inc.
PDF
AtCoder Regular Contest 022 解説
by
AtCoder Inc.
PDF
AtCoder Beginner Contest 020 解説
by
AtCoder Inc.
PDF
AtCoder Regular Contest 049 解説
by
AtCoder Inc.
PDF
AtCoder Beginner Contest 010 解説
by
AtCoder Inc.
PDF
AtCoder Beginner Contest 021 解説
by
AtCoder Inc.
PDF
AtCoder Regular Contest 042 解説
by
AtCoder Inc.
PDF
グラフネットワーク〜フロー&カット〜
by
HCPC: 北海道大学競技プログラミングサークル
PPTX
Chokudai search
by
AtCoder Inc.
PDF
AtCoder Beginner Contest 011 解説
by
AtCoder Inc.
PDF
全域木いろいろ
by
HCPC: 北海道大学競技プログラミングサークル
PDF
AtCoder Regular Contest 043 解説
by
AtCoder Inc.
PDF
AtCoder Beginner Contest 018 解説
by
AtCoder Inc.
PDF
AtCoder Beginner Contest 025 解説
by
AtCoder Inc.
PDF
AtCoder Beginner Contest 035 解説
by
AtCoder Inc.
AtCoder Regular Contest 018 解説
by
AtCoder Inc.
AtCoder Regular Contest 032 解説
by
AtCoder Inc.
双対性
by
Yoichi Iwata
CODE FESTIVAL 2014 本選 解説
by
AtCoder Inc.
abc031
by
AtCoder Inc.
AtCoder Regular Contest 001
by
AtCoder Inc.
AtCoder Regular Contest 022 解説
by
AtCoder Inc.
AtCoder Beginner Contest 020 解説
by
AtCoder Inc.
AtCoder Regular Contest 049 解説
by
AtCoder Inc.
AtCoder Beginner Contest 010 解説
by
AtCoder Inc.
AtCoder Beginner Contest 021 解説
by
AtCoder Inc.
AtCoder Regular Contest 042 解説
by
AtCoder Inc.
グラフネットワーク〜フロー&カット〜
by
HCPC: 北海道大学競技プログラミングサークル
Chokudai search
by
AtCoder Inc.
AtCoder Beginner Contest 011 解説
by
AtCoder Inc.
全域木いろいろ
by
HCPC: 北海道大学競技プログラミングサークル
AtCoder Regular Contest 043 解説
by
AtCoder Inc.
AtCoder Beginner Contest 018 解説
by
AtCoder Inc.
AtCoder Beginner Contest 025 解説
by
AtCoder Inc.
AtCoder Beginner Contest 035 解説
by
AtCoder Inc.
Viewers also liked
PDF
子供向けのプログラミング教育について
by
Yukio Kubo
PDF
FINAL FANTASY Record Keeper アニメーション制作の濃ゆい話
by
Toshiharu Shirai
PDF
師弟登壇・新米サムライの集い 2013
by
hiboma
PDF
Android Apps Success and Store trend
by
01Booster
PPTX
DeNA Programming education
by
DeNA_pr
PDF
DeNA_国内のアプリマーケティング手法、各プレイヤー、状況のまとめ
by
01Booster
PPT
Why do we use Scrum? ユーザ企業のスクラム導入事例 ~失敗体験から学んだスクラムの本質~
by
Takeshi Kaise
PDF
計算量
by
Ken Ogura
PDF
ソーシャルコーディング革命後の開発委託の世界〜QA@ITの事例
by
Ken Nishimura
PPTX
Elasticsearch 5.2とJava Clientで戯れる #elasticsearchjp
by
Yahoo!デベロッパーネットワーク
PDF
ElasticSearch+Kibanaでログデータの検索と視覚化を実現するテクニックと運用ノウハウ
by
Kentaro Yoshida
PDF
CEDEC2013 ソーシャルゲームの開発現場でUXについて思いっきりあがいてみた1年間の話
by
Takahiro YAMAGUCHI
PPTX
データに振り回されて失敗したあんなことやこんなこと~ゲームのために必要な本当のビジネス・アナリティクス~
by
Daisuke Nogami
PDF
The monad fear
by
LINE Corporation
PDF
TLS 1.3 と 0-RTT のこわ〜い話
by
Kazuho Oku
PDF
Cassandraとh baseの比較して入門するno sql
by
Yutuki r
PDF
MHA for MySQLとDeNAのオープンソースの話
by
Yoshinori Matsunobu
PDF
DeNA TechCon2016 360VR Live Streaming
by
Takeyuki Ogura
PDF
DeNAオリジナル ゲーム専用プラットフォーム Sakashoについて
by
Makoto Haruyama
PPTX
Unityで本格戦国シュミレーションRPG 開発
by
dena_study
子供向けのプログラミング教育について
by
Yukio Kubo
FINAL FANTASY Record Keeper アニメーション制作の濃ゆい話
by
Toshiharu Shirai
師弟登壇・新米サムライの集い 2013
by
hiboma
Android Apps Success and Store trend
by
01Booster
DeNA Programming education
by
DeNA_pr
DeNA_国内のアプリマーケティング手法、各プレイヤー、状況のまとめ
by
01Booster
Why do we use Scrum? ユーザ企業のスクラム導入事例 ~失敗体験から学んだスクラムの本質~
by
Takeshi Kaise
計算量
by
Ken Ogura
ソーシャルコーディング革命後の開発委託の世界〜QA@ITの事例
by
Ken Nishimura
Elasticsearch 5.2とJava Clientで戯れる #elasticsearchjp
by
Yahoo!デベロッパーネットワーク
ElasticSearch+Kibanaでログデータの検索と視覚化を実現するテクニックと運用ノウハウ
by
Kentaro Yoshida
CEDEC2013 ソーシャルゲームの開発現場でUXについて思いっきりあがいてみた1年間の話
by
Takahiro YAMAGUCHI
データに振り回されて失敗したあんなことやこんなこと~ゲームのために必要な本当のビジネス・アナリティクス~
by
Daisuke Nogami
The monad fear
by
LINE Corporation
TLS 1.3 と 0-RTT のこわ〜い話
by
Kazuho Oku
Cassandraとh baseの比較して入門するno sql
by
Yutuki r
MHA for MySQLとDeNAのオープンソースの話
by
Yoshinori Matsunobu
DeNA TechCon2016 360VR Live Streaming
by
Takeyuki Ogura
DeNAオリジナル ゲーム専用プラットフォーム Sakashoについて
by
Makoto Haruyama
Unityで本格戦国シュミレーションRPG 開発
by
dena_study
Similar to Donutsプロコンチャレンジ 2015 解説
PDF
Donuts プロコンチャレンジ2014
by
kuno4n
PDF
130323 slide all
by
ikea0064
PDF
AtCoder Regular Contest 026 解説
by
AtCoder Inc.
PDF
CODE THANKS FESTIVAL 2014 A日程 解説
by
AtCoder Inc.
PPTX
CODE FESTIVAL 予選B 解説
by
AtCoder Inc.
PDF
AtCoder Beginner Contest 006 解説
by
AtCoder Inc.
PDF
AtCoder Regular Contest 017
by
AtCoder Inc.
PDF
AtCoder Beginner Contest 008 解説
by
AtCoder Inc.
PDF
CODE THANKS FESTIVAL 2014 B日程 解説
by
AtCoder Inc.
PDF
U・N・C・O
by
tomerun
PDF
プログラミングコンテストでの乱択アルゴリズム
by
Takuya Akiba
PPTX
joi2012-sp-day2-broadcasting
by
Masaki Hara
PDF
AtCoder Regular Contest 027 解説
by
AtCoder Inc.
PDF
Sharp2sat
by
oupc
PDF
Sec15 dynamic programming
by
Keisuke OTAKI
PPTX
Arc 010 d
by
Yuma Inoue
PDF
AtCoder Beginner Contest 030 解説
by
AtCoder Inc.
PDF
日本情報オリンピック旗(JOI Flag) 解説
by
Kensuke Imanishi
PDF
Divisor
by
oupc
PDF
公開鍵暗号2: NP困難性
by
Joe Suzuki
Donuts プロコンチャレンジ2014
by
kuno4n
130323 slide all
by
ikea0064
AtCoder Regular Contest 026 解説
by
AtCoder Inc.
CODE THANKS FESTIVAL 2014 A日程 解説
by
AtCoder Inc.
CODE FESTIVAL 予選B 解説
by
AtCoder Inc.
AtCoder Beginner Contest 006 解説
by
AtCoder Inc.
AtCoder Regular Contest 017
by
AtCoder Inc.
AtCoder Beginner Contest 008 解説
by
AtCoder Inc.
CODE THANKS FESTIVAL 2014 B日程 解説
by
AtCoder Inc.
U・N・C・O
by
tomerun
プログラミングコンテストでの乱択アルゴリズム
by
Takuya Akiba
joi2012-sp-day2-broadcasting
by
Masaki Hara
AtCoder Regular Contest 027 解説
by
AtCoder Inc.
Sharp2sat
by
oupc
Sec15 dynamic programming
by
Keisuke OTAKI
Arc 010 d
by
Yuma Inoue
AtCoder Beginner Contest 030 解説
by
AtCoder Inc.
日本情報オリンピック旗(JOI Flag) 解説
by
Kensuke Imanishi
Divisor
by
oupc
公開鍵暗号2: NP困難性
by
Joe Suzuki
Donutsプロコンチャレンジ 2015 解説
1.
Donuts プロコンチャレンジ2015 解説 株式会社Donuts 久野慎弥(@kuno4n)
2.
おつかれさまでした!
3.
問題A ドーナツの体積
4.
問題A ドーナツの体積を求めましょう
5.
問題A 解答 (R*R*π)*(D*2*π) を計算すればOK πは、算術ライブラリの定数、acos(-1)、自分 で書く、といった方法
6.
問題A 解答 (R*R*π)*(D*2*π) を計算すればOK πは、算術ライブラリの定数、acos(-1)、自分 で書く、といった方法
7.
問題B Tokyo 7th シスターズ
8.
問題B 9≦n≦16 人のアイドルから9人選んで、 ユニットの能力値を最大化させよう
9.
問題B 解答 nが小さいので、各アイドルを使う・使わない を全列挙できます 2進数で管理すると楽
10.
問題B 解答 nが小さいので、各アイドルを使う・使わない を全列挙できます (定石)2進数で管理
11.
問題B 解答 for(i = 0;
i < 2^n; i++){ }
12.
問題B 解答 for(i = 0;
i < 2^n; i++){ if(iのビットが立っている数が9個){ } }
13.
問題B 解答 for(i = 0;
i < 2^n; i++){ if(iのビットが立っている数が9個){ // 結果が大きければ更新 } }
14.
問題C 行列のできるドーナツ屋
15.
問題C 一列に並ぶ1≦n≦100000 人の身長が与えられます 各人の「前を見た時に見える人の数」を求めて 下さい
16.
問題C 例 8 10 1
6 5 9 2
17.
問題C 例 8 10 1
6 5 9 2 ここから見える人は、
18.
問題C 例 8 10 1
6 5 9 2 ここから見える人は、 3人
19.
問題C 部分点解法(10点) 8 10 1
6 5 9 2 n ≦ 100
20.
問題C 部分点解法(10点) 8 10 1
6 5 9 2 全ての人について、
21.
問題C 部分点解法(10点) 8 10 1
6 5 9 2 全ての人について、 別の全ての人に対し、
22.
問題C 部分点解法(10点) 8 10 1
6 5 9 2 全ての人について、 別の全ての人に対し、 間に背の高い人がいないか調べる
23.
問題C 部分点解法(10点) 8 10 1
6 5 9 2 O(n^3)
24.
問題C 部分点解法(40点) 8 10 1
6 5 9 2 n ≦ 5000
25.
問題C 部分点解法(40点) 8 10 1
6 5 9 2 調べたい人それぞれについて、
26.
問題C 部分点解法(40点) 8 10 1
6 5 9 2 右から順に見ていき、 「それまでの最大値」を保持する
27.
問題C 部分点解法(40点) 8 10 1
6 5 9 2 それまでの最大値より大きければ カウント+1
28.
問題C 部分点解法(40点) 8 10 1
6 5 9 2 それまでの最大値より小さければ なにもしない
29.
問題C 部分点解法(40点) 8 10 1
6 5 9 2 O(n^2)
30.
問題C 満点解法(100点) 8 10 1
6 5 9 2 n ≦ 100000
31.
問題C 満点解法(100点) 8 10 1
6 5 9 2 n ≦ 100000 スタックを用いてO(n)で解く
32.
問題C 満点解法(100点) 8 10 1
6 5 9 2 左から順に見て、
33.
問題C 満点解法(100点) 8 10 1
6 5 9 2 左から順に見て、 自分より背の低い情報はそれ以降捨てて良い
34.
問題C 満点解法(100点) 8 10 1
6 5 9 2 8
35.
問題C 満点解法(100点) 8 10 1
6 5 9 2 8 10
36.
問題C 満点解法(100点) 8 10 1
6 5 9 2 10
37.
問題C 満点解法(100点) 8 10 1
6 5 9 2 10 1
38.
問題C 満点解法(100点) 8 10 1
6 5 9 2 10 1 6
39.
問題C 満点解法(100点) 8 10 1
6 5 9 2 10 6
40.
問題C 満点解法(100点) 8 10 1
6 5 9 2 10 6 5
41.
問題C 満点解法(100点) 8 10 1
6 5 9 2 10 6 5 9
42.
問題C 満点解法(100点) 8 10 1
6 5 9 2 10 9
43.
問題C 満点解法(100点) 8 10 1
6 5 9 2 各要素に到達したときの スタックのサイズが答え10 9
44.
問題C 満点解法(100点) 8 10 1
6 5 9 2 ・「スタックに追加する」 ・「スタックから取り除く」 いずれも高々n回 → O(n)
45.
問題D ドーナツの箱詰め
46.
問題D 1 ≦ n
≦ 200000 要素を、kグループに分ける 「各グループの(最大値 − 最小値)の和」 の最小値は?
47.
問題D 例 k = 3
{2, 12, 3, 13, 7, 17, 1}
48.
問題D 例 k = 3
{2, 12, 3, 13, 7, 17, 1} {1, 2, 3, 7} {12, 13} {17} 6+1+0 = 7 が最小値
49.
問題D 例 k = 3
{2, 12, 3, 13, 7, 17, 1} どんな入力であっても、
50.
問題D 例 k = 3
{1, 2, 3, 7, 12, 13, 17} どんな入力であっても、 ソートしておき、
51.
問題D 例 k = 3
{1, 2, 3, 7, 12, 13, 17} どんな入力であっても、 ソートしておき、 重ならない区間でグループ分けする ことが最小値の必要条件
52.
問題D 部分点解法(15点) {1, 2, 3,
7, 12, 13, 17} k = 2
53.
問題D 部分点解法(15点) {1, 2, 3,
7, 12, 13, 17} k = 2 ソート後、グループ分けの候補を n-1通り試せば良い
54.
問題D 部分点解法(40点) {1, 2, 3,
7, 12, 13, 17} 1 ≦ k ≦ n
55.
問題D 部分点解法(40点) {1, 2,
3, 7, 12, 13, 17} 1 1 4 5 1 4 各要素の差からなる(n-1)要素を準備
56.
問題D 部分点解法(40点) {1, 2,
3, 7, 12, 13, 17} 1 1 4 5 1 4 各要素の差からなる(n-1)要素を準備 グループ分けした時、差の要素のうち (k-1)要素は含まれない k = 3
57.
問題D 部分点解法(40点) {1, 2,
3, 7, 12, 13, 17} 1 1 4 5 1 4 小さい方から(n-1)-(k-1) = n-k個 を選べば良い k = 3
58.
問題D 部分点解法(45点) k = 2 {1,
2, 3, 7, 12, 13, 17} 1 1 4 5 1 4
59.
問題D 部分点解法(45点) k = 2 {1,
2, 3, 7, 12, 13, 17} 1 1 4 5 5 “差の要素”が減っていく
60.
問題D 部分点解法(45点) {1, 2,
3, 7, 12, 13, 17} 1 1 4 5 5 もとの要素はsetや隣接リストなどで持っておき、 要素がなくなった時に消える“差”と追加される“差” を計算する。
61.
問題D 部分点解法(45点) {1, 2,
3, 7, 12, 13, 17} 1 1 4 5 5 “差”の要素はmultisetなどで持っておき、 “差の合計”から“差の最大値”を引けば良い。
62.
問題D 満点解法(100点) 1 ≦ k
≦ n {1, 2, 3, 7, 12, 13, 17} 1 1 4 5 5 “差の要素”が減っていく
63.
問題D 満点解法(100点) {1, 2,
3, 7, 12, 13, 17} 1 1 4 5 5 ・“差の要素”に数Xを追加する/取り除く ・“差の要素”の小さいn-k個の和を求める という操作を高速に行う
64.
問題D 満点解法(100点) {1, 2,
3, 7, 12, 13, 17} 1 1 4 5 5 ・“差の要素”に数Xを追加する/取り除く ・“差の要素”の小さいn-k個の和を求める という操作を高速に行う Segment Tree
65.
0 1 2
3 4 5 6 7 各ノードは、“差の要素”の 「個数」と「和」の情報をもつ。
66.
0 1 2
3 4 5 6 7 “差の要素”の中に、4∼7は、 現在いくつ持っていて、その合計はいくつか?
67.
0 1 2
3 4 5 6 7 2・3は、現在いくつ持っていて、 その合計はいくつか?
68.
1000 1001 1010
1011 1100 1101 1110 1111 100 101 110 111 10 11 1 0 1 2 3 4 5 6 7 ノード番号(2進)
69.
1000 1001 1010
1011 1100 1101 1110 1111 100 101 110 111 10 11 1 0 1 2 3 4 5 6 7 左の子を見るときは、2倍する
70.
1000 1001 1010
1011 1100 1101 1110 1111 100 101 110 111 10 11 1 0 1 2 3 4 5 6 7 右の子を見るときは、2倍して1足す
71.
1000 1001 1010
1011 1100 1101 1110 1111 100 101 110 111 10 11 1 0 1 2 3 4 5 6 7 親を見るときは、2で割る
72.
0 1 2
3 4 5 6 7 “差の要素”に5を追加/削除するときの 更新対象
73.
0 1 2
3 4 5 6 7 「小さい方からX個の合計」を求める
74.
0 1 2
3 4 5 6 7 左の子(0∼3)がX個以上持っていれば、
75.
0 1 2
3 4 5 6 7 左の子(0∼3)がX個以上持っていれば、 再帰的に左の子より下を引き続き見る
76.
0 1 2
3 4 5 6 7 左の子(0∼3)がX個未満(Y個)であれば、
77.
0 1 2
3 4 5 6 7 左の子(0∼3)がX個未満(Y個)であれば、 左の子(0∼3)の合計値は必ず使用し、
78.
0 1 2
3 4 5 6 7 左の子(0∼3)がX個未満(Y個)であれば、 左の子(0∼3)の合計値は必ず使用し、 右の子(4∼7)の小さい方からX-Y個を取得
79.
問題D 満点解法(別解) “差の要素”の小さい方からn-k-i個の和が必要になる ので、 n-k-i個以下のmultisetと、 n-k-i個超のmultisetの2つを用意する “差の要素”の追加・削除に応じて、 2つのmultiset間でやりとりする。
80.
問題D 満点解法(別解) “差の要素”の小さい方からn-k-i個の和が必要になる ので、 n-k-i個以下のmultisetと、 n-k-i個超のmultisetの2つを用意する “差の要素”の追加・削除に応じて、 2つのmultiset間でやりとりする。
81.
ありがとうございました!
Download