Submit Search
Upload
Pythonではじめる競技プログラミング
•
13 likes
•
22,940 views
cocodrips
Follow
PyCon JP 2014のLTで発表した資料です( o・ω・)ノ
Read less
Read more
Technology
Report
Share
Report
Share
1 of 19
Download now
Download to read offline
Recommended
AtCoder Regular Contest 022 解説
AtCoder Regular Contest 022 解説
AtCoder Inc.
Rolling Hashを殺す話
Rolling Hashを殺す話
Nagisa Eto
AtCoder Beginner Contest 013 解説
AtCoder Beginner Contest 013 解説
AtCoder Inc.
AtCoder Beginner Contest 021 解説
AtCoder Beginner Contest 021 解説
AtCoder Inc.
AtCoder Regular Contest 032 解説
AtCoder Regular Contest 032 解説
AtCoder Inc.
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
cocodrips
Abc009
Abc009
AtCoder Inc.
AtCoder Beginner Contest 034 解説
AtCoder Beginner Contest 034 解説
AtCoder Inc.
Recommended
AtCoder Regular Contest 022 解説
AtCoder Regular Contest 022 解説
AtCoder Inc.
Rolling Hashを殺す話
Rolling Hashを殺す話
Nagisa Eto
AtCoder Beginner Contest 013 解説
AtCoder Beginner Contest 013 解説
AtCoder Inc.
AtCoder Beginner Contest 021 解説
AtCoder Beginner Contest 021 解説
AtCoder Inc.
AtCoder Regular Contest 032 解説
AtCoder Regular Contest 032 解説
AtCoder Inc.
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
強くなるためのプログラミング -プログラミングに関する様々なコンテストとそのはじめ方-#pyconjp
cocodrips
Abc009
Abc009
AtCoder Inc.
AtCoder Beginner Contest 034 解説
AtCoder Beginner Contest 034 解説
AtCoder Inc.
勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとは
Takuya Akiba
一般グラフの最大マッチング
一般グラフの最大マッチング
HCPC: 北海道大学競技プログラミングサークル
Indeedなう A日程 解説
Indeedなう A日程 解説
AtCoder Inc.
Rolling hash
Rolling hash
HCPC: 北海道大学競技プログラミングサークル
写像 12 相
写像 12 相
HCPC: 北海道大学競技プログラミングサークル
AtCoder Regular Contest 026 解説
AtCoder Regular Contest 026 解説
AtCoder Inc.
LCA and RMQ ~簡潔もあるよ!~
LCA and RMQ ~簡潔もあるよ!~
Yuma Inoue
AtCoder Regular Contest 019 解説
AtCoder Regular Contest 019 解説
AtCoder Inc.
AtCoder Regular Contest 042 解説
AtCoder Regular Contest 042 解説
AtCoder Inc.
AtCoder Regular Contest 033 解説
AtCoder Regular Contest 033 解説
AtCoder Inc.
AtCoder Beginner Contest 020 解説
AtCoder Beginner Contest 020 解説
AtCoder Inc.
CODE FESTIVAL 2014 本選 解説
CODE FESTIVAL 2014 本選 解説
AtCoder Inc.
ウェーブレット木の世界
ウェーブレット木の世界
Preferred Networks
様々な全域木問題
様々な全域木問題
tmaehara
双対性
双対性
Yoichi Iwata
WUPC2012
WUPC2012
Dai Hamada
DDPC 2016 予選 解説
DDPC 2016 予選 解説
AtCoder Inc.
AtCoder Beginner Contest 015 解説
AtCoder Beginner Contest 015 解説
AtCoder Inc.
AtCoder Regular Contest 035 解説
AtCoder Regular Contest 035 解説
AtCoder Inc.
CODE FESTIVAL 2015 予選A 解説
CODE FESTIVAL 2015 予選A 解説
AtCoder Inc.
Introduction to programming competition [revised][PDF]
Introduction to programming competition [revised][PDF]
yak1ex
TokyoR24 - PerformanceRvsC#
TokyoR24 - PerformanceRvsC#
ta2c
More Related Content
What's hot
勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとは
Takuya Akiba
一般グラフの最大マッチング
一般グラフの最大マッチング
HCPC: 北海道大学競技プログラミングサークル
Indeedなう A日程 解説
Indeedなう A日程 解説
AtCoder Inc.
Rolling hash
Rolling hash
HCPC: 北海道大学競技プログラミングサークル
写像 12 相
写像 12 相
HCPC: 北海道大学競技プログラミングサークル
AtCoder Regular Contest 026 解説
AtCoder Regular Contest 026 解説
AtCoder Inc.
LCA and RMQ ~簡潔もあるよ!~
LCA and RMQ ~簡潔もあるよ!~
Yuma Inoue
AtCoder Regular Contest 019 解説
AtCoder Regular Contest 019 解説
AtCoder Inc.
AtCoder Regular Contest 042 解説
AtCoder Regular Contest 042 解説
AtCoder Inc.
AtCoder Regular Contest 033 解説
AtCoder Regular Contest 033 解説
AtCoder Inc.
AtCoder Beginner Contest 020 解説
AtCoder Beginner Contest 020 解説
AtCoder Inc.
CODE FESTIVAL 2014 本選 解説
CODE FESTIVAL 2014 本選 解説
AtCoder Inc.
ウェーブレット木の世界
ウェーブレット木の世界
Preferred Networks
様々な全域木問題
様々な全域木問題
tmaehara
双対性
双対性
Yoichi Iwata
WUPC2012
WUPC2012
Dai Hamada
DDPC 2016 予選 解説
DDPC 2016 予選 解説
AtCoder Inc.
AtCoder Beginner Contest 015 解説
AtCoder Beginner Contest 015 解説
AtCoder Inc.
AtCoder Regular Contest 035 解説
AtCoder Regular Contest 035 解説
AtCoder Inc.
CODE FESTIVAL 2015 予選A 解説
CODE FESTIVAL 2015 予選A 解説
AtCoder Inc.
What's hot
(20)
勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとは
一般グラフの最大マッチング
一般グラフの最大マッチング
Indeedなう A日程 解説
Indeedなう A日程 解説
Rolling hash
Rolling hash
写像 12 相
写像 12 相
AtCoder Regular Contest 026 解説
AtCoder Regular Contest 026 解説
LCA and RMQ ~簡潔もあるよ!~
LCA and RMQ ~簡潔もあるよ!~
AtCoder Regular Contest 019 解説
AtCoder Regular Contest 019 解説
AtCoder Regular Contest 042 解説
AtCoder Regular Contest 042 解説
AtCoder Regular Contest 033 解説
AtCoder Regular Contest 033 解説
AtCoder Beginner Contest 020 解説
AtCoder Beginner Contest 020 解説
CODE FESTIVAL 2014 本選 解説
CODE FESTIVAL 2014 本選 解説
ウェーブレット木の世界
ウェーブレット木の世界
様々な全域木問題
様々な全域木問題
双対性
双対性
WUPC2012
WUPC2012
DDPC 2016 予選 解説
DDPC 2016 予選 解説
AtCoder Beginner Contest 015 解説
AtCoder Beginner Contest 015 解説
AtCoder Regular Contest 035 解説
AtCoder Regular Contest 035 解説
CODE FESTIVAL 2015 予選A 解説
CODE FESTIVAL 2015 予選A 解説
Similar to Pythonではじめる競技プログラミング
Introduction to programming competition [revised][PDF]
Introduction to programming competition [revised][PDF]
yak1ex
TokyoR24 - PerformanceRvsC#
TokyoR24 - PerformanceRvsC#
ta2c
競技プログラミングの楽しみ
競技プログラミングの楽しみ
徹 稲盛
Rustで始める競技プログラミング
Rustで始める競技プログラミング
Naoya Okanami
AtCoder Beginner Contest 028 解説
AtCoder Beginner Contest 028 解説
AtCoder Inc.
競技プログラミングにおけるコードの書き方とその利便性
競技プログラミングにおけるコードの書き方とその利便性
Hibiki Yamashiro
Sec15 dynamic programming
Sec15 dynamic programming
Keisuke OTAKI
ソースコードの品質向上のための効果的で効率的なコードレビュー
ソースコードの品質向上のための効果的で効率的なコードレビュー
Moriharu Ohzu
はじめての人のためのDeep Learning
はじめての人のためのDeep Learning
Tadaichiro Nakano
金大アルゴリズム勉強会#001資料
金大アルゴリズム勉強会#001資料
Takumi Murano
8_C言語入門 - 条件分岐について(if-else if-else)
8_C言語入門 - 条件分岐について(if-else if-else)
bc_rikko
C++による数値解析の並列化手法
C++による数値解析の並列化手法
dc1394
CAE/SIM meets AI
CAE/SIM meets AI
Rescale Japan株式会社
遺伝的アルゴリズム(Genetic Algorithm)を始めよう! 【簡略版】
遺伝的アルゴリズム(Genetic Algorithm)を始めよう! 【簡略版】
Kazuhide Okamura
私のチームのリーダブルコード
私のチームのリーダブルコード
Keisuke Tameyasu
Or seminar2011final
Or seminar2011final
Mikio Kubo
実践業務を爆速でこなすtipsとgenerics
実践業務を爆速でこなすtipsとgenerics
Daisuke Nagata
Lt会01_uetch
Lt会01_uetch
Tomoaki Ueda
kagamicomput201801
kagamicomput201801
swkagami
Code iq×japanr 公開用
Code iq×japanr 公開用
Nobuaki Oshiro
Similar to Pythonではじめる競技プログラミング
(20)
Introduction to programming competition [revised][PDF]
Introduction to programming competition [revised][PDF]
TokyoR24 - PerformanceRvsC#
TokyoR24 - PerformanceRvsC#
競技プログラミングの楽しみ
競技プログラミングの楽しみ
Rustで始める競技プログラミング
Rustで始める競技プログラミング
AtCoder Beginner Contest 028 解説
AtCoder Beginner Contest 028 解説
競技プログラミングにおけるコードの書き方とその利便性
競技プログラミングにおけるコードの書き方とその利便性
Sec15 dynamic programming
Sec15 dynamic programming
ソースコードの品質向上のための効果的で効率的なコードレビュー
ソースコードの品質向上のための効果的で効率的なコードレビュー
はじめての人のためのDeep Learning
はじめての人のためのDeep Learning
金大アルゴリズム勉強会#001資料
金大アルゴリズム勉強会#001資料
8_C言語入門 - 条件分岐について(if-else if-else)
8_C言語入門 - 条件分岐について(if-else if-else)
C++による数値解析の並列化手法
C++による数値解析の並列化手法
CAE/SIM meets AI
CAE/SIM meets AI
遺伝的アルゴリズム(Genetic Algorithm)を始めよう! 【簡略版】
遺伝的アルゴリズム(Genetic Algorithm)を始めよう! 【簡略版】
私のチームのリーダブルコード
私のチームのリーダブルコード
Or seminar2011final
Or seminar2011final
実践業務を爆速でこなすtipsとgenerics
実践業務を爆速でこなすtipsとgenerics
Lt会01_uetch
Lt会01_uetch
kagamicomput201801
kagamicomput201801
Code iq×japanr 公開用
Code iq×japanr 公開用
More from cocodrips
Python仮想環境構築の基礎と ツールの比較
Python仮想環境構築の基礎と ツールの比較
cocodrips
スマホでDeepLearning実践入門(α版)
スマホでDeepLearning実践入門(α版)
cocodrips
チームメイトのためにdocstringを書こう! pyconjp2019
チームメイトのためにdocstringを書こう! pyconjp2019
cocodrips
Docstringを書こう!
Docstringを書こう!
cocodrips
Python update in 2018 #ll2018jp
Python update in 2018 #ll2018jp
cocodrips
C++と仲良くなるためのn問 ~ポインタ編~ #ladiescpp
C++と仲良くなるためのn問 ~ポインタ編~ #ladiescpp
cocodrips
Simple is better than complex. ~私がPythonを愛する理由~
Simple is better than complex. ~私がPythonを愛する理由~
cocodrips
ポインタ渡しと参照渡し
ポインタ渡しと参照渡し
cocodrips
女性のためのC++コミュニティ Ladies++
女性のためのC++コミュニティ Ladies++
cocodrips
More from cocodrips
(9)
Python仮想環境構築の基礎と ツールの比較
Python仮想環境構築の基礎と ツールの比較
スマホでDeepLearning実践入門(α版)
スマホでDeepLearning実践入門(α版)
チームメイトのためにdocstringを書こう! pyconjp2019
チームメイトのためにdocstringを書こう! pyconjp2019
Docstringを書こう!
Docstringを書こう!
Python update in 2018 #ll2018jp
Python update in 2018 #ll2018jp
C++と仲良くなるためのn問 ~ポインタ編~ #ladiescpp
C++と仲良くなるためのn問 ~ポインタ編~ #ladiescpp
Simple is better than complex. ~私がPythonを愛する理由~
Simple is better than complex. ~私がPythonを愛する理由~
ポインタ渡しと参照渡し
ポインタ渡しと参照渡し
女性のためのC++コミュニティ Ladies++
女性のためのC++コミュニティ Ladies++
Recently uploaded
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
Toru Tamaki
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
sn679259
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
WSO2
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Toru Tamaki
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Hiroshi Tomioka
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
atsushi061452
Recently uploaded
(12)
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
Pythonではじめる競技プログラミング
1.
Pythonではじめる 競技プログラミング
2.
@cocodrips
3.
競技プログラミングって 聞いたことありますか?
4.
競技プログラミング 参加したことありますか? (TopCoder,
ICPCなど)
5.
問題 9 10
以下の整数をもつ、長さNの4つの配列A, B, C, Dが ある。各配列から1つずつ要素を選び、それらの総和が 0になるパターン数を答えよ。(1≦N≦20) 時間制限:2秒, スタック・メモリ制限:256MB ! 例 A = [1, 2, 3, 4, 5] B = [-1, -2, -3, -4, -5] C = [2, 4, 6, 8, 10] D = [0, -3, -6, -9] 1 + (-3) + 8 + (-6) = 0
6.
単純な解法 (全探索) 全てのパターンを試して条件にあったらカウントしていく
7.
問題2 9 10
以下の整数をもつ、長さNの4つの配列A, B, C, Dが ある。各配列から1つずつ要素を選び、それらの総和が 0になるパターン数を答えよ。(1≦N≦200) 時間制限:2秒, スタック・メモリ制限:256MB ! 例 A = [1, 2, 3, 4, 5] B = [-1, -2, -3, -4, -5] C = [2, 4, 6, 8, 10] D = [0, -3, -6, -9]
8.
さっきと同じ方法で解くと・・・
9.
さっきと同じ方法で解くと・・・ 不正解_(:3 」∠)_
10.
さっきと同じ方法で解くと・・・ 不正解_(:3 」∠)_
109以下の整数をもつ、長さNの4つの配列A, B, C, Dが ある。各配列から1つずつ要素を選び、それらの総和が 0になるパターン数を答えよ。(1≦N≦200) ! 時間制限:2秒, スタック・メモリ制限:256MB
11.
ちょっと工夫した解法 Ai +
Bj + Ck + Dl = 0
12.
ちょっと工夫した解法 Ai +
Bj + Ck + Dl = 0 Ai + Bj = - (Ck + Dl)
13.
競技プログラミングとは 与えられた問題に対して 解く早さと正確さを競う競技
コンテスト: ICPC, Google Code Jam, TopCoder(SRM), CodeForces, AtCoder 等
14.
基本的なルール 1. 制限時間内に3~10問位の問題を解く
2. 速く解くほど点数が高い 3. 順位に応じてレーティングが変化する レーティングに応じて、 ランク分けがされたり
15.
競技プログラミングの良い所
16.
競技プログラミングの良い所 1 プログラミングで人と競争できる!青春!
自分の実力・成長がTOEICみたいに数値化される
17.
競技プログラミングの良い所 1 プログラミングで人と競争できる!青春!
自分の実力・成長がTOEICみたいに数値化される 2 計算量を瞬時に見積もれるようになる どれくらいまでが時間内に動作するかがわかる 3 同じ問題の他人の解き方が見られる 4 標準ライブラリや言語仕様に詳しくなる 5 楽しい!
18.
競技プログラミングで Pythonを使うと便利!! •
オーバーフローを気にしなくていい!!!!!! 何百桁でも怖くない☆(ゝω・)v 1 • デバッグが楽 2 • 便利標準ライブラリがたくさん (itertools・collections等) 3
19.
TopCoder Codeforces AtCoder
開催頻度月3回月6回毎週土曜日 問題文英語英語日本語 問題数と時間3問/75分5問/120分4問/90分 PythonのVersion 2 2, 3 2, 3 解ける人数 (%) Topcoder の何色に相当するかDiv2 Div1 Div2 Div1 ABC ARC 100% 1 1 2 2 3 1 4 4 2 1 2 0% 1 2 3 1 2 3 1 2 4 5 2 3 5 4 2 1 3 1 2 3 4 主要なコンテストの紹介初心者に おすすめ 易 難
Download now