遺物紹介

この記事は PUC 逆 Advent Calendar 2023 の 8 日目の記事として作成されました。adventar.org (逆ってなんだ……?) 前日の記事は養生さんの18ローラー記事です。note.comボルテの埋めはほとんどやってないので、地力向上のためにもそろそろやった方がいいか…

ICPC2023国内予選 参加記

今年もICPCの予選に参加したので、参加記を書きます。 チーム情報 チーム名:Type-C 所属:千葉大学 メンバー:stoq, hiryu, WiIIiam自分 (stoq) は 4 回目の参加、他 2 人は初参加です。 hiryu くんは B2、WiIIiam くんは B1 で、来年以降も ICPC に出てく…

統計検定2級 感想など

合格しました 試験概要 出題範囲は大学1,2年レベルの統計学 90分で35問程度 100点満点/60点以上で合格 全て選択問題 PCで受験する。ただし自宅受験はできず、近所のパソコン教室などに申し込む 問題は、プールされている問題の中からランダムに出題される(そ…

ABC272 F - Two Strings 筋肉解法

パワー 問題概要 問題リンク:atcoder.jp要約: 長さ の文字列 が与えられる を 回 rotate した文字列を と書く 組 であって、 (辞書順序) を満たすものの個数を求めよ 解法 想定解法は Suffix Array ですが、ローリングハッシュのみでも解けます。流れとし…

ICPC 2022 Asia Yokohama Regional 参加記

2022/12/27,28 に開催された ICPC 2022 Asia Yokohama Regional に参加してきました。 Day1 1日目は開会式→リハーサル→チーム紹介の流れでした。 開会式 registraion を済ませてしばらくすると開会式が始まりました。やっぱりオンサイトだと盛り上がりが感じ…

Kőnig の定理と最大流最小カット定理

最近組み合わせ最適化を勉強中なので、考えたことをメモ 任意の二部グラフ について、次の Kőnig の定理が成り立ちます。 König の定理 の最大マッチングと の最小点被覆は同じサイズを持つ。 この定理の証明はマッチングに関する増加路(augmenting path)を…

ICPC2022国内予選 参加記

今年もICPCに出場したので参加記を書きます。チーム名はCUPC、メンバーは昨年と同じで はにゅ(@hanyu_ipf), stoq(@stoq_), ころも(@uytvcc) の3名です。昨年は惜しくも予選敗退という結果に終わったのと、はにゅさんは今年が最後のため、今年は特に集中しま…

置換の問題で添え字をバグらせない

色々雑です 縦線 本から成るあみだくじの上部に と番号を割り振って、それらを辿って下部に番号を書き込んだとします。このときの下部の左から 番目の番号を とします。 このあみだくじが表す置換は ではありません。 が表しているのは 番目に来る数であって…

存在しない beatmania IIDX の当たり待ちについて

この記事は CCS †裏† Advent Calendar 2021 の9日目の記事として作成されました。adventar.org前日の記事はくうらんくんのCHUNITHM曲紹介記事です。note.com解釈一致。 はじめにこの記事について、タイトルに beatmania IIDX と書いてますが音ゲーあんまり関…

std::map の範囲 for 文内で operator[] を使わない

バグったのでメモ 突然ですが次のようなコードがあります。 #include <bits/stdc++.h> using namespace std; int main() { map<int, int> mp; mp[0] = 1, mp[1] = 2; int sum = 0; for (auto [key, val] : mp) { cout << key << " " << val << "\n"; sum += mp[key + 1]; } cout << su</int,></bits/stdc++.h>…

区間に等差数列を作用させる遅延セグメントツリー

たまに見る割にまとまった記事がない気がしたので 区間に等差数列を作用させる遅延セグメントツリーとは 長さ の数列 に対し次のような操作が全て で行えます。 をそれぞれ で更新する。 の最小値/最大値/総和を取得する。 後程述べますが、少し変えると区間…

千葉大生向けGPA計算ツール

追記:成績閲覧画面でpdf化ボタンを押すとGPAが表示されるようになったようです。そのためこのブックマークレットは非推奨です。 使い方 適当なページをブックマークした後、URLを次のコードで書き換えてください。ページ名は適当に変更して大丈夫です。 jav…

音ゲーのサポートツールを作った話

SOUND VOLTEXとCHUNITHMの各譜面の許容ニア/アタを計算して表示するツール『Score Tolerance』を作りました。 導入方法を書いておきます。 PC向け ①Tampermonkeyをインストールします。 Chrome: Tampermonkey - Chrome ウェブストア Edge: https://www.micro…

作った問題

作問した競プロの問題です。 ★はお気に入り。 yukicoder contest 247 No.1046 Fruits Rush - yukicoder No.1047 Zero (Novice) - yukicoder No.1048 Zero (Advanced) - yukicoder No.1049 Zero (Exhaust) - yukicoder ★ No.1050 Zero (Maximum) - yukicoder …

ハッシュを計算する構造体

タイトルの通りです。 衝突しにくい構造体が作りたかった(衝突すると悲しいので) コード struct Hash { static constexpr ll M1 = (1LL << 61) - 1; static constexpr ll M2 = (1LL << 31) - 1; ll val1, val2; constexpr Hash(ll val = 0) noexcept : val…

素数判定アルゴリズムについて

この記事はCCS Advent Calendar 2020の11日目の記事として作成されました。前の記事: note.com nullです。今回は素数判定や素因数分解を行うアルゴリズムについて色々書きます。 整数 の素数判定 最も初歩的なものとしては、 以上 以下の整数が を割り切る…

Advent Calendar Contest 2020 D - Rotate and Accumulate

yukicoderのAdvent Calendar Contest 2020のD問題を作問しました。 問題 yukicoder.me 解法 解説を見てください。(おわり) 余談 自分の中ではド典型だと思ってたので没にするか迷いましたが、Testerに後押しされたので出題することとなりました。大正解だ…

AtCoder黄色になりました

先日のABC184でついに入黄しました! AtCoder黄色になりました!! pic.twitter.com/VMPiKQFLvo — stoq (@stoq_) 2020年11月22日 青になってから約1年のタイミングで色変できてうれしいです。慣例に倣って色変までにやったことを書きます。 アルゴリズムやデ…

ICPC2020国内予選 参加記

ICPC国内予選に参加したので参加記を書きます。メンバーははにゅさん、ももはらさん、僕(stoq)のチームharaharaです。(いつもの) 開始前 方眼ノートを買ったり、ネットの海からライブラリを拝借したり、三度寝したりしました。 コンテスト 最初問題が見れ…

ARC106-D Powers を直感的に解く

今更ですが、ARC106-D Powers の簡単な解説を書きます。 問題リンク: atcoder.jp 問題概要: 長さ の数列 がある。 それぞれについて、 を求めよ。 解法: 対称性から なので、これを求めます。(こちらの方が後の計算が楽です。) まず括弧の中を展開する…

ICPC2020模擬国内 参加記

いつも通りstoq, momohara, hanyuのチームharaharaで模擬国内2020に参加しました。 覚えてる範囲で書きます。 開始前 30分前に起床する(すいません)。ごはんを食べ損ねる。TLを見るとももはらさんも同じことやってた。 A~Cの割り振りを決める。いつも大体…

秋分コンテスト2020感想

秋分コンテストに参加しました!13位という高成績を残せて満足です。癖の強い問題が多くてとても楽しめました。 記憶に残ってる問題について書きます。 B : Self Introduction そのまま"I am stoq"で出したらAC。ユーザー名が入ってればACになるっぽい? C :…

1053の性質

注意 内輪ネタです。 1053とは: mattyan1053.hatenablog.com 概要 「1053」という数の性質を列挙しただけの記事です。 自明な性質 ・実数である。 ・整数である。 ・奇数である。 ・。 ・2進法で表すと10000011101。 ・。 非自明な性質 OEISからの引用が多…

競プロでよく使われるC++の略記まとめ

(初心者向けの記事です) 競プロでたまに見るC++のテクニカルな表記をメモ程度にまとめておきます。 自分自身はあまりこのような表記は使わないのですが、他の人のコード、特にライブラリ化している部分においてはよく使われている気がします。他の人のコー…

yukicoder contest 247 writer感想

yukicoder contest 247のwriterのstoqです。初めての作問なので至らない点もあったと思いますが、全体的にいい感じにできた気がします。 コンテストリンク: https://yukicoder.me/contests/262 yukicoder.me 注意したこと ・assertで制約外のテストケースが…

n重ループを書きたくなる再帰全探索を巻き戻しテクを使って解く

先日のABC165-Cが難しかったようなので、おすすめの実装法を紹介してみます。 この問題に限らず、愚直にやるとn重ループを書きたくなってしまう全探索問題全般に適用できるのでオススメです。問題リンク: atcoder.jpとりあえずコードを乗せます。 #include <iostream></iostream>…

全方位木DP(ReRooting)の抽象化について

「 頂点の木において、 を根としたときの○○をそれぞれ求めよ」というタイプの問題では、全方位木DP(ReRooting)が有効に働く場合が多いです。 根を1つ固定したときにこの問題が高速に解けるならば、全方位木DPを用いることで同じ計算量で全ての根についての問…

テトリス学入門

0.はじめに この記事はCCS Advent Calendar 2019の13日目の記事として作成されました.(遅刻してごめんなさい!!!) 前の記事: homu-neko.hatenablog.com 次の記事: glvntla.hatenablog.com また,この記事はCCSアドカレ講義シリーズ3時限目も兼ねてい…