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
おしゃれなアルゴリズム
Search
eTakazawa
February 22, 2020
Programming
5k
7
Share
おしゃれなアルゴリズム
本スライドは某LT用に作成しました.厳密性より,非競プロerに向けて面白さを重視しています.
過去問題の解説です.
eTakazawa
February 22, 2020
More Decks by eTakazawa
See All by eTakazawa
感動するアルゴリズム
etakazawa
0
210
Other Decks in Programming
See All in Programming
Claspは野良GASの夢をみるか
takter00
0
160
GitHub Copilot CLIのいいところ
htkym
2
1.2k
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
130
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
180
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
470
ふつうのFeature Flag実践入門
irof
7
3.5k
AIとRubyの静的型付け
ukin0k0
0
520
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
130
運用エージェントは "作る" から "育てる" へ - 記憶と自己進化の3層設計パターン / self-evolving-agents-three-layer-agent-design
gawa
12
3.4k
密結合なバックエンドから TypeScript のコードを生成する
kemuridama
1
690
The Arts and Crafts of Work in the AI Era — Toward Mastery in Software Development
kuranuki
1
710
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.3k
Featured
See All Featured
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
200
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
140
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
310
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
240
GitHub's CSS Performance
jonrohan
1033
470k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
310
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Facilitating Awesome Meetings
lara
57
6.9k
Transcript
͓͠ΌΕͳΞϧΰϦζϜ @utsubo_21 ※ ຊεϥΠυLT༻ʹ࡞͠·ͨ͠ ɹݫີੑΑΓɼඇڝϓϩerʹ͚ͯ໘ന͞Λॏࢹ͍ͯ͠·͢
ࠓ·Ͱղ͍ͨ ΞϧΰϦζϜͷͷத͔Β
ಛʹ͓͠Ζ͔ͬͨΛ pickup
• মΛ͍ͯ͠·͢ • ॏͳ͍ͬͯΔ෦͕ੜম͚ʹ • ͍͔ͭ͘ΛऔΓআ͘͜ͱͰ Ͱ͖Δ͚ͩ৯ΒΕΔ෦Λ͍ͨ͘͠ Question
* CODE FESTIVAL 2015 ຊઓ মͷୡਓ
• মΛ͍ͯ͠·͢ • ॏͳ͍ͬͯΔ෦͕ੜম͚ʹ • ͍͔ͭ͘ΛऔΓআ͘͜ͱͰ Ͱ͖Δ͚ͩ৯ΒΕΔ෦Λ͍ͨ͘͠ Question
* CODE FESTIVAL 2015 ຊઓ মͷୡਓ
• মΛ͍ͯ͠·͢ • ॏͳ͍ͬͯΔ෦͕ੜম͚ʹ • ͍͔ͭ͘ΛऔΓআ͘͜ͱͰ Ͱ͖Δ͚ͩ৯ΒΕΔ෦Λ͍ͨ͘͠ Question
* CODE FESTIVAL 2015 ຊઓ মͷୡਓ
• মΛ͍ͯ͠·͢ • ॏͳ͍ͬͯΔ෦͕ੜম͚ʹ • ͍͔ͭ͘ΛऔΓআ͘͜ͱͰ Ͱ͖Δ͚ͩ৯ΒΕΔ෦Λ͍ͨ͘͠ Question
* CODE FESTIVAL 2015 ຊઓ মͷୡਓ
Question • ೖྗ - (Ґஔɼ͞) × Nݸ ( N
≦ 10^5 ) - ͷ͞ M ( M ≦ 10^5 ) • త - ֤ʹ͍ͭͯম͔͘ম͔ͳ͍͔બͼɼ ͕ॏͳΒͣম͚Δ͞ͷ૯Λ࠷େԽ͠ग़ྗ 1 2 3
Question • ೖྗ - (Ґஔɼ͞) × Nݸ ( N
≦ 10^5 ) - ͷ͞ M ( M ≦ 10^5 ) • త - ֤ʹ͍ͭͯম͔͘ম͔ͳ͍͔બͼɼ ͕ॏͳΒͣম͚Δ͞ͷ૯Λ࠷େԽ͠ग़ྗ 1 2 3
Question • ೖྗ - (Ґஔɼ͞) × Nݸ ( N
≦ 10^5 ) - ͷ͞ M ( M ≦ 10^5 ) • త - ֤ʹ͍ͭͯম͔͘ম͔ͳ͍͔બͼɼ ͕ॏͳΒͣম͚Δ͞ͷ૯Λ࠷େԽ͠ग़ྗ 1 2 3
͏গ͠ෳࡶͳྫ ྫɽ
͏গ͠ෳࡶͳྫ ؒͷґଘ͕૿͑ɼ͍͠… ྫɽ
• ”͕ॏͳ͍ͬͯΔ” or ”Կͳ͍” ۠ؒ ͕͞Ք͛ͳ͍ • ”શମͷ͞M
ʔ ম͚ͳ͍۠ؒͷ͞” Ͱ͕͑ग़Δ ղ๏Λࢧ͑Δߟ͑ํ ম͚Δ෦Λ͘ → ম͚ͳ͍෦Λ͘
ղ๏ ͋ΔͷબͼํΛͨ࣌͠ͷ ম͚ͳ͍෦ͷ͞ΛΓ͍ͨ 1 2 3
ղ๏ ఱ࠽తͳͻΒΊ͖Ͱ ͷ͞ʹ߹ΘͤͯҹΛॻ͍ͯΈΔ
ղ๏ 1 2 3 ఱ࠽తͳͻΒΊ͖Ͱ ͷ͞ʹ߹ΘͤͯҹΛॻ͍ͯΈΔ
ղ๏ ͞Βʹఱ࠽తͳͻΒΊ͖Ͱ ”Կͳ͍” ෦Λද͢ҹΛՃ
ղ๏ ࠨ͔ΒӈҹΛḷͬͯΈΔ
ղ๏ ྫ͑ɼͷܦ࿏
ղ๏ ɹɹͷΈΛম͘߹Λදݱ ʢͱ”Կͳ͍”۠ؒ 4ͭʣ 1 1 ”Կͳ͍”۠ؒ
ղ๏ “Կͳ͍”۠ؒͷ͞ΛΓ͍ͨ ʢ㲎 શମͷ͞ʔম͚ͳ͍෦ͷ͞ʹম͚Δ͞ʣ
ղ๏ ҹʹίετΛ༩ 1 1 1 1 1 1
1 1 0 0 0
ղ๏ ܦ࿏্ͷҹͷίετͷ૯ ʹ ম͚ͳ͍෦(Կͳ͍෦)ͷ͞ ʹͳ͍ͬͯΔ 1 1 1
1 1 1 1 1 0 0 0
ղ๏ ”ॏͳ͍ͬͯΔ” ෦Ͳ͏දݱ͢Δ͔
ղ๏ ”ॏͳ͍ͬͯΔ” ෦Ͳ͏දݱ͢Δ͔ → ٯ͖ͷҹΛுΓ·͢ʢίετ1ʣ 1 1 1
ղ๏ ઌͱಉ༷ʹࠨ͔ΒӈҹΛḷΔ
ղ๏ ྫ͑ɼͷܦ࿏
ղ๏ 1 1 1 1 1 2 ɹɹͱɹɹΛম͘߹Λදݱ
1 2 ”Կͳ͍”۠ؒ ”ॏͳ͍ͬͯΔ”۠ؒ
ղ๏ 1 1 1 1 ম͚ͳ͍۠ؒͷ͞ 4 ”Կͳ͍”۠ؒ
”ॏͳ͍ͬͯΔ”۠ؒ
ղ๏ ·ͱΊ 1 1 1 1 1 1
1 1 1 1 1 ࠨ͔Βӈͷܦ࿏্ͷίετͷ૯ ʹ ম͚ͳ͍෦ͷ͞
ղ๏ ·ͱΊ 1 1 1 1 1 1
1 1 1 1 1 ͭ·Γɼࠨ͔Βӈͷ࠷ܦ࿏ ʹ ম͚ͳ͍෦ͷ͕͞࠷খͷͷબͼํ
ղ๏ ·ͱΊ 1 1 1 1 1 1
1 1 1 1 1 ͭ·Γɼ࠷ܦ࿏͕͔Εྑ͍ → ؆୯ʂ
ղ๏ ·ͱΊ 1 1 1 1 1 1
1 1 1 1 1 ͭ·Γɼ࠷ܦ࿏͕͔Εྑ͍ → ؆୯ʂ ܭࢉྔతʹɿ શ୳ࡧ O(2^N) → ຊख๏ O((M+N)logM)
͋ͱ͕͖ • ࠷ܦ࿏ʹؼணͰ͖ͯ࠷ߴʹ͓͠ΌΕ - মʹߦ͘ͱ͖ࢥ͍ग़ͯ͠Ͷ • ໘നΈΛײͨ͡ํڝϓϩ͍ͬͯͩ͘͞ • ࠷େԽΛ͢Δ࣌Կ͔ͷ࠷খԽʹ ஔ͖͑ΒΕͳ͍͔ߟ͑Δ
- “࠷େԽΛ࠷খԽʹมܗͯ͠ɼ࠷খΧοτʹؼண” ׂͱయܕΒ͍͠ʢࢀߟɿ೩͢ຒΊΔʣ https://www.slideshare.net/shindannin/project-selection-problem
͓·͚ • ൈ͚͍ͯΔେࣄͳߟ - ઌͷܦ࿏Ͱɼ3ຕҎ্͕ॏͳΔબͼํΛ දݱͰ͖ͳ͍ - ॏͳͬͨ෦Λ༨ܭʹίετͱͯ͠Χϯτͯ͠ ͠·͏ɽ͕ɼͦͦ3ຕҎ্ॏͳΔͷબͼํ ɼ࠷దղʹͳΓಘͳ͍
• ެࣜϖʔδͷղઆΛಡΜͰ͍ͩ͘͞ • ࢲ͕ॻ͍ͨίʔυͪ͜Β https://www.slideshare.net/chokudai/code-festival-2015-final https://code-festival-2015-final-open.contest.atcoder.jp/submissions/10197952