並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 305件

新着順 人気順

競技プログラミングの検索結果1 - 40 件 / 305件

  • アルゴリズムを楽しく学ぼう! 独習に役立つWebサイト・参考書・競技プログラミングを紹介〈13選〉 - エンジニアHub|若手Webエンジニアのキャリアを考える!

    アルゴリズムを楽しく学ぼう! 独習に役立つWebサイト・参考書・競技プログラミングを紹介〈13選〉 プログラムの性能を改善して開発スピードを向上させるため、アルゴリズムを気軽に、かつ楽しく学べるWebサイトや書籍など、13種類のさまざまなコンテンツを紹介していきます。 アルゴリズム(algorithm)とは何なのでしょうか? 例えば、 Wikipediaにはこうあります。 アルゴリズムとは、数学、コンピューティング、言語学、あるいは関連する分野において、問題を解くための手順を定式化した形で表現したものを言う。 「問題を解くための手順を定式化した」とは、ソフトウェアエンジニアにとって「プログラミング」のことです。 みなさんも日々の開発業務において、問題(要件)を解くための手順を考え、その手順を特定のプログラミング言語で表現していませんか? アルゴリズムは、一般に「ソート(整列)」や「探索」と

      アルゴリズムを楽しく学ぼう! 独習に役立つWebサイト・参考書・競技プログラミングを紹介〈13選〉 - エンジニアHub|若手Webエンジニアのキャリアを考える!
    • 競技プログラミングで解法を思いつくための典型的な考え方 | アルゴリズムロジック

      競技プログラミングの問題を解くためには2つのステップがあります。 問題で要求されていることを言い換える知っているアルゴリズムやデータ構造を組み合わせて解く 必要な(知っておくべき)アルゴリズムやデータ構造は色々なところで学ぶことができます。 しかし、「問題の言い換え」や「アルゴリズムを思いつく」というのは、非常に様々なバリエーションがあり、問題をたくさん解かないとなかなか身につきません。 そこで、この記事は以下のことを言語化し、練習のための例題を提示することを目標とします。 問われていることを、計算しやすい同値なことに置き換える方法アルゴリズムを思いつくための考え方競技プログラミングで「典型的」と思われる考え方 ※一部問題のネタバレを含むので注意 ※良く用いられるアルゴリズムやデータ構造については競技プログラミングでの典型アルゴリズムとデータ構造 を参考にして下さい。 入力の大きさ(制約)

        競技プログラミングで解法を思いつくための典型的な考え方 | アルゴリズムロジック
      • 【AtCoder】中卒の主婦が青コーダーになったおはなし【競技プログラミング】 - Qiita

        はじめまして。mayocornです。 先日のABC281で青コーダーになりました! 経歴 20代の主婦。旦那は競プロやってないです。 中学卒業→高校入学→高校中退→バイトを転々とする(ITに関してはSESで半年ほど働いた経験あり)→今の住所に引越してきてからは無職 趣味はゲームで、最近やっているタイトルはファイアーエムブレムエンゲージ、Splatoon3です。音ゲーやカードゲームに熱中してた時期もありました。CHUNITHMは旧レートでベスト枠15.3くらい。でものめりこむほどお金がかかるのでやめました。競技プログラミングは何問解いても無料なので続けられてます。 学力に関して話すと、高校数学は確率、論理と集合がちょっとわかるくらいで三角関数、微分積分、行列あたりは全然分かりません。青パフォーマンスをとるのにこのへんの知識が必要になったことはなかった気がします。(私が参加した回の中では) 競

          【AtCoder】中卒の主婦が青コーダーになったおはなし【競技プログラミング】 - Qiita
        • 競技プログラミングの在り方 ~「競技プログラミングを我々が終わらせる」を受けて~ - chokudaiのブログ

          nuc.hatenadiary.org 競技プログラミングについての言及があったのですが、バズってる+競技プログラミングについて、納得がいかない記述がかなり多く見受けられたので、反論記事を書きました。 自己紹介 競技プログラミングの日本最大企業「AtCoder」の社長を9年間続けています。競技プログラマとして、2010年から毎年1つは世界大会で入賞しています。 完全に競技プログラミング支持側の意見なので、ポジショントークを出来るだけ排除しようと心がけているものの、完全に排除することは多分出来ていないため、多数の意見と比較してもらえると幸いです。 競技プログラミングとGoogle まずは肯定的な所から。 Googleに入るためには、競技プログラミングではなく、Googleに入るための勉強をするべき、という点に関しては、間違いなく正しいです。特にAtCoderの競技プログラミングは、常日頃から

            競技プログラミングの在り方 ~「競技プログラミングを我々が終わらせる」を受けて~ - chokudaiのブログ
          • ITエンジニアのレベルアップに最適!競技プログラミングサイト10選 - paiza times

            Photo by Nic McPhee こんにちは。谷口です。 ITエンジニアの皆さんは、競技プログラミングに参加されたことはありますでしょうか? 競技プログラミングとは、一般に、出題されたプログラミング問題を制限時間内に解いて競い合う競技大会のことです。出題者側はテストデータを使い、回答が正しいかどうか判定されるといった流れで行われるものが多くなっています。 今回は、競技プログラミングを実施しているサイトを10件ご紹介します。 ■競技プログラミングサイト ◆1.TopCoder http://www.topcoder.com TopCoderはTopCoder社が主催する、世界中で約60万人の人々が参加する世界最大規模の競技プログラミングコンテストです。 TopCoderの各種目に参加すると、プログラミングスキルを表すレーティングと呼ばれる数値が付けられます。一定以上の高いレーティングを

              ITエンジニアのレベルアップに最適!競技プログラミングサイト10選 - paiza times
            • 競技プログラミングで黄色になるまでにやったこと - hogecoder

              先月末に、めでたく AtCoder 黄色になりました。 1976 -> 2025 (+49) 念願の!!!! 黄色!!!! です✌️✌️✌️✌️✌️✌️✌️ pic.twitter.com/6S5whNlq8G— tsutaj (@_TTJR_) 2018年9月29日 きのう、ふと「黄色になりました記事書いてないなぁ」と思って雑に呟いたら、書いてくれという圧力声援を感じたので、記していこうかなと思います。記事の特性上自分語りしかありませんが、それでも良い方はお読みいただければと思います。 自分の能力について やったこと 灰から茶へ 茶から緑へ 緑から水へ 水から青へ 青から黄へ 最後に 自分の能力について 世の中には、プログラミングを始める前から数学が大得意で、 AtCoder を初めて半年くらいで黄色になるような「競技プログラミングをするために生まれてきた天才」*1も中にはいるのですが、

                競技プログラミングで黄色になるまでにやったこと - hogecoder
              • 社会人10年目から始める競技プログラミングのすすめ - kuuso1のブログ

                これは、Competitive Programming Advent Calendar 2014の17日目の記事です。 競技プログラミングという世界を知って1年がたちました。結構飽きやすい性格の自分が1年ほどコンスタントに参加するという充実したプロコン(プログラミングコンテスト)ライフを送ることができた記念に、これからプロコンに参加してみようという方向けの記事を書かせていただきます。CPAC2014参加諸氏のような技術的に高度な内容は残念ながらなさそうですが(書けるものなら書きたい)、10年目エンジニア的視点で自分が感じたことを踏まえて「これはいいものだ」と思えたところなどを中心に振り返ることで、なんとかタイトル詐欺を回避したいと思います。中盤はお目汚し感が強いかも。。 経緯や参加したプロコンなど 半導体関連のメーカーで開発の仕事に従事していますが、2012年に職場都合で富山県に引っ越すこ

                • 競技プログラミングで使う有名グラフアルゴリズムまとめ

                  0. はじめに AtCoderなどでは、グラフを扱った問題が多く出るが、その度に一から実装していると時間が掛かりすぎてしまうため、有名なものをあらかじめ持っておく必要がありそう。そこで、Pythonを用いて、ダイクストラ法、ベルマンフォード法、プリム法、クラスカル法、ワーシャルフロイド法を実装した。 コメント、意見等ある方は是非! お待ちしてます! 1. ダイクストラ法 1.1. ダイクストラ法(defaultdictで実装) defaultdictで実装すると、リストで実装するよりも、ノード数$N$が大きい際には高速に動作する。ただし、経路復元の関数は、うまく書けなかった......。 (2019/7/6 追記)結局できました。1.1.1. を参照してください。 import collections import heapq class Dijkstra: def __init__(se

                    競技プログラミングで使う有名グラフアルゴリズムまとめ
                  • AtCoder(競技プログラミング)の色・ランクと実力評価、問題例 - chokudaiのブログ

                    最新の情報はAtCoder公式情報サイトAtCoderInfoに記載されています info.atcoder.jp 以下、古い記事の内容となります。 近頃「AtCoderの色を就活等でアピールしたい時に上手く出来ない!」と言われるので、「どれくらいのレベルの人なの?」という説明と、エンジニアさん向けに「実際どういう問題が解けるの?」というまとめを書いておきたいと思います。解き方のヒントが書いちゃってあるので、自分で解きたい人は、ヒントを読む前に解いてください。 Update履歴 2020/6/22 茶色・緑色に関する評価を書き足しました。参加人数を更新しました。 2022/10/02  アップデート要求が多くありますが、現状でも大きな変化はありません。(この文章を追記しました) 2023/12/09 公式サイトへのリンクを冒頭に追加しました。この記事は昔のものになります。 大前提:AtCod

                      AtCoder(競技プログラミング)の色・ランクと実力評価、問題例 - chokudaiのブログ
                    • [2023年1月版]競技プログラミングを始めたばかりの人にオススメの問題集 - Qiita

                      「競技プログラミングを始めたばかりの人にオススメの問題集は何?」というのが普段よく見ている Slack で話題に登っていたので、私の考えをまとめました。 おことわり 私は競技プログラミングを本格的に始めてからもうすぐ5年の水色コーダーです。めっちゃくちゃに強いわけではないですが、基礎的なところはある程度習得している、という感じです。 この記事は、そのような実力の私が、あくまでも独自の評価軸で勝手に評価したものなので異論はあると思います。また、各種学習法/問題集について私自身が全て完走しているわけではありません。 これらをご理解いただいたうえで、以下をご覧ください。 最推し: アルゴ式 2023年1月現在、初心者向けの最初の問題集としてお勧めしたいのは アルゴ式 です。アルゴ式の特徴として次のようなものがあると思っていて、それが初心者が練習するうえで適した特徴だと考えるからです ジャンルごと

                        [2023年1月版]競技プログラミングを始めたばかりの人にオススメの問題集 - Qiita
                      • 書籍「競技プログラミングの鉄則」を書きました - E869120's Blog

                        1. はじめに こんにちは、東京大学 2 年生の米田優峻(E869120)と申します。私は競技プログラミングが趣味で、AtCoder や国際情報オリンピックなどに出場しています1。また、2021 年 12 月には、初の著書となる『「アルゴリズム×数学」が基礎からしっかり身につく本』を出版しました(2 万部突破)。 さて、このたびはマイナビ出版から、2 冊目の本を出版させていただくことになりました。競技プログラミングで必要となる「アルゴリズム」や「思考テクニック」を学ぶことができる、全く新しい教科書です。 競技プログラミングの鉄則 - honto 発売日は 2022/9/16 です。電子書籍版も同じ日(9 月 16 日)に出る予定です。この記事では、本書の内容と想定読者について説明させていただきます。 2. 本書の構成 本書は、競技プログラミングの全く新しい教科書です。序章「競技プログラミン

                          書籍「競技プログラミングの鉄則」を書きました - E869120's Blog
                        • 『ウマ娘』最強育成法理論編・実践編!競技プログラミングの会社・AtCoder代表取締役社長のchokudaiさんによる解説がすごい分かりやすい

                          chokudai(高橋 直大)@AtCoder社長 @chokudai AtCoder(株)代表取締役社長(競技プログラミングの会社)/競プロ世界ランカー(GoogleHashCode優勝、ICFPC優勝4回等)/筑駒中高→慶應SFC卒/たこやき/ぷよぷよ/オメスト/まゆドリフ全一/チュウニズム虹レ/NewsPicksプロピッカー@chokudai_picks/サブ:@chokudai_s chokudai.net

                            『ウマ娘』最強育成法理論編・実践編!競技プログラミングの会社・AtCoder代表取締役社長のchokudaiさんによる解説がすごい分かりやすい
                          • RustCoder ―― AtCoder と Rust で始める競技プログラミング入門

                            AtCoder のジャッジシステムを利用しながらプログラミング言語 Rust について解説します.C++ や python のような他の言語に触れたことのないプログラミング初心者でも読めるよう努めています.更新履歴は github ( https://github.com/fiveseven-lambda/zenn/commits/main/books/rust-atcoder ) から見られます.内容に関するご意見やご指摘などは,プルリクエストか twitter ( https://twitter.com/57tggx ) で遠慮なくお願いします.カバー画像: GRAPHY 筧様

                              RustCoder ―― AtCoder と Rust で始める競技プログラミング入門
                            • 競技プログラミングに関係する数学の整理 ~文系出身や数学苦手erが、もっと競プロを楽しむために~ - テルの競プロメモ

                              まえがき この記事の目的 意図する対象読者 今回の整理の仕方(記事の見方) 注意 競プロに関係する数学(本題) 言葉(文系でも多分聞いたことはある)編 言葉(文系だと聞いたことないかも)編 言葉(離散数学)編 「式変形」編 「図形っぽいやつ」編 筆者のバックグラウンド 経歴、仕事など まえがき この記事では、競技プログラミングに関係する数学用語・概念と、それがどんな単元(分野)に属するものかを整理(一覧化)します。 競技プログラミングの問題に出てくる用語・概念をはじめ、競技プログラミングの解説記事などに出てくる用語・概念も、思いつく限り挙げています。 「この記事の数学的な部分、どのぐらい信用できるの?」とか、「数学苦手と言ってもどのくらい苦手なの?」といった疑問への参考としては、筆者のバックグラウンドを記事の最後で紹介したので、気になる方は先にそちらを読んでください。 この記事の目的 文系

                                競技プログラミングに関係する数学の整理 ~文系出身や数学苦手erが、もっと競プロを楽しむために~ - テルの競プロメモ
                              • 競技プログラミングことはじめ

                                第1章 競技プログラミングとは?(p.7~) 第2章 AtCoderの始め方(p.43~) 第3章 競プロで必要な「アルゴリズムと思考力」(p.86~) スライドのまとめ(p.154~)

                                  競技プログラミングことはじめ
                                • 「競技プログラミングの鉄則」のレビュー - じじいのプログラミング

                                  米田 優峻さん(E869120@ICPC2022 (@e869120) / Twitter)の著書「競技プログラミングの鉄則 ~アルゴリズム力と思考力を高める77の技術~」をご恵贈いただきました。その感想です。 競技プログラミングの鉄則 (Compass Booksシリーズ) 作者:米田 優峻マイナビ出版Amazon 素晴らしい内容で競技プログラミング初心者への最初の1冊として最もお勧めできる本です。特に、数学も得意というわけではなくプログラミング自体も初めてという方には、ダントツで一番お勧めできる本です。 本書の良い点 1.図が分かりやすい。 最初の48ページが無料公開されているので、百聞は一見にしかずということで見ていただけると良いと思います。i www.dropbox.com 図自体分かりやすいですし全編カラーで書かれているのも良いです。段階的に説明すべきものについて無理に1枚に納め

                                    「競技プログラミングの鉄則」のレビュー - じじいのプログラミング
                                  • 文系ギャルが0から始める競技プログラミング#0|マリー

                                    Introプログラミングの経験なし、仕事は事務職、好きな缶チューハイはフォーナイン、好きなタピオカはジャスミンミルクティーの金髪ギャルです。 突然ですがこのたび、競技プログラミングをはじめました。 きっかけはエンジニアの夫がなんかすごいらしいが、何がすごいのかいまいちよくわからなかったから。 「私も競技プログラミングやりたい!教えて!いますぐ!」言語どうする?となったので、師によるセレクトによりC++に決定。 ・How to C言語とりあえずXcodeをインストールして、 まずはC言語の基本を叩き込まれました。 これからプログラミングを学ぶ初心者に、C言語を1週間で身につけてもらうための内容です。 一週間で身につくC言語の基本 一週間が体感30分ほどの超スピードで過ぎていきもうマスターしたも同然。 謎の万能感を感じてAtCoderで実際に問題を解き始めることに…。 Outroいざ実践編。#

                                      文系ギャルが0から始める競技プログラミング#0|マリー
                                    • 競技プログラミングを終わらせる人々への指摘、頑張っている人々へのアドバイス - じじいのプログラミング

                                      はじめに 競技プログラミングに関連する、以下の記事が話題にあがりました。 nuc氏1つ目の記事 nuc.hatenadiary.org chokudai氏の記事 chokudai.hatenablog.com nuc氏2つ目の記事 nuc.hatenadiary.org nuc氏は、元Googleのエンジニアで面接も担当されていました。現在は某医大の特別特命准教授の方で、2007年頃に東大で競技プログラミングをされていた方のようです(氏名も役職も上記の記事のリンク先で公表されています)。nuc氏の記事は、競技プログラミングに対して「我々の目的の一つは、我々が始めてしまった競技プログラミングを我々が終わらせることです。」といった強い主張が多く、これらの記事の反応をみたのですが、 競技プログラミングをしている方々が、nuc氏の主張で不安になり、特に若い世代で、競技プログラミングをやめようとして

                                        競技プログラミングを終わらせる人々への指摘、頑張っている人々へのアドバイス - じじいのプログラミング
                                      • 競技プログラミング、ソフトウェア・エンジニア、コミュニティ

                                        なんか言及もされたのでアンサー的に書いてみたけど、アンサーには大してなってないな? ってやつです。一部で言及された、競技プログラミング (競プロ) 関係の話。 その前に、「プログラミングの競技」っていろいろあります。 短時間で問題に解答していく型 (ICPC / 情報オリンピック / AtCoder Regular / TopCoder とか)最適解が容易に求まらない問題のスコアを競う型 (SuperCon / AtCoder Heuristic / ISUCON / ゴルフ / ICFP Programming Contest の一部とか)対戦型 (ICFP Programming Contest の一部とか、最近のはあんまり知らないですが RoboCode / Imagine Cup とか)謎解き型 (ICFP Programming Contest で何回かありましたね。 UMIX

                                        • AtCoder:競技プログラミングコンテストを開催する国内最大のサイト

                                          [How to get an account / participate in contests?](http://atcoder.jp/posts/2) [AtCoder's Contest Format](http://atcoder.jp/posts/1) [AtCoder's Testcases](https://www.dropbox.com/sh/nx3tnilzqz7df8a/AAAYlTq2tiEHl5hsESw6-yfLa?dl=0) - [AtCoder's Rating System](https://www.dropbox.com/sh/zpgcogxmmu84rr8/AADcw6o7M9tJFDgtpqEQQ46Ua?dl=0) - [AtCoder Race Ranking(2023)](https://img.atcoder.jp/file/gp30/race

                                            AtCoder:競技プログラミングコンテストを開催する国内最大のサイト
                                          • 競技プログラミングとChatGPTを含むAIについて - chokudaiのブログ

                                            はじめに この記事は、ChatGPTを受けての競プロ周りの情報、およびchokudai個人の意見を発信したものです。基本的にはAtCoderの運営についても同方針を取る予定ですが、方針が変わり次第、AtCoderのHP/Twitter等で告知されます。 現在のAtCoderにおける競プロAIの実力についての事実 AtCoderのコンテストに対するソースコードはインターネット上に多くあり、おそらくそれを学習してChatGPTなどが作成されているため、過去問を利用して解ける/解けないを判定すると、過剰に解ける側に寄ってしまいます。 そこで、最新のコンテストで調査した事例について、Twitterからいくつか引用します。 ABC280にChatGPTを参加させてみました。結果はC問題まで解くことができ、順位は7245人中5290位でした。 A問題→ノータイムで正解 B問題→ノータイムで正解 C問題

                                              競技プログラミングとChatGPTを含むAIについて - chokudaiのブログ
                                            • Python 競技プログラミング高速化tips (PythonでAtcoderをやる際に個人的に気を付けてること) - じゅっぴーダイアリー

                                              こんにちは。最近やよい軒の彩定食にハマってるじゅっぴーです。 自分の確認と最近Pythonで競技プログラミング始めたよーという人向けを兼ねたPython高速化記事です。 競技プログラミングはAtcoderを想定しています。 はじめに Pypyを使う! みんな一度は通る道 Pypy一択なもの Pypyじゃだめなもの Python定数倍高速化のテクニック 最後に はじめに 今回の今の時点でのA問題の言語別提出コード数、 全体: 7000 C++: 3240 Python3: 2000 って感じで75%くらいがC++とPython3で提出されてる— saba (@saba_kpr) 2019年5月25日 最近PythonでAtcoderをはじめている人がどんどん増えています。 一方で『Pythonの高速化テクニック:C++で書き直す。』というネタがあるほど、Pythonは劇遅です。 競技プログラ

                                                Python 競技プログラミング高速化tips (PythonでAtcoderをやる際に個人的に気を付けてること) - じゅっぴーダイアリー
                                              • AtCoder:競技プログラミングコンテストを開催する国内最大のサイト

                                                [How to get an account / participate in contests?](http://atcoder.jp/posts/2) [AtCoder's Contest Format](http://atcoder.jp/posts/1) [AtCoder's Testcases](https://www.dropbox.com/sh/nx3tnilzqz7df8a/AAAYlTq2tiEHl5hsESw6-yfLa?dl=0) - [AtCoder's Rating System](https://www.dropbox.com/sh/zpgcogxmmu84rr8/AADcw6o7M9tJFDgtpqEQQ46Ua?dl=0) - [AtCoder Race Ranking(2023)](https://img.atcoder.jp/file/gp30/race

                                                  AtCoder:競技プログラミングコンテストを開催する国内最大のサイト
                                                • 競技プログラミング特有の変な実装テク - ichyo.jp

                                                  初めに この記事はCompetitive Programming Advent Calendar 2014の15日目の記事です. 競技プログラミングでは,アルゴリズムをひらめく力や,数学やアルゴリズムの知識量などが強さを決める大きな要素ではありますが, もちろん,プログラミングを使った競技である以上は,コードの実装力が勝敗を分けることもあります. 例えば,ICPC系のコンテストでは,アルゴリズムを考える能力よりも,実装量の多いプログラムをいかにバグなく高速に実装するかが重要な 問題セットが与えられることが時々あります. 競技プログラミングと無縁なプログラマーは,実装力と聞くと, クラスの構造をうまく設計したり,変更に強い美しいコードを実装する能力だと想像する人がいるかもしれません. ですが,プログラミングコンテストに必要な実装力は,そうした保守性や拡張性ではなく, 「目的の処理をシンプルな

                                                  • AtCoder と Rust で始める!競技プログラミング入門(Rust 版 APG4b)

                                                    競プロ( AtCoder 青 / CodeForces 青), C / C++ , Rust ,Arch Linux に関連する記事を書くと思います

                                                      AtCoder と Rust で始める!競技プログラミング入門(Rust 版 APG4b)
                                                    • 【AtCoder】Pythonで競プロをするときの注意点まとめ【競技プログラミング】 - Qiita

                                                      これは何? 競技プログラミングをPythonでやるときに注意すべき点をまとめました。 言語選択編 PythonがAtCoderには5種類ある AtCoderにはPythonの処理系が5つ入っています。具体的には Python (CPython 3.11.4) Python (Mambaforge / CPython 3.10.10) Python (PyPy 3.10-v7.3.12) Python (Cython 0.29.34) SageMath (SageMath 9.5) の5つです。それぞれ特徴があります。 Python (CPython 3.11.4) 一番オーソドックスなPythonです。 一般に(競プロ界隈でなく)Pythonというときはこれを指すと思います。 Python (Mambaforge / CPython 3.10.10) mambaforge経由で導入されたp

                                                        【AtCoder】Pythonで競プロをするときの注意点まとめ【競技プログラミング】 - Qiita
                                                      • ChatGPTに競技プログラミングさせてみた【AtCoder】 - Qiita

                                                        FizzBuzz PracticeA - Welcome to AtCoder AC ABC086A - Product AC ABC049C - 白昼夢 AC まとめ いかがだったでしょうか(ry AtCoderプロンプトエンジニアリング界隈が発展してほしいです

                                                          ChatGPTに競技プログラミングさせてみた【AtCoder】 - Qiita
                                                        • Let’s 競技プログラミング! E8さんが教える アルゴリズム発想のキホン(12) アルゴリズムの基本用語 - 「グラフ」とは?

                                                          皆さんは「グラフ」という言葉を聞いて何を思い浮かべますか。Excel の折れ線グラフや棒グラフを想像する方が多いことでしょう。しかしアルゴリズムの文脈では、グラフは「モノとモノを繋ぐ関係」のことを指します。今回は、グラフの基本について整理した上で、どんな問題をグラフで表すことができるのかを紹介します。 グラフとは グラフは、モノとモノを繋ぐ関係を表すネットワーク構造のようなものです。グラフは頂点と辺からなり、頂点はモノを、辺は繋がりを表します。イメージしづらい場合は、鉄道路線図の駅を頂点、線路を辺と考えると良いでしょう。なお、頂点同士を識別するため、各頂点には 1、2、3…… と番号が付けられることが多いです。 無向グラフと有向グラフ 下図左側のように、辺に向きが付いていないグラフを「無向グラフ」と言い、下図右側のように、辺に向きが付いているグラフを「有向グラフ」と言います。例えば、一方通

                                                            Let’s 競技プログラミング! E8さんが教える アルゴリズム発想のキホン(12) アルゴリズムの基本用語 - 「グラフ」とは?
                                                          • エンジニアのスポーツ「競技プログラミング」を実際に体験してみた

                                                            「競技プログラミング」とは、出題される問題を制限時間内に解くプログラムを作成するスピードを争う競技で、プログラミングを使ってパズルを解くスポーツと表現されることもある競技です。今回は競技プログラミングに参加するための環境を構築し、コンテストの過去問を解いてみました。 AtCoder http://atcoder.jp/ 今回はAtCoderというサイトを使います。トップページへアクセスし、右上の「新規登録」をクリック。 ユーザーID、メールアドレス、パスワードなどを記入し、「個人情報の取り扱いについて確認しました」にチェックを入れて「新規登録」をクリックします。 登録が完了したら「practice contestに参加する」というボタンが表示されるのでクリックします。 画面上部に「Joined in~」という文字が出たのを確認し、上のタブから「問題」をクリックします。 つづいて「はじめての

                                                              エンジニアのスポーツ「競技プログラミング」を実際に体験してみた
                                                            • 自動プログラミングAIの「AlphaCode」をDeepMindが発表、競技プログラミングレベルのコード生成が可能

                                                              DeepMindが競技プログラミングレベルのプログラミングが可能な人工知能(AI)の「AlphaCode」を発表しました。AlphaCodeのほかにも自動でプログラミングが可能なAIは存在しますが、AlphaCodeは414億ものパラメーターを保持した特に精度の高いAIに仕上がっているとのことです。 Competitive programming with AlphaCode | DeepMind https://deepmind.com/blog/article/Competitive-programming-with-AlphaCode Competition-Level Code Generation with AlphaCode (PDF)https://storage.googleapis.com/deepmind-media/AlphaCode/competition_leve

                                                                自動プログラミングAIの「AlphaCode」をDeepMindが発表、競技プログラミングレベルのコード生成が可能
                                                              • 『競技プログラミングの鉄則』書評

                                                                書籍『競技プログラミングの鉄則』(マイナビ出版)を著者の @e869120 氏から恵贈いただいたので書評を記します。 C++ で書かれたコンテスト対策本は、いわゆる蟻本 (2012), 螺旋本 (2015) があり、コンテストが一部のマニアックな情報系向けだった時代のニーズには十分な書でした。 ところが昨今の AtCoder を中心とする競技人口の変化、レーティング競争、過去問の蓄積によって、エントリーレベルかつ効率的に基本テクニックを習得できる、モダンなジャッジシステムと連係する学習リソースの需要が高まり、競プロ典型 90 問 (2021) のような試みがなされてきました。 本書はその延長線上にあり、AtCoder の大多数の登録者、あるいは潜在的な登録者、つまり膨大な過去問から地道にテクニックを吸収していく体力と時間的な余裕が足りず、低難度の問題から先へ進むことができない人々の道標とな

                                                                  『競技プログラミングの鉄則』書評
                                                                • 日本の競技プログラミングを世界水準に引き上げる レッドコーダー 秋葉拓哉 | 三年予測 | dodaエンジニア IT

                                                                  レッドコーダー 秋葉拓哉 1988年生まれ。25歳。高校2年生のときにプログラミングコンテスト「SuperCon」で準優勝、 「日本情報オリンピック」にて優勝を達成。それ以降プログラミングコンテストに精力的に参加し、 2012年に「ACM-ICPC」世界大会にて銅メダルを獲得。 プログラミングコンテスト向けアルゴリズム書『プログラミングコンテストチャレンジブック(第二版)』(マイナビ)が発売中。 秋葉拓哉は、最初は自分がレッドコーダーになれるとは思っていなかったそうだ。 レッドコーダーとは、約60万人がオンラインで参加するプログラミングコンテスト「TopCoder」での成績を示す数字「レーティング」が2200以上の挑戦者のことだ。プログラマの中でも一目置かれる存在である。 2007年に秋葉が大学に入りTopCoderの存在を知った頃、レッドコーダーは日本で4人しかいなかった。レッドコーダー

                                                                    日本の競技プログラミングを世界水準に引き上げる レッドコーダー 秋葉拓哉 | 三年予測 | dodaエンジニア IT
                                                                  • 競技プログラミングのための C# (4.0 以降) の Tips 詰め合わせ - C♯の勉強

                                                                    この記事は、Competitive Programming Advent Calendar Div2013 - PARTAKE の10日目の記事です。 はじめに 長い年月を経て、ついにTopCoderの C# 環境が、.NET Framework 2.0 から .NET Framework 4.0 へとアップグレードされました。 そこでさっそく TopCoder の 本番 SRM で使用する言語を C++ から C# へと変更しました。また、それまで競技プログラミングで早解き系のコンテストで C# を使ったことがほとんどなかったため、備忘録として本ブログでSRMの過去問を C# 4.0 で解くようにしました。 本記事では、過去問を解く過程で得た、競技プログラミング向けの簡単な C♯ の小技をまとめています。 C♯4.0 が利用できるオンラインジャッジ TopCoder CodeForces

                                                                      競技プログラミングのための C# (4.0 以降) の Tips 詰め合わせ - C♯の勉強
                                                                    • やる夫が(インライン)アセンブラを使って競技プログラミングに挑戦するようです - Negative/Positive Thinking

                                                                      この記事はCompetitive Programming Advent Calendar Div2013の9日目の記事です。 今年も、競技プログラミングでほとんど役に立たないネタをお送りします。 1:名無しのターゲットさん:2013/12/9(月) 00:25:07 id:jetbead ! |   !l |! !   | !     | ! l    |  ! l  |! |   !ll  |! l  |!|   !l  |   !   ! | !l |! !   | ! !ll  |! l !|  l   !ll  |! l  !|     | ! l  il  i (ヽ======== |  |! !   | !     | ! l    | l    |  !|  ! l  |   ! l ノ ̄ノ ̄ノ ̄ノ ̄ノ ̄ノ ある日の競技プログラミング終了直前のやる夫家  |! l  |! ノ

                                                                        やる夫が(インライン)アセンブラを使って競技プログラミングに挑戦するようです - Negative/Positive Thinking
                                                                      • 社会人 2 年目が競技プログラミングを始めた 1 年を振り返る - na_o_ysのブログ

                                                                        この記事は Competitive Programming Advent Calendar Div2014 12 日目です。 競技プログラミングを始めて 1 年がたちました。この一年をざっと振り返ってみたいと思います。 【1 月】PrintScreen / Aizu Online Judge 新卒 SIer 1 年目だった僕は、一日 8 時間のうち 7 時間待機、1 時間でプリントスクリーンを Excel に貼り付ける業務を任され、時間を持て余していた。そこで Aizu Online Judge と出会い、ハマった。AOJ サブミット用のスクリプトを作ったりした。 小難しいデータ構造だとか理論を知らなくても、発想の転換で簡単に解けたりするのはおもしろいなーと。例えば 1028: Ideal Coin Payment and Change なんかは、ただの全数探索なんだけど発想の転換の妙を初

                                                                        • Pythonではじめる競技プログラミング #pyconjp - ぴよぴよ.py

                                                                          PyConJP2014で競技プログラミングについてLTしてきました。 発表で出した問題と、主要な競技プログラミングのコンテストについて紹介したいと思います。 発表資料 発表で紹介した問題の回答について 発表でみなさんに考えてくださいと言った問題です。 単純に全探索をすると時間制限にひっかかってしまうこの問題。 a + b + c + d = 0 は、 a + b = - (c + d) というのを利用して解いた例がこんなかんじになります。 Pythonではじめる競技プログラミング 例題の解答例 create_pairsの関数でAとB,CとDをそれぞれ足し合わせた数を計算し、それがいくつあるかをカウントしておきます。 あとはAとBの合計値をfor文でまわして、CとDの合計値のなかに-(A+B)がいくつあるかを探しています。 この解法だと計算量はO(N **2)なので、Nが200でも間に合いま

                                                                            Pythonではじめる競技プログラミング #pyconjp - ぴよぴよ.py
                                                                          • 競技プログラミング漫画にありがちな展開

                                                                            Takaaki Umedu @TakaakiUmedu 強敵アセンブラ使い登場。が、最適化のしすぎで熱暴走してる隙に逆転。「そ、そうか、主人公がNOPを入れていたのは熱暴走しないぎりぎりの性能を狙うためだったんだ!」 #競技プログラミング漫画にありがちな展開 2012-06-30 14:51:16

                                                                              競技プログラミング漫画にありがちな展開
                                                                            • 【第4回】競技プログラミングはITエンジニアをどう鍛えるか | GeeklyMedia(ギークリーメディア) | Geekly(ギークリー) IT・Web・ゲーム業界専門の人材紹介会社

                                                                              プログラミングのスキルは、ウェブをはじめシステム開発の業務に欠かせないものですが、それ自体を「競技」として楽しみ、練習を通じて上位を目指すという世界もあります。そんな競技プログラミングにおいて「強くなる」ことは業務におけるプログラミングスキルの向上に関係があるのか、そもそも人間にとって「学び」とは何なのか、日本語で参加できる競技プログラミングのコンテストを定期的に開催するAtCoder株式会社の高橋直大さんと青木謙尚さんが、株式会社一休でウェブシステム開発に携わる伊藤直也さん、所澤友大さんと語ります。 ・伊藤 直也さん / 株式会社 一休 執行役員 CTO 新卒入社したニフティ株式会社でブログサービス「ココログ」を立ち上げ、CTOを務めた株式会社はてなでは「はてなブックマーク」などの開発を主導。グリー株式会社では統括部長としてSNSを担当した。2016年4月、一休に入社し執行役員CTOに就

                                                                              • 今すぐフォローすべき競技プログラミング界のスーパーエンジニア - chokudaiのブログ

                                                                                今すぐフォローすべきnode.js界のスーパーエンジニアの便乗です。 競技プログラミングは、最近ようやく書籍化されたものの、やはり殆どの知識はインターネットに頼ることとなります。解けない問題を独力で解決するのは非常に難しく、特にリアルタイムのコンテストなどに出場される際には、こうした人々をフォローし、考え方・解法を徐々に身に着けていくことで、様々な問題を解決できるようになるでしょう。 筆者の主な活動場所がTopCoderなので、TopCoderの人がメインになっちゃうかと思われます。あと無断で紹介してるので、マズかったら教えてください。 紹介前の補足 実績を書く際に、TopCoderのRatingを引用するので、TopCoderのレーティング分布を紹介しておきます。 この分布における、Rating 2200以上の赤い人が、RedCoderと呼ばれる人達です。 Algorithm部門において

                                                                                  今すぐフォローすべき競技プログラミング界のスーパーエンジニア - chokudaiのブログ
                                                                                • 競技プログラミングの強みと「典型力」について - chokudaiのブログ

                                                                                  「典型問題」という言葉。競技プログラミングにおいて、皆さん絶対聞いたことがある単語だと思います。少し長くやっている人であれば「典型とか言われているけど全然わからない」みたいなことも、よくあるんじゃないでしょうか? そこで、今回は、「典型問題って何なのか?」みたいな話を、ちょっとしっかり書いていこうかな、と思います。 誰もが「典型問題」と疑わない問題について 例えば、こんな問題が出たら、誰もが「典型問題」という言うでしょう。 N個の地点があり、M本の道路で結ばれている。各道路には、反対側の地点に行くためにかかる時間が与えられている。 A地点からB地点に行くまでの時間を出力しなさい。 これは、最短経路問題そのままですし、ダイクストラ法などのアルゴリズムをそのまま適用して解くことのできる問題です。これが、一番分かりやすい典型問題です。 まとめ:「名前をついているアルゴリズムをそのまま実装」が、一

                                                                                    競技プログラミングの強みと「典型力」について - chokudaiのブログ