Submit Search
Upload
導入
•
1 like
•
523 views
Ryunosuke Iwai
Follow
NPCA 講義2013 競技プログラミング #1
Read less
Read more
Report
Share
Report
Share
1 of 20
Download now
Download to read offline
Recommended
競技プログラミングについて
競技プログラミングについて
ei ushi
競技プログラミングについてです。
LT
LT
okuraofvegetable
クソスライド
実践リーダブルコード - 課題の実装の進め方
実践リーダブルコード - 課題の実装の進め方
Kouhei Sutou
2015-06-24開催の実践リーダブルコードで実装する課題の概要と進め方の説明。
サイコロの並べ方
サイコロの並べ方
Hagihara Ryosuke
サイコロを効率良く並べる方法の考察
Elasticsearchを使うときの注意点 公開用スライド
Elasticsearchを使うときの注意点 公開用スライド
崇介 藤井
Elasticsearchを初めて使うときの注意点をまとめてみました。
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
陽一 滝川
2012/12/22(土)の社内で開催した「プレゼン祭り」で発表した内容です。アジャイルに全く触れたことが無い人を対象にしたつもりが、「難しい」「内容が盛り沢山で覚え切れなかった」「寝ちゃった」などなどとあまり好評ではなかったのですが、自戒の念も込めて公開しておきます。 対象は「ウォーターフォール開発しか体験したことのない経験5〜6年程度の若者」です。 ※2022/04/11追記 Speaker Deckに移行しました。 https://speakerdeck.com/takigawa401/toriaesu30fen-tehitotoorifen-katutaqi-nihanareruasiyairuru-men
GCSアジャイル開発を使ったゲームの作り方
GCSアジャイル開発を使ったゲームの作り方
Hiroyuki Tanaka
Game Comunity SummitのGamePM枠で講演した際の資料です https://sites.google.com/site/gamecomsummit/
プログラミング勉強会
プログラミング勉強会
ssuser50bb47
プログラミングの勉強方法がわからない人がAtcoderで修行するのをお助けする
Recommended
競技プログラミングについて
競技プログラミングについて
ei ushi
競技プログラミングについてです。
LT
LT
okuraofvegetable
クソスライド
実践リーダブルコード - 課題の実装の進め方
実践リーダブルコード - 課題の実装の進め方
Kouhei Sutou
2015-06-24開催の実践リーダブルコードで実装する課題の概要と進め方の説明。
サイコロの並べ方
サイコロの並べ方
Hagihara Ryosuke
サイコロを効率良く並べる方法の考察
Elasticsearchを使うときの注意点 公開用スライド
Elasticsearchを使うときの注意点 公開用スライド
崇介 藤井
Elasticsearchを初めて使うときの注意点をまとめてみました。
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
とりあえず30分でひととおり分かった気にはなれるアジャイル入門
陽一 滝川
2012/12/22(土)の社内で開催した「プレゼン祭り」で発表した内容です。アジャイルに全く触れたことが無い人を対象にしたつもりが、「難しい」「内容が盛り沢山で覚え切れなかった」「寝ちゃった」などなどとあまり好評ではなかったのですが、自戒の念も込めて公開しておきます。 対象は「ウォーターフォール開発しか体験したことのない経験5〜6年程度の若者」です。 ※2022/04/11追記 Speaker Deckに移行しました。 https://speakerdeck.com/takigawa401/toriaesu30fen-tehitotoorifen-katutaqi-nihanareruasiyairuru-men
GCSアジャイル開発を使ったゲームの作り方
GCSアジャイル開発を使ったゲームの作り方
Hiroyuki Tanaka
Game Comunity SummitのGamePM枠で講演した際の資料です https://sites.google.com/site/gamecomsummit/
プログラミング勉強会
プログラミング勉強会
ssuser50bb47
プログラミングの勉強方法がわからない人がAtcoderで修行するのをお助けする
Vantan shinsuke miyaki_upload
Vantan shinsuke miyaki_upload
Shinsuke Miyaki
3/17に行われたバンタンドットライブアカデミー様主催【アプリ開発企業セミナー】 資料 様々なものづくりを疑似体験共有 トリセツにおけるリーンスタートアップを
本の紹介
本の紹介
t w
エンジニアのための本の紹介
Process Framework「CYCLONE for Mobile Apps」(20120118)
Process Framework「CYCLONE for Mobile Apps」(20120118)
masashi takehara
プロセス・フレームワークの「サイクロン」の説明用スライドです。 サイクロンは、開発するプロダクトがビジネス上の成功をすることを最優先とした上で、プロダクトのユーザビリティと、実現手段を柔軟に検討していくプロセスフレームワークです。ユーザー・エクスペリエンス・デザインの経験があるデザイナーと、多様な実装技術に対して理解の深いエンジニア、お客様とデザイナー、エンジニアのコミュニケーションを容易にするコーディネーターをアサインし、ビジネス、デザイン、テクノロジーの専門家が密接に関わることで、お客様のアイデアをコスト、期間の制約の元、「本当に役に立つ」形で「素早く」実現化します。
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
慎一 古賀
2月17日の(他の会社の方も含む)社内向けセッションの資料、15分~20分程度の内容です。 テストを自動化するには、マネージャーが「自動化できる」ということを知っていること、それができる人材をアサインし、予算と期間を「自動化を前提に」考えることが必要です。もちろん、自分たちのビジネスにそれが必要なのか?どう力を入れていくべきか?経営層や管理層が強くイメージする必要があります。 また、インフラエンジニアにも、開発者がどのように品質を管理しているか?イメージできるように、開発プロセスの全体像を解説しています。
テスト駆動ゲーム開発をJava scriptで実践
テスト駆動ゲーム開発をJava scriptで実践
Yuusuke Takeuchi
プログラミング講座 #5 競プロをやってみよう
プログラミング講座 #5 競プロをやってみよう
ZOIdayo
部活用に作成した資料です。 「#3 コードを書く」を理解してから見ることをお勧めします https://www.slideshare.net/ZOIdayo/3-257433984 今回は競技プログラミングについてです。 競技プログラマになるつもりがなくても、普通にプログラミング能力上がるので一度はやっておくべきだと思います
[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
masashi takehara
プログラミングを早くする方法
プログラミングを早くする方法
kazukiTakahashi18
勉強会資料
【eLV】ITコンサルタントへの第一歩シリーズ ~課題の仮説立案③~ 課題立案10本ノック #eLV勉強会
【eLV】ITコンサルタントへの第一歩シリーズ ~課題の仮説立案③~ 課題立案10本ノック #eLV勉強会
満徳 関
https://elv.connpass.com/event/93530/
Ultimate agilisttokyo(japanese)
Ultimate agilisttokyo(japanese)
Tsuyoshi Ushio
Ultimate Agile Tokyo の英語の資料を一部日本語化しました。ICAgileの体系の部分は日本語化しています。このブログと一緒に見ると他の資料もゲットできます。 http://d.hatena.ne.jp/simplearchitect/20121117/1353181189
企業でのAI開発でAIエンジニアに求められるもの
企業でのAI開発でAIエンジニアに求められるもの
Hirohito Okuda
企業でのAI開発でAIエンジニアに求められる業務や態度についてまとめています
pi-1. プログラミング入門
pi-1. プログラミング入門
kunihikokaneko1
トピックス:プログラミング, Java Tutor での Java プログラム実行, GDB online での Java プログラム実行, 計算誤差, さまざまなプログラミング言語 Java の基本(スライド資料とプログラム例)(全17回) https://www.kkaneko.jp/pro/pi/index.html 金子邦彦研究室ホームページ https://www.kkaneko.jp/index.html
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
Tatsuya Ishikawa
SQiP2014で発表したスライドです。 GUI以外のインターフェイスを使うことによって、削減できるコスト、得ることのできる利益について説明しています。GUI以外のインターフェイスを使う方法にはWindowsではFriendlyがあります。
ソフトウェア開発の現場風景
ソフトウェア開発の現場風景
Koichi ITO
名古屋工業大学 オブジェクト指向勉強会 http://www-ailab.elcom.nitech.ac.jp/oop/
Offshore Agile Development in XP
Offshore Agile Development in XP
Kenji Hiranabe
My presentation at Agile Offshore Development Conference 2016 at KDDI (2016/9/2)
プログラミング技法特論第1回
プログラミング技法特論第1回
Noritada Shimizu
静的解析のROI
静的解析のROI
Masaru Horioka
静的解析ツールのROIを算出したいというお客様向けにプレゼンした資料です。基本的な考え方とROI算出の前段階として何が必要か書いたものです。
Semat - a Japanese introduction
Semat - a Japanese introduction
Kenji Hiranabe
A Japanese introduction to the "Semat" initiative.
Getting Git Right wrap up #GettingGitRight
Getting Git Right wrap up #GettingGitRight
智治 長沢
Atlassian Git 世界ツアー『Getting Git Right』東京開催のラップアップセッションの資料です。 デモ中心で行いました。
TDD を自分の道具にしよう
TDD を自分の道具にしよう
Yuji Okazawa
わんくま同盟 名古屋勉強会#20(1/14)のLT資料です。 http://www.wankuma.com/seminar/20120114nagoya20/
音声認識
音声認識
Ryunosuke Iwai
音声認識の話
DP
DP
Ryunosuke Iwai
More Related Content
Similar to 導入
Vantan shinsuke miyaki_upload
Vantan shinsuke miyaki_upload
Shinsuke Miyaki
3/17に行われたバンタンドットライブアカデミー様主催【アプリ開発企業セミナー】 資料 様々なものづくりを疑似体験共有 トリセツにおけるリーンスタートアップを
本の紹介
本の紹介
t w
エンジニアのための本の紹介
Process Framework「CYCLONE for Mobile Apps」(20120118)
Process Framework「CYCLONE for Mobile Apps」(20120118)
masashi takehara
プロセス・フレームワークの「サイクロン」の説明用スライドです。 サイクロンは、開発するプロダクトがビジネス上の成功をすることを最優先とした上で、プロダクトのユーザビリティと、実現手段を柔軟に検討していくプロセスフレームワークです。ユーザー・エクスペリエンス・デザインの経験があるデザイナーと、多様な実装技術に対して理解の深いエンジニア、お客様とデザイナー、エンジニアのコミュニケーションを容易にするコーディネーターをアサインし、ビジネス、デザイン、テクノロジーの専門家が密接に関わることで、お客様のアイデアをコスト、期間の制約の元、「本当に役に立つ」形で「素早く」実現化します。
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
慎一 古賀
2月17日の(他の会社の方も含む)社内向けセッションの資料、15分~20分程度の内容です。 テストを自動化するには、マネージャーが「自動化できる」ということを知っていること、それができる人材をアサインし、予算と期間を「自動化を前提に」考えることが必要です。もちろん、自分たちのビジネスにそれが必要なのか?どう力を入れていくべきか?経営層や管理層が強くイメージする必要があります。 また、インフラエンジニアにも、開発者がどのように品質を管理しているか?イメージできるように、開発プロセスの全体像を解説しています。
テスト駆動ゲーム開発をJava scriptで実践
テスト駆動ゲーム開発をJava scriptで実践
Yuusuke Takeuchi
プログラミング講座 #5 競プロをやってみよう
プログラミング講座 #5 競プロをやってみよう
ZOIdayo
部活用に作成した資料です。 「#3 コードを書く」を理解してから見ることをお勧めします https://www.slideshare.net/ZOIdayo/3-257433984 今回は競技プログラミングについてです。 競技プログラマになるつもりがなくても、普通にプログラミング能力上がるので一度はやっておくべきだと思います
[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
masashi takehara
プログラミングを早くする方法
プログラミングを早くする方法
kazukiTakahashi18
勉強会資料
【eLV】ITコンサルタントへの第一歩シリーズ ~課題の仮説立案③~ 課題立案10本ノック #eLV勉強会
【eLV】ITコンサルタントへの第一歩シリーズ ~課題の仮説立案③~ 課題立案10本ノック #eLV勉強会
満徳 関
https://elv.connpass.com/event/93530/
Ultimate agilisttokyo(japanese)
Ultimate agilisttokyo(japanese)
Tsuyoshi Ushio
Ultimate Agile Tokyo の英語の資料を一部日本語化しました。ICAgileの体系の部分は日本語化しています。このブログと一緒に見ると他の資料もゲットできます。 http://d.hatena.ne.jp/simplearchitect/20121117/1353181189
企業でのAI開発でAIエンジニアに求められるもの
企業でのAI開発でAIエンジニアに求められるもの
Hirohito Okuda
企業でのAI開発でAIエンジニアに求められる業務や態度についてまとめています
pi-1. プログラミング入門
pi-1. プログラミング入門
kunihikokaneko1
トピックス:プログラミング, Java Tutor での Java プログラム実行, GDB online での Java プログラム実行, 計算誤差, さまざまなプログラミング言語 Java の基本(スライド資料とプログラム例)(全17回) https://www.kkaneko.jp/pro/pi/index.html 金子邦彦研究室ホームページ https://www.kkaneko.jp/index.html
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
Tatsuya Ishikawa
SQiP2014で発表したスライドです。 GUI以外のインターフェイスを使うことによって、削減できるコスト、得ることのできる利益について説明しています。GUI以外のインターフェイスを使う方法にはWindowsではFriendlyがあります。
ソフトウェア開発の現場風景
ソフトウェア開発の現場風景
Koichi ITO
名古屋工業大学 オブジェクト指向勉強会 http://www-ailab.elcom.nitech.ac.jp/oop/
Offshore Agile Development in XP
Offshore Agile Development in XP
Kenji Hiranabe
My presentation at Agile Offshore Development Conference 2016 at KDDI (2016/9/2)
プログラミング技法特論第1回
プログラミング技法特論第1回
Noritada Shimizu
静的解析のROI
静的解析のROI
Masaru Horioka
静的解析ツールのROIを算出したいというお客様向けにプレゼンした資料です。基本的な考え方とROI算出の前段階として何が必要か書いたものです。
Semat - a Japanese introduction
Semat - a Japanese introduction
Kenji Hiranabe
A Japanese introduction to the "Semat" initiative.
Getting Git Right wrap up #GettingGitRight
Getting Git Right wrap up #GettingGitRight
智治 長沢
Atlassian Git 世界ツアー『Getting Git Right』東京開催のラップアップセッションの資料です。 デモ中心で行いました。
TDD を自分の道具にしよう
TDD を自分の道具にしよう
Yuji Okazawa
わんくま同盟 名古屋勉強会#20(1/14)のLT資料です。 http://www.wankuma.com/seminar/20120114nagoya20/
Similar to 導入
(20)
Vantan shinsuke miyaki_upload
Vantan shinsuke miyaki_upload
本の紹介
本の紹介
Process Framework「CYCLONE for Mobile Apps」(20120118)
Process Framework「CYCLONE for Mobile Apps」(20120118)
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
開発ビギナーだけじゃない!インフラエンジニア & マネージャー にも知ってほしいテスト自動化と品質管理
テスト駆動ゲーム開発をJava scriptで実践
テスト駆動ゲーム開発をJava scriptで実践
プログラミング講座 #5 競プロをやってみよう
プログラミング講座 #5 競プロをやってみよう
[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
[ESM_CM セミナー]小さく作って大いに役立つスマートフォンアプリ(CYCLONE)公開用
プログラミングを早くする方法
プログラミングを早くする方法
【eLV】ITコンサルタントへの第一歩シリーズ ~課題の仮説立案③~ 課題立案10本ノック #eLV勉強会
【eLV】ITコンサルタントへの第一歩シリーズ ~課題の仮説立案③~ 課題立案10本ノック #eLV勉強会
Ultimate agilisttokyo(japanese)
Ultimate agilisttokyo(japanese)
企業でのAI開発でAIエンジニアに求められるもの
企業でのAI開発でAIエンジニアに求められるもの
pi-1. プログラミング入門
pi-1. プログラミング入門
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
ソフトウェア開発の現場風景
ソフトウェア開発の現場風景
Offshore Agile Development in XP
Offshore Agile Development in XP
プログラミング技法特論第1回
プログラミング技法特論第1回
静的解析のROI
静的解析のROI
Semat - a Japanese introduction
Semat - a Japanese introduction
Getting Git Right wrap up #GettingGitRight
Getting Git Right wrap up #GettingGitRight
TDD を自分の道具にしよう
TDD を自分の道具にしよう
More from Ryunosuke Iwai
音声認識
音声認識
Ryunosuke Iwai
音声認識の話
DP
DP
Ryunosuke Iwai
貪欲
貪欲
Ryunosuke Iwai
全探索2
全探索2
Ryunosuke Iwai
全探索
全探索
Ryunosuke Iwai
NPCA 講義2013 競技プログラミング #2
Rth number
Rth number
Ryunosuke Iwai
NPCA Programming Contest Alpha #3
Glasses
Glasses
Ryunosuke Iwai
NPCA Programming Contest Alpha #3
Ice
Ice
Ryunosuke Iwai
NPCA Programming Contest Alpha
Water flow
Water flow
Ryunosuke Iwai
NPCA Programming Contest Alpha #3 流しそうめん
文字列処理
文字列処理
Ryunosuke Iwai
2013/6/7 LT大会のスライド
データ処理
データ処理
Ryunosuke Iwai
Arduino
Arduino
Ryunosuke Iwai
More from Ryunosuke Iwai
(12)
音声認識
音声認識
DP
DP
貪欲
貪欲
全探索2
全探索2
全探索
全探索
Rth number
Rth number
Glasses
Glasses
Ice
Ice
Water flow
Water flow
文字列処理
文字列処理
データ処理
データ処理
Arduino
Arduino
導入
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 now