並び順

ブックマーク数

期間指定

  • から
  • まで

161 - 200 件 / 271件

新着順 人気順

PyConJPの検索結果161 - 200 件 / 271件

  • Grundy数(Nim数, Nimber)の理論

    ■「競プロでのゲーム問題って得意?」 ●「ゲーム問題ですか。ものによりますけど、Grundy 数で解ける問題は得意ですね。先輩は得意ですか?」 ■「その Grundy 数がよくわからないんだよね。最後から逆にたどると解ける問題とかは分かるんだけど、Grundy 数の何が嬉しいのかよくわからない」 ●「じゃあ今日はGrundy数のお話をしましょうか」 Grundy数を扱えるゲーム ●「Grundy 数は、ゲームの局面に非負整数を割り当てて必勝法や勝敗判定を行うというものです」 ■「ゲームなら何でも Grundy 数が使えるの?」 ●「そういうわけではないんですが、競プロで出てくるゲームなら使えるものは多いですね」 ■「何か必要条件があるってこと?」 ●「はい。公平ゲーム(不偏ゲーム)と呼ばれるゲームである必要があります。それにはこんな条件が必要です」 2人のプレーヤーは、terminal p

      Grundy数(Nim数, Nimber)の理論
    • 厳選!C++ アルゴリズム実装に使える 25 の STL 機能【後編】 - Qiita

      ですが、以下のように思った人も多いと思います。 今回の 25 個の標準ライブラリはわかったけど、どういう問題やどういうアルゴリズムの実装で活用できるのか??? そこで本章では、どのような問題を解くときに C++ の標準ライブラリが使えるのか、11 個の例を紹介します。 5-1. バブルソートの実装 (swap) バブルソートは、アルゴリズム解説本や、大学の授業などでも教えられることが多いようです。以下のような発想に基づいたアルゴリズムです。 「配列の中から、大きさが逆転している部分があれば swap する」という操作を繰り返す。 最終的に、大きさが逆転している部分が無くなれば操作を終了する。 この「バブルソート」は、swap 関数 を使うことで実装しやすくなります。実装例は以下のようになります。 ソースコード #include <iostream> using namespace std;

        厳選!C++ アルゴリズム実装に使える 25 の STL 機能【後編】 - Qiita
      • AtCoderの色(灰~緑)とレベルの関係について - PCの歯車

        この記事は、かなり主観が入っています。より客観的な色とレベルの関係が知りたい方は、AtCoder コンテストについての tips という記事が参考になると思います。 目次用語解説ABCAtCoder Beginner Contest のこと。初心者~中級者向けのコンテスト。 レーティング 2000 未満(青色まで)の人が Rated(レート変動あり)になる。 以前、ABC が 4 問体制だった頃はレーティング 1200 未満(緑色まで)が Rated だった。その頃の ABC は初心者向けのコンテストだったが、今の ABC(6 問体制)は中級者も対象になっている。 特に E,F 問題は中級者向けの問題(初心者には手が出ないことが多い)なので、はじめのうちは E,F 問題が解けなくても大丈夫。 AGCAtCoder Grand Contest のこと。上級者向けのコンテスト。 Rated の

          AtCoderの色(灰~緑)とレベルの関係について - PCの歯車
        • 必須教養!?プログラミング“金メダリスト”に学ぶ「アルゴリズム」【橋本幸治の理系通信】(2022年3月30日)

          興味深いサイエンスニュースをお伝えする「理系通信」。 今回のテーマは「アルゴリズム」です。 アルゴリズムとは「計算手順」のこと。 スーパーコンピューターをもってしても計算に100年かかるような問題を、「うまいアルゴリズム」を使えば0.01秒で解けてしまうこともあります。 そんなアルゴリズムの魅力を、国際情報オリンピックで金メダルを三度獲得したプログラミングの達人である、東京大学新2年生の米田優峻さんに教えてもらいます。 ※引用元: 問題解決のための「アルゴリズム×数学」が基礎からしっかり身につく本(米田優峻 著) https://gihyo.jp/book/2022/978-4-297-12521-9 #アルゴリズム#プログラミング#E8さん#競技プログラミング#数学#動的計画法#二分探索法#幅優先探索#最短経路問題#線形計画法#E869120#競プロ#AtCoder WBS、モーサ

            必須教養!?プログラミング“金メダリスト”に学ぶ「アルゴリズム」【橋本幸治の理系通信】(2022年3月30日)
          • うさぎでもわかるアルゴリズム 動的計画法

            こんにちは、ももやまです。 動的計画法は、アルゴリズムでもかなり重要な内容です。AtCoderやらプログラミングコンテストとかでもよく出てきます。 ですが、動的計画法は「アルゴリズムを学ぶ上での壁・登竜門」とも呼ばれるとおり、かなり難易度の高いアルゴリズムとなっています。どの参考書を見てもなかなかわかりやすくは書かれていません。 そんな動的計画法を今回はうさぎでもわかるようにわかりやすくかみ砕いて説明したいと思います。 1.動的計画法とは 動的計画法とは、 問題をいくつかの簡単で小さな問題に分割 それぞれの問題の計算結果を表に記録 同じ問題に対しては表から計算結果を参照する の3つの特徴を持ったアルゴリズムです。 といきなり言われてもわけがわからないと思うので、動的計画法のイメージを説明しましょう。 動的計画法のイメージ 例えば、\[ 28 \times 37 \]の計算を解きなさい。 と

              うさぎでもわかるアルゴリズム 動的計画法
            • https://kenkoooo.com/atcoder

              • AtCoder LibraryのLazy Segtreeの使い方 - ARMERIA

                AtCoder Libraryが遅延伝播機能を持つセグメント木 atcoder::lazy_segtree を提供しているものの、何か渡すものいっぱいあるしドキュメントは数学用語だらけだしよく分からん!みたいな人向けの記事です。 問題を解いていて、セグメント木に必要な機能(区間加算操作と区間最小値取得がしたい!みたいな)が明確になったときに、それを実現するためには atcoder::lazy_segtree の生成時に何を渡せばいいかを考えられるようになることがこの記事の目標です。ただしコンテスト中に読める分量ではなくなったので、整数列に対する単純な機能の組み合わせについてはコピペで使えるチートシート的なものを別途作る予定です。→作りました 対象読者は「セグメント木(抽象化も遅延伝播もナシで可)を書いたことがあって、その構造と動作の仕組みについて何となく理解している人」くらいを想定していま

                  AtCoder LibraryのLazy Segtreeの使い方 - ARMERIA
                • 第4回 Asprova プログラミングコンテスト - Roy_Rの競プロ日記

                  2019/08/23~08/30にAtCoder上で開催されたマラソン型のプログラミングコンテスト『第4回Asprovaプログラミングコンテスト』に参加しました。 焼きなまし法が初めて成功して嬉しかったのと、ツカモさんにこう言われたので、記事を書いてみることにしました。 恐縮です…。 さぁ、ろいさんもブログ記事を書いて競プロ後継者erの糧となるのです! — ツカモ (@tsukammo) August 30, 2019 ということで、この記事は、自分(Roy_R)がコンテスト期間中にやったことを時系列にまとめて、他の人の役に立つといいなっていうのとともに、マラソンマッチ楽しい! と主張するものです。(あと、自分の復習のため) やったことを簡潔に列挙するのが本当はいいのかもしれませんが、このブログのタイトルは『競プロ日記』ですし、僕は日記調の文章しか書けないので、日記的な感じで考えたこととか

                    第4回 Asprova プログラミングコンテスト - Roy_Rの競プロ日記
                  • 2020競プロスラング用語集 - kaage精進録

                    2020最新版競プロスラング用語集です。 「FFの競プロerが意味不明な単語を叫んでいてわからない!」 「界隈用語で溢れていて入っていけない!」という方、必見です。 ちょっと内輪ネタが入っているかもしれませんが、競プロ用語は全部内輪ネタみたいなものなので、よしとしましょう。 これであなたも競プロ界隈の仲間入りです。 色 AtCoder, Codeforces, TopCoderなどのコンテストでは、参加者に「レーティング」とそれに応じた「色」がつけられ、実力の指標になります。 サイトによって色は多少異なりますが、どのサイトでも赤が一番強く、「赤コーダー」になることは人々の夢です。 コンテスト プログラミングコンテストに参加することは、競プロerのライフワークです。 競プロerが「コンテスト」と言ったらプログラミングコンテストのことです。 「コン↑テ→スト↓」という謎のイントネーションで発音

                      2020競プロスラング用語集 - kaage精進録
                    • data-structures

                      Welcome / Contents / Discussion / How to Write / Members / Binary Heap / Dynamic Segment Tree / Skew Binary List / Pairing Heap / Sparse Table / Sliding Window Aggregation / Fenwick Tree / Lazy Segmen

                        data-structures
                      • ダイクストラ法のよくあるミスと落し方 - あなたは嘘つきですかと聞かれたら「YES」と答えるブログ

                        ダイクストラ法、正しく書けてますか? ダイクストラは少しのミスですぐ計算量が壊れたりするのですが、テストケースによっては意外に落ちにくく間違いに気づかないこともあります。 この記事では、よくあるミスとその撃墜ケースを紹介していきます。 この記事はどちらかと言うと問題準備をする方に読んでほしい記事です。 writerをする際は、ここで紹介する撃墜ケースをテストケースに入れるようにすると良いと思います。 SではなくTを始点にするという小手先技が考えられるので、逆向きバージョンも入れておくと尚良いでしょう。 ジェネレーターも置いておきます。 コード中の定数を書き換えたり入力で取れるようにしたり、出力形式を変えたりして使ってください。 念の為生成されたテストケースにもちゃんとvalidatorをかけて下さい。 目次 既に見た頂点のcontinue忘れ: 最大ヒープを使う: 負辺のあるグラフで使う:

                          ダイクストラ法のよくあるミスと落し方 - あなたは嘘つきですかと聞かれたら「YES」と答えるブログ
                        • 2020 Update

                          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                            2020 Update
                          • AtCoder灰・茶・緑色の方必見!二分探索を絶対にバグらせないで書く方法

                            大沢 龍平 旅行プラットフォーム事業部 キャリア入社1年目のエンジニア。 人生においても色んなことを最適化できたらよいなと思いつつも、不器用でうまくいかないです。 不器用ながらも頑張っていくぞという気持ちで日々を過ごしています。

                              AtCoder灰・茶・緑色の方必見!二分探索を絶対にバグらせないで書く方法
                            • 桁DPの痒いところに手が届く解説 - Qiita

                              はじめに 本記事は、アルゴリズムの一つである桁DPについて、入門者が疑問に感じる(というか筆者が実際疑問に感じた)ポイントに重点を置いて解説するものです。 筆者自身そこまで桁DPに詳しいわけではなく、むしろ最近覚えたぐらいなので、何かまずい部分があれば優しくご指摘いただけると嬉しいです。 この記事で特に重点を置くポイントは、次の通りです。 何故これでうまくいくのか 桁DPで数えているものは何か 初期条件はなぜこうなるのか 桁DPそのものの入門的解説としては、他にもけんちょんさん達の優れた記事がありますので、そちらも合わせてご覧ください。 http://torus711.hatenablog.com/entry/20150423/1429794075 http://drken1215.hatenablog.com/entry/2019/02/04/013700 https://pekempe

                                桁DPの痒いところに手が届く解説 - Qiita
                              • AHC006初心者向け解説 ~貪欲だけで順位表2ページ目を目指す~ - TERRYのブログ

                                ヒューリスティックコンテスト、楽しんでますか?私は楽しんでいます。最近企業AHCなんかも続々と出てきて、これからどんどん盛り上がってくれるんじゃないかと期待しています。 とはいえ、ヒューリスティックコンテスト特有の取っつきづらさがあるのも確かです。「どこから手を付けていいか分からない……」「AHC後のTLに焼きなましとか2-optとか流れてきたけど何が何だか……」と思われた方も多くいらっしゃるのではないでしょうか? AHC006は巡回セールスマン問題を発展させた問題なので、確かに2-optを使った焼きなましができると有利ではあります。しかし、専門知識がないと戦えないかというと全くそんなことはありません。 この記事では、AtCoder Heuristic Contest 006 (AHC006)を題材として、 焼きなまし → 使いません ビームサーチ → 使いません 2-opt → もちろん

                                  AHC006初心者向け解説 ~貪欲だけで順位表2ページ目を目指す~ - TERRYのブログ
                                • 【Python版】AtCoder を始めた方必見!とりあえず見てください! - Qiita

                                  1. はじめに みなさんはじめまして! 競技プログラミングにハマっている Ryusuke と申します。 本日は @kanten4205 さんが作成した 競プロアドベントカレンダー2021 にて競技プログラミングの記事を書くことになったので、投稿しました。 Python, AtCoder, 始めたばかり この 3 つのいずれかに該当する方は 絶対に 読んでください!! この記事を読んでいただければ必ず何かを得られると思います! 1-1. 自己紹介 まずは私の自己紹介をしたいと思います。 所属:公立はこだて未来大学システム情報科学部 B3 趣味:競技プログラミング、バスケットボール、ピアノ、競技数学 AtCoder:https://atcoder.jp/users/ryusuke_h Twitter:https://twitter.com/ryusuke__h GitHub:https://g

                                    【Python版】AtCoder を始めた方必見!とりあえず見てください! - Qiita
                                  • AHCガチ素人のアルゴ茶コーダー VS AHC013 〜初歩的アルゴ知識だけで戦ってみました〜 - 脳筋ぱそこんおゆうぎ!

                                    はじめに AtCoder Heuristic Contest それは「絶対の正解がある問題をなるべく早くなるべく多く解く」勝負であるアルゴリズムコンテストとは毛色が異なり、AtCoder公式の言葉を借りれば「最適解を出すことが難しい問題に対し、出来るだけ良い解を作成する」勝負になります。 上位を目指すにはアルゴコンでは馴染みの無い「焼きなまし法」や「ビームサーチ」などの手法が必要になりますが、残念ながら現時点で私はそれらについて理解できておらず、コンテストで使えるレベルには程遠いです。 いつかはそれらの手法も使いこなせるようになりたいところですが、今回のAHC013(AtCoder Heuristic Contest 013 RECRUIT 日本橋ハーフマラソン 2022夏)にはとりあえず今知っていること・今できることだけで取り組むしかありません。 というわけで、AHCガチ素人のしがないア

                                      AHCガチ素人のアルゴ茶コーダー VS AHC013 〜初歩的アルゴ知識だけで戦ってみました〜 - 脳筋ぱそこんおゆうぎ!
                                    • うさぎでもわかる2分探索木 後編 2分探索木における4つの走査方法

                                      こんにちは、ももやまです。 今回は2分探索木の4つの走査方法、具体的には 行きがけ順による走査通りがけ順による走査帰りがけ順による走査幅優先探索による走査 の4つの違いについてわかりやすく説明していきたいと思います! 「2分探索木ってどんなやつだっけ」、「2分探索木忘れちゃったよ」という人は下にある記事でわかりやすく2分探索木について説明しているのでぜひご覧ください! www.momoyama-usagi.com 1.2分探索木の全探索 木構造にある各ノードを1度だけ訪問することを探索(走査)と呼びます。 全探索の仕方をおおまかに分けると、 深さ優先探索(DFS)幅優先探索(BFS) の2つとなります。 さらに、深さ優先探索はさらに 行きがけ順(先行順 / 前順 / preorder)通りがけ順(中間順 / 間順 / inorder)帰りがけ順(後行順 / 後順 / postorder)

                                        うさぎでもわかる2分探索木 後編 2分探索木における4つの走査方法
                                      • 安全で爆速なRollingHashの話 - Qiita

                                        要約 ロリハ(RollingHash)のModを$2^{61}-1$にすると安全で爆速になってむちゃくちゃ幸せになれます。 前提知識 bit演算に関する基礎的な知識を要求します。 また、RollingHashについては以下で解説しますが、分からない場合は別の記事を読んだほうがいいかもしれません。 RollingHashとは? 開く 「文字列を一つの大きな整数として見る」というのがRollingHashのアイデアです。 まず、0-9のみの数字を含んだ文字列s = "1234567890"を考えてみます。 ここで、この文字列のHash値を文字列を10進数と解釈したときの数値と定義します。 また、$s$の$a$文字目から$b$文字目の前までの部分文字列を$s[a..b]$と書くことにします。 例えば、s = "1234567890"について、$s[1..3]$は1文字目から3文字目の前までの部分

                                          安全で爆速なRollingHashの話 - Qiita
                                        • AtCoderで水色になるまでにやったこと - 接着剤の精進日記

                                          9月29日のAtCoderBeginnerContest142で水色になったので変色記事を生やします。 無限人によって書かれてますが自分のやってきたことを書いていきます。 停滞っていうほどの停滞はないけれど爆上げもなく地道にレートが上がってるっていう結構珍しい?タイプな気がします。 入水! 長かった〜 pic.twitter.com/8Yi5j4SWUx— ボンド@競プロ (@bond_cmprog) September 28, 2019 自己紹介 よく水色になった記事を見てもともと強い人だったり一瞬で水色なってたりで参考にならね〜って思ったりしたので自分の経験値的なものを書いておきます。 今は情報系の院に居ますが学部のときは文系でした。 一応理系志望だったので高校数学の範囲は一通りやった程度で学部に入ってからは数学にほとんど触ってないです。 プログラミングは高校生の時にCをちょっと触って

                                            AtCoderで水色になるまでにやったこと - 接着剤の精進日記
                                          • 組み合わせゲーム理論の基礎とGrundy数での勝敗判定アルゴリズム | アルゴリズムロジック

                                            競技プログラミングなどで頻出のテーマである組み合わせゲームやGrundy数についてまとめました。 前半は全ての方に向けての内容で、プログラム例や競技プログラミング特有の話題については後半にあります。 組み合わせゲームとは 組み合わせゲーム(Combinatorial games)とは以下のような特徴を持った二人で行うゲームのことを言います。 確定:ランダム性がない完全情報:全ての情報が全てのプレイヤーに公開されている 組み合わせゲームの例 以下のような多くのゲームが組み合わせゲームに分類されます。 オセロ将棋チェス囲碁Nim… これらのどれもが、二人で行うゲームで、確定であり完全情報でもあります。 特殊な組み合わせゲーム 組み合わせゲームの中でも特殊な性質を持つものは名前がついており、解析がしやすいものがいくつかあります。 二人零和有限確定完全情報ゲーム 組み合わせゲームに以下の性質がつい

                                              組み合わせゲーム理論の基礎とGrundy数での勝敗判定アルゴリズム | アルゴリズムロジック
                                            • ACL の math の解説をするよ - えびちゃんの日記

                                              ACL (AtCoder Library) の内部実装を知りたい人向けの記事です。 お友だちに「ねーね、ACL のこの関数ってどういう仕組みなの? 知ってたりしない?」と聞かれたとき、「え... なんかほら、わかんないけど、魔法で動くからいいんだよ」としか言えないと情けない気がしません? しました。なので書きます。 こういうシチュエーションはなくても、何かを実装したいときに「あ、これ ACL の実装のやつと同じ発想じゃん」となることはありえるので、知っていて損はないかなと思います。 めちゃくちゃ長くなったので、一度に全部読むのには適さないかもしれません。 数式部分の LaTeX コードなども含めて数えられていますが、26000 文字を超えています。 全体像 個別の説明 internal::safe_mod internal::barrett Barrett reduction の話 正当性

                                                ACL の math の解説をするよ - えびちゃんの日記
                                              • Visual studio codeで競プロ環境構築[mac OS] - Qiita

                                                MacOS上で競技プログラミング環境構築したので、 ちょこちょこ詰まったとこを中心にメモります。 12/28更新:Atcoderテスト自動化ツール 実現すること Mac上でgcc動作環境を整え、visual studio codeからコンパイル&実行を行う。 競プロで役立つライブラリ(bits/std++.h)を使えるようにする。 動作環境について macOS Mojave Visual Studio Code コンパイラについては後述 前提(C++のコンパイラについて) 競技プログラミングのC++のコンパイラはClang系かgcc系の二つが用意されている。 (Atcoder コードテスト画面) しかし、MacOSではC++のコンパイラとして、Clang系のみ標準搭載されている(/usr/bin/g++にある。) $ /usr/bin/g++ --version Configured wi

                                                  Visual studio codeで競プロ環境構築[mac OS] - Qiita
                                                • AtCoderで転職を|moni

                                                  はじめに 中途半端な状態なので書くか悩みましたが、お世話になった AtCoder の有用性、就活勢への情報共有、ここ最近の総括など諸々の目的で書きます。どなたかの一助になれば。 To international fellows Here is a summary of this article: I'm going to be a data scientist at R******, one of the most famous domestic companies. Plus I was supposed to have an interview at G***** but it has been put off and hasn't been confirmed yet due to COVID-19. Throughout this job change, my friend fro

                                                    AtCoderで転職を|moni
                                                  • 競プロ覚書:二分探索,std::lower_bound を使いこなす - pyてよn日記

                                                    概要 二分探索とは アルゴリズム 計算量 C++ で二分探索を実装 実装 実装上の注意点 C++ 標準ライブラリで二分探索 std::binary_search() std::lower_bound() と std::upper_bound() 用法 std::lower_bound(),std::upper_bound() の活用 二分探索を行う 要素のインデックスを求める ある数以上(より大きい)要素の数を数える 二分探索で競プロの問題を解く AOJ: ALDS1_4_B - Binary Search ABC061: C - Big Array std::lower_bound() を使用する解法 std::lower_bound() を使用しない解法 ABC084: C - Snuke Festival 難しめ?な問題 補足:std::lower_bound() を使う上での注意点

                                                      競プロ覚書:二分探索,std::lower_bound を使いこなす - pyてよn日記
                                                    • AtCoder Library (ACL) クイックリファレンス - naoya_t@hatenablog

                                                      というかチートシートを作りました。C++版APIに準拠しています。 URLはこちら:https://www.notion.so/AtCoder-Library-ACL-01a562f6c38e481e88f5a838fd78eb0e www.notion.so

                                                        AtCoder Library (ACL) クイックリファレンス - naoya_t@hatenablog
                                                      • 競プロでよく使うけど空で書けないフレーズ - Qiita

                                                        はじめに よく使うけどうろ覚えなものをまとめました. 順列・組合せ・重複列挙 リストからいくつか選んだ順列or組合せor重複組合せを列挙 from itertools import product, permutations, combinations L = [1,2,3,4]; k = 2; N = 3 for p in permutations(L,k): print(p,end=' ') #(1, 2) (1, 3) (1, 4) (2, 1) (2, 3) (2, 4) (3, 1) (3, 2) (3, 4) (4, 1) (4, 2) (4, 3) for c in combinations(L,k): print(c, end=' ') #(1, 2) (1, 3) (1, 4) (2, 3) (2, 4) (3, 4) for pro in product((0,1),

                                                          競プロでよく使うけど空で書けないフレーズ - Qiita
                                                        • 日本最大のプログラミングコンテストサイトAtCoder登録者数が20万人を突破!

                                                          AtCoder株式会社(本社:東京都新宿区/代表取締役社長:高橋直大、以下AtCoder)が運営するコンテストサイト「AtCoder」の登録者数が20万人を突破したことをお知らせします。 2018年12月以降参加者数が急増し、2019年2月に登録者数10万人を突破してから1年3ヶ月で2倍の20万人に達しました。全世界で新型コロナウィルス感染拡大による外出自粛が進んだことも影響し、2020年3月以降、インド、中国、バングラデシュなど海外の競技プログラマーが急激に増加、外国人登録者の割合が全登録者の約45%に達しました また、毎週開催しているプログラミングコンテストの参加者数も伸びており、2020年5月31日に開催したABC169(AtCoder Beginner Contest)では、1問以上コードを提出したコンテスト参加者は、日本人が8,148人、外国人が3,155人でした。ABC162(

                                                            日本最大のプログラミングコンテストサイトAtCoder登録者数が20万人を突破!
                                                          • 競技プログラマの名前で呼ばれるアルゴリズムたち - HackMD

                                                            # 競技プログラマの名前で呼ばれるアルゴリズムたち [競技プログラミング Advent Calendar 2017](https://adventar.org/calendars/2221) Day

                                                              競技プログラマの名前で呼ばれるアルゴリズムたち - HackMD
                                                            • 競技プログラミング部ができました - freee Developers Hub

                                                              こんにちは、2021年4月にfreeeに新卒で入社したberryです。 業務ではQAチームの一員としてプロダクトの品質向上のために働いております。 本記事では、2022年1月にfreeeでオフカツ*1として立ち上がった、競技プログラミング部について紹介したいと思います。 以下、競技プログラミングを競プロと表記します。 目次 競プロとは 競プロ部ができるまで 感想戦の活動 ショートコンペの活動 朝会で宣伝した話 これからの競プロ部 懸念点 これからの展望 最後に 競プロとは まずはじめに、競プロとは プログラミングを使って、パズル的な問題を、制限時間内に出来るだけ多く解くスポーツ と言われています。*2 競プロer(競プロをやる人)は特定の日時に開催されるコンテストに参加してさまざまな難易度、配点の問題を解き、最終的なスコアを競い合います。 この順位に応じてレートと呼ばれる自分の実力を示す数

                                                                競技プログラミング部ができました - freee Developers Hub
                                                              • 第一回 アルゴリズム実技検定 過去問 - AtCoder

                                                                このページについて 第一回アルゴリズム実技検定(PAST)の、過去問ページとなります。 バーチャル参加を利用することで、5 時間の受験を練習することが可能です。 検定試験情報 時間: 300 分 配点

                                                                  第一回 アルゴリズム実技検定 過去問 - AtCoder
                                                                • Python で std::set の代替物を作った - Qiita

                                                                  Pythonista の皆様、こんにちは。競技プログラミングをしている tatyam と申します。 Python で競技プログラミングをしていると、std::set が欲しいな〜ってとき、ありますよね? 例えばそう、 Cutting Woods (ABC217-D) を見てみましょう。これは以下のような問題です。 長さ $L$ の定規がある。以下のクエリが $Q$ 回与えられるので、順に処理せよ。 1 x:目盛 $x$ で定規を切る。 2 x:目盛 $x$ を含む部分の長さを出力する。 $L ≤ 10^9,\ N ≤ 2 \times 10^5$ 素直に考えると、切れ目の位置の集合を管理すれば良さそうです。 $s$ を切れ目の位置の集合とする。はじめ、$s = {0, L}$ である。 1 x が与えられたら、$s$ に $x$ を追加する。 2 x が与えられたら、( $s$ の $x$

                                                                    Python で std::set の代替物を作った - Qiita
                                                                  • Lillian on Twitter: "Pythonの文法を勉強して、これからAtCoderで練習したいと思っている方は、この記事が役に立つと思います! 過去問がテーマごとに分類されて、解説と解答例が付いているので、スムーズに解いていくことができます。 量がすごくて… https://t.co/uZaFpfd1J0"

                                                                    Pythonの文法を勉強して、これからAtCoderで練習したいと思っている方は、この記事が役に立つと思います! 過去問がテーマごとに分類されて、解説と解答例が付いているので、スムーズに解いていくことができます。 量がすごくて… https://t.co/uZaFpfd1J0

                                                                      Lillian on Twitter: "Pythonの文法を勉強して、これからAtCoderで練習したいと思っている方は、この記事が役に立つと思います! 過去問がテーマごとに分類されて、解説と解答例が付いているので、スムーズに解いていくことができます。 量がすごくて… https://t.co/uZaFpfd1J0"
                                                                    • AtCoderの始め方 - Qiita

                                                                      AtCoder登録したけど、ここからどうすれば良いの〜!? なんか導線がよくわからない〜〜! ってなったので、同じような人たち向けに。 ログイン https://atcoder.jp/ ここから新規登録して、ログインしましょう。 AtCoder Beginners Selection 初回にログインすると下記リンクに飛びます。 https://atcoder.jp/contests/abs そもそも、AtCoderってどういう風にやっていくんだ? というのがわかるのがこの AtCoder Beginners Selection です。 ↑ホーム画面からは左側にある「常設中のコンテスト」に AtCoder Beginners Selection のリンクがあります。 PracticeA - Welcome to AtCoder 早速やってみましょう。 AtCoder Beginners Se

                                                                        AtCoderの始め方 - Qiita
                                                                      • AtCoderの入緑が遠かった - Qiita

                                                                        はじめに AtCoderで緑になりました。 AtCoder社の社長が出している色のレベル感についてこのサイトに載っています。 http://chokudai.hatenablog.com/entry/2019/02/11/155904 この感覚は人それぞれですが一般的に見ても緑になるまでに一年かかるのは遅いほうだと感じます。 自分としては一つの節目なので気持ちの良い間に形に残そうと、この記事を描きました。特に、AtCoderを知っているけど始めようか悩んでいる人、緑になるのがとても苦しい人に向けて自分の感じたことを伝えられたらと思います。 また、個人的にですが同じ色変系記事で特に参考になったものを挙げていきます。これらの記事の二番煎じになりますがご了承ください。 https://yosen.hatenablog.com/entry/2020/08/23/032208 https://qii

                                                                          AtCoderの入緑が遠かった - Qiita
                                                                        • PG BATTLE 2022 に参加しました - freee Developers Hub

                                                                          はじめに こんにちは、2022年4月にfreeeへ新卒で入社したyellowです。現在は、Software Engineer in Qualityチーム(通称:SEQチーム)で自動テストの運用・改善や基盤開発などに携わっています。 先日、社内の競技プログラミング部のメンバーでチームを組み、2022年10月末に開催された、企業・学校対抗プログラミングコンテスト「PG BATTLE 2022」に参加しました!この記事では、コンテスト当日までの様子や参加した感想などを中心にお伝えしたいと思います。 PG BATTLE とは PG BATTLEは、1チーム3名による企業・学校対抗のプログラミングコンテストです。大まかなルールは以下の通りとなっています。 「企業の部」「大学&大学院、高専、専門学校の部」「高校、中学、小学校、その他スクールの部(18歳以下)」の部門内で競い合う 同一組織内から3名で1

                                                                            PG BATTLE 2022 に参加しました - freee Developers Hub
                                                                          • Library Checkerを支える技術 - よすぽの日記

                                                                            あけましておめでとうございます。これは Competitive Programming (2) Advent Calendar 2019 - Adventar の 14日目の記事です。あけましておめでとうございます。 この記事では、Library Checker の宣伝をします Library Checkerって? 競プロのライブラリを整備するために爆誕したサイトです。特徴としては、問題が全部ライブラリを整備する目的に特化していること、ケースジェネレーター、チェッカーなどが全て公開されていることが大きな特徴です 中身を全て公開することにより 誰でも問題の追加が出来る 誰でもケースの修正などが出来る CIに組み込める*1 などの、様々な利点を得ることが出来ます。理論上はO(使用人数)でケースが強くなっていくので、最強のテストケースが出来ると言う目論見です。 概要 こんな感じです こういう図を

                                                                              Library Checkerを支える技術 - よすぽの日記
                                                                            • 【色変記事】数学超苦手なエンジニアがAtCoderで茶色コーダー(脱初心者)になるまで | DevelopersIO

                                                                              また、「絶対的な位置」の項目についてはAtCoder社長のchokudaiさんのブログをAtCoder(競技プログラミング)の色・ランクと実力評価、問題例 - chokudaiのブログをソースとしているとのことです。 下から2番目の段階で上位35%ですので、ここまで到達するまでにやめてしまう方が非常に多いと考えられます。 ※ なお、AtCoder社監修の以下書籍では茶色で上位50%と表記されていますのでこちらの方が正しいのかもしれません。(単純なアクティブユーザーの中での順位か、真面目にコンテストに参加している人の中での順位の違いかと受け取っています) 筆者のバックグラウンド・レベル感 アラサー 中学時代から数学が苦手で、大学も文系学部 元公務員(6年)で、エンジニア歴は約3年半程度 開発系の仕事を主にしてきたが、複雑なアルゴリズムの実装はなかった アルゴリズム・数学的な素養があるわけでは

                                                                                【色変記事】数学超苦手なエンジニアがAtCoderで茶色コーダー(脱初心者)になるまで | DevelopersIO
                                                                              • おいしいキャベツの育て方 - ブログ名

                                                                                私はキャベツです。美味しいキャベツがいかに培養され、出荷するのかをキャベツ視点でお送りしたいと思います。 きっかけ 「純粋培養競技プログラマが就職して1年」みたいなブログがよみたい。どんなことを身に着けて何が出来るようになったかみたいな。— chokudai(高橋 直大)🍆 (@chokudai) October 28, 2020 2018-04 冷やし Python はじめました! 奨学金が途絶えました。 悲しいですね。そこでアルバイトの量を増やしてガンガン稼ぎたいと思いたち、各種求人サイトを舐めるように見るなどです。 私「むーん、やはり時給を考えると月労働時間が決まってきてしまいますね。一応私研究もしたいのですがぐちぐち……」 キラーン「時給 1500 円」 私「なるほどです!」 キラーン「プログラミn 私「(そっ閉じ…」 私「この流れ何回目ですか!? えーい、プヨグラミングがなんぼ

                                                                                  おいしいキャベツの育て方 - ブログ名
                                                                                • Pandas卒業?大規模データを様々なパッケージで高速処理してみる/pyconjp2022-hpc

                                                                                  PyConJP2022発表資料 「Pandas卒業?大規模データを様々なパッケージで高速処理してみる」

                                                                                    Pandas卒業?大規模データを様々なパッケージで高速処理してみる/pyconjp2022-hpc