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
These Five Tricks Can Make Your Apps Greener, Cheaper, & Nicer
hollycummins
0
270
Modding RubyKaigi for Myself
yui_knk
0
870
DynamoDBには集計系のクエリがないけどなんとかしたい
musan
1
130
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
430
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
130
TAKTでAI駆動開発の品質を設計する
j5ik2o
5
650
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
430
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
270
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
2
550
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
3
2k
Inside Stream API
skrb
1
620
自動レビューエンジンの実装と運用 ~レビューのない世界へ~
kurukuru1999
2
310
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1370
210k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
530
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
140
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
200
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
55k
Between Models and Reality
mayunak
4
320
Discover your Explorer Soul
emna__ayadi
2
1.1k
Abbi's Birthday
coloredviolet
2
7.9k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Technical Leadership for Architectural Decision Making
baasie
3
390
Chasing Engaging Ingredients in Design
codingconduct
0
210
Large-scale JavaScript Application Architecture
addyosmani
515
110k
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