Submit Search
導入
1 like
530 views
Ryunosuke Iwai
NPCA 講義2013 競技プログラミング #1
Read more
1 of 20
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
More Related Content
PDF
競技プログラミングについて
ei ushi
PDF
LT
okuraofvegetable
PDF
実践リーダブルコード - 課題の実装の進め方
Kouhei Sutou
PPTX
サイコロの並べ方
Hagihara Ryosuke
PDF
Elasticsearchを使うときの注意点 公開用スライド
崇介 藤井
PDF
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
陽一 滝川
PDF
GCSアジャイル開発を使ったゲームの作り方
Hiroyuki Tanaka
PDF
【超初心者向け】競技プログラミング体験会(南町通りイカ研究所 デベロッパー部) 発表資料
tototti
競技プログラミングについて
ei ushi
LT
okuraofvegetable
実践リーダブルコード - 課題の実装の進め方
Kouhei Sutou
サイコロの並べ方
Hagihara Ryosuke
Elasticsearchを使うときの注意点 公開用スライド
崇介 藤井
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
陽一 滝川
GCSアジャイル開発を使ったゲームの作り方
Hiroyuki Tanaka
【超初心者向け】競技プログラミング体験会(南町通りイカ研究所 デベロッパー部) 発表資料
tototti
Similar to 導入
(20)
PDF
プログラミング勉強会
ssuser50bb47
PPTX
Vantan shinsuke miyaki_upload
Shinsuke Miyaki
PPTX
本の紹介
t w
PDF
【競プロ超初心者向け】競技プログラミング準備会 AtCoderのアカウント作成から問題提出まで 2025-05-20
tototti
PDF
Process Framework「CYCLONE for Mobile Apps」(20120118)
masashi takehara
PPTX
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
慎一 古賀
PDF
テスト駆動ゲーム開発をJava scriptで実践
Yuusuke Takeuchi
PDF
プログラミング講座 #5 競プロをやってみよう
ZOIdayo
PDF
[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
masashi takehara
PPTX
プログラミングを早くする方法
kazukiTakahashi18
PDF
【eLV】ITコンサルタントへの第一歩シリーズ ~課題の仮説立案③~ 課題立案10本ノック #eLV勉強会
満徳 関
PDF
Ultimate agilisttokyo(japanese)
Tsuyoshi Ushio
PPTX
企業でのAI開発でAIエンジニアに求められるもの
Hirohito Okuda
PPTX
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
Tatsuya Ishikawa
PDF
ソフトウェア開発の現場風景
Koichi ITO
PDF
Offshore Agile Development in XP
Kenji Hiranabe
PPTX
プログラミング技法特論第1回
Noritada Shimizu
PPTX
静的解析のROI
Masaru Horioka
PDF
Semat - a Japanese introduction
Kenji Hiranabe
PDF
Getting Git Right wrap up #GettingGitRight
智治 長沢
プログラミング勉強会
ssuser50bb47
Vantan shinsuke miyaki_upload
Shinsuke Miyaki
本の紹介
t w
【競プロ超初心者向け】競技プログラミング準備会 AtCoderのアカウント作成から問題提出まで 2025-05-20
tototti
Process Framework「CYCLONE for Mobile Apps」(20120118)
masashi takehara
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
慎一 古賀
テスト駆動ゲーム開発をJava scriptで実践
Yuusuke Takeuchi
プログラミング講座 #5 競プロをやってみよう
ZOIdayo
[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
masashi takehara
プログラミングを早くする方法
kazukiTakahashi18
【eLV】ITコンサルタントへの第一歩シリーズ ~課題の仮説立案③~ 課題立案10本ノック #eLV勉強会
満徳 関
Ultimate agilisttokyo(japanese)
Tsuyoshi Ushio
企業でのAI開発でAIエンジニアに求められるもの
Hirohito Okuda
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
Tatsuya Ishikawa
ソフトウェア開発の現場風景
Koichi ITO
Offshore Agile Development in XP
Kenji Hiranabe
プログラミング技法特論第1回
Noritada Shimizu
静的解析のROI
Masaru Horioka
Semat - a Japanese introduction
Kenji Hiranabe
Getting Git Right wrap up #GettingGitRight
智治 長沢
Ad
More from Ryunosuke Iwai
(12)
ODP
音声認識
Ryunosuke Iwai
ODP
DP
Ryunosuke Iwai
ODP
貪欲
Ryunosuke Iwai
ODP
全探索2
Ryunosuke Iwai
PDF
全探索
Ryunosuke Iwai
PDF
Rth number
Ryunosuke Iwai
PDF
Glasses
Ryunosuke Iwai
PDF
Ice
Ryunosuke Iwai
PDF
Water flow
Ryunosuke Iwai
PDF
文字列処理
Ryunosuke Iwai
PDF
データ処理
Ryunosuke Iwai
PPTX
Arduino
Ryunosuke Iwai
音声認識
Ryunosuke Iwai
DP
Ryunosuke Iwai
貪欲
Ryunosuke Iwai
全探索2
Ryunosuke Iwai
全探索
Ryunosuke Iwai
Rth number
Ryunosuke Iwai
Glasses
Ryunosuke Iwai
Ice
Ryunosuke Iwai
Water flow
Ryunosuke Iwai
文字列処理
Ryunosuke Iwai
データ処理
Ryunosuke Iwai
Arduino
Ryunosuke Iwai
Ad
導入
1.
競技プログラミング講義 #1 「導入編」
2.
競技プログラミングの講義です
3.
競技プログラミングとは 「問題で与えられた条件に従って、 早く正確にプログラムを書く競技」 ( 引用 :
競技プログラミング wiki )
4.
競技プログラミングとは 「問題で与えられた条件に従って、 早く正確にプログラムを書く競技」 ( 引用 :
競技プログラミング wiki )
5.
問題を解くにあたって ● 問題を解く – 効率的な解法を考える –
考えた解法を(バグを埋めこまないよう に)正しく実装する
6.
問題を解くにあたって ● 問題を解く – 効率的な解法を考える –
考えた解法を(バグを埋めこまないよう に)正しく実装する
7.
問題を解くにあたって ● 問題を解く – 効率的な解法を考える –
考えた解法を(バグを埋めこまないよう に)正しく実装する
8.
コードについて ● 早く書くのは重要 ● きれいに書くのも重要 –
インデントはちゃんと揃える – ( C 言語で)中括弧を使いすぎない(ネス トしすぎない) – 変数名はできるだけわかりやすいものを ( 1〜5文字程度)
9.
やるだけ
Brute Force
10.
やるだけ (brute force)
とは ● 問題文の通り実装するだけで正解でき、工 夫などを必要としない問題 ● 特に実装の大変な問題は実装するだけ (implemention) と呼ばれることもある ● ハラスメントの常套句 ● ハラスメンターにかかればどんな問題でもやるだけと言 われる
11.
〜実装タイム〜 NPCA Judge 問題「講義用問題
1 」
12.
問題内容 ● サイズ N の数列
A の A[l] 〜 A[r] の和を求 めるクエリを M 個処理してください ● 1 N 1,000≦ ≦ ● 1 M 1,000≦ ≦ ● 1 A[i] 1,000,000,000≦ ≦
13.
( ^o^) こんな問題やるだけじゃないか (
˘ ˘)⊖ 。 o( どうせ Accepted だろ ) |System Test| (┗ ☋ ` )┓ 三 ( )◠‿◠ ☛ Wrong Answer (’ω’)▂▅▇█▓▒░ ░▒▓█▇▅▂ うわああああ
14.
ポイント①:制限時間・メモリ ● 問題には制限時間・メモリ制約というもの があり、それ以内で処理しなくてはならな い ● 制限時間は計算量で大体計算できる ●
メモリ使用量も使った配列の大きさなどか ら計算できる
15.
ポイント②:計算量 ● 計算量とは – その名の通り計算した量 – 代入、四則演算などが行われた回数 –
For 文の繰り返し回数から概算できる ● 計算量と時間ー 1 秒で – 計算量 :10^6 → まず大丈夫 – 計算量 :10^7 → まだ大丈夫 – 計算量 :10^8 → かなり厳しい
16.
ポイント③:インデックス ● 問題文での番号の付け方は大体 1
から ● 配列で扱う場合0からなので0からの方が 都合がいい
17.
ポイント④: int 型 ● int
型の変数で扱える値の範囲は大体 ±2×10^9 くらいまで ● 今回の問題では答えは最高 10^9×10^3 = 10^12 くらいになりうる ● long long int 型なら 10^18 くらいまで入る → 大勝利!
18.
おまけ ● 今回はやるだけで解くことができた が、 N,M
が大きくなると…? → 夏合宿講義 by catupper
19.
練習問題 ● AOJ Volume.5 各年の問題
(Source が JOI ○○○○ となってい る問題 ) のうち最初の 2 問程度 ただし 2011 年分を除く
20.
→ 次回 #2
「全探索」 To be continued...
Download