Successfully reported this slideshow.
Your SlideShare is downloading. ×

Pythonではじめる競技プログラミング

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 19 Ad

More Related Content

Slideshows for you (20)

Similar to Pythonではじめる競技プログラミング (20)

Advertisement

Recently uploaded (20)

Advertisement

Pythonではじめる競技プログラミング

  1. 1. Pythonではじめる 競技プログラミング
  2. 2. @cocodrips
  3. 3. 競技プログラミングって 聞いたことありますか?
  4. 4. 競技プログラミング 参加したことありますか? (TopCoder, ICPCなど)
  5. 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. 6. 単純な解法 (全探索) 全てのパターンを試して条件にあったらカウントしていく
  7. 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. 8. さっきと同じ方法で解くと・・・
  9. 9. さっきと同じ方法で解くと・・・ 不正解_(:3 」∠)_
  10. 10. さっきと同じ方法で解くと・・・ 不正解_(:3 」∠)_ 109以下の整数をもつ、長さNの4つの配列A, B, C, Dが ある。各配列から1つずつ要素を選び、それらの総和が 0になるパターン数を答えよ。(1≦N≦200) ! 時間制限:2秒, スタック・メモリ制限:256MB
  11. 11. ちょっと工夫した解法 Ai + Bj + Ck + Dl = 0
  12. 12. ちょっと工夫した解法 Ai + Bj + Ck + Dl = 0 Ai + Bj = - (Ck + Dl)
  13. 13. 競技プログラミングとは 与えられた問題に対して 解く早さと正確さを競う競技 コンテスト: ICPC, Google Code Jam, TopCoder(SRM), CodeForces, AtCoder 等
  14. 14. 基本的なルール 1. 制限時間内に3~10問位の問題を解く 2. 速く解くほど点数が高い 3. 順位に応じてレーティングが変化する レーティングに応じて、 ランク分けがされたり
  15. 15. 競技プログラミングの良い所
  16. 16. 競技プログラミングの良い所 1 プログラミングで人と競争できる!青春! 自分の実力・成長がTOEICみたいに数値化される
  17. 17. 競技プログラミングの良い所 1 プログラミングで人と競争できる!青春! 自分の実力・成長がTOEICみたいに数値化される 2 計算量を瞬時に見積もれるようになる どれくらいまでが時間内に動作するかがわかる 3 同じ問題の他人の解き方が見られる 4 標準ライブラリや言語仕様に詳しくなる 5 楽しい!
  18. 18. 競技プログラミングで Pythonを使うと便利!! • オーバーフローを気にしなくていい!!!!!! 何百桁でも怖くない☆(ゝω・)v 1 • デバッグが楽 2 • 便利標準ライブラリがたくさん (itertools・collections等) 3
  19. 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 主要なコンテストの紹介初心者に おすすめ 易 難

×