競技プログラミング総合スレ 65

■ このスレッドは過去ログ倉庫に格納されています
2022/12/26(月) 12:47:37.63ID:CkzYHyzir
!extend:checked:vvvvv:1000:512
↑2行になるようにする

競技プログラミング、オンラインジャッジ、プログラミングコンテストやCTFに関する雑談スレ
次スレは>>950

AtCoder https://atcoder.jp/
yukicoder https://yukicoder.me/
Codeforces https://codeforces.com/
CodeChef https://codechef.com/
Project Euler https://projecteuler.net/
CLIST https://clist.by/
AtCoder Problems https://kenkoooo.com/atcoder/
AtCoder Clans https://kato-hiro.github.io/AtCoderClans/

※前スレ
競技プログラミング総合スレ 64
https://mevius.5ch.net/test/read.cgi/tech/1664700238/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2023/02/04(土) 00:15:56.94ID:5HHfxRG3M
「終盤は難しくない=普段のABCと一緒」って意味だと仮定すると、中盤がARCで後ろはマニアック高度典型という、ただの昔の企業コンARCなんだよな
だったらU2800 ratedでもよくね?って思ってるけど、そこまですると初心者層が萎縮して参加しないかもしれなくて怖いんだろうか
2023/02/04(土) 00:18:39.84ID:5HHfxRG3M
企業コンは参加者数も稼がなきゃいけなくて大変だなって話
2023/02/04(土) 01:50:55.48ID:XT9wb8Pda
早解き苦手緑なんで明日は棄権しますわ
2023/02/04(土) 02:37:15.31ID:11TJ16Po0
ライバルを減らそうと必死で草生える
2023/02/04(土) 04:02:38.09ID:VlutLTNz0
高度な情報戦
2023/02/04(土) 20:49:46.88ID:DuPn66LGM
ちょくだい先生結婚マウントやめてください
2023/02/04(土) 21:45:26.38ID:qwiiBCAF0
週1回コンテスト前の30分~1時間だけ過去問題Bを1~2問解いて本番するだけにしてから苦行ストレスがほとんどなくなりました
今日はC初見問題だけど自力で考えて30分台でC解けたので満足

C問題最速で45秒でACとかテンプレ用意しててコピペレベルなのでしょうか?
Dなんて一応毎回問題だけはチラ見するけど何やったって自力で解法思いつかないから
もう開き直って毎回Cまで解いていつか茶色に成れればいいや
2023/02/04(土) 22:20:10.55ID:5scjLUe90
コンテスト中は順位表から読み取れる内容以外は他言に無用らしいから掲示板にはあんまり書かないほうがいいぞ
2023/02/04(土) 22:40:34.13ID:qwiiBCAF0
D嘘解法ぽいけど閃いたと思って暇つぶしに提出したらAC3TLE40WA3ってことはそこそこいい線行ってたぽい?
2023/02/04(土) 22:41:27.74ID:VlutLTNz0
ABCFの4完
やっぱりDに手を出さなきゃ良かった
2023/02/04(土) 22:43:35.14ID:YxTB5YYsp
キーエンスの再来だった
494デフォルトの名無しさん (ワッチョイ 3f10-4O5A)
垢版 |
2023/02/04(土) 22:50:22.13ID:l8ebE2EL0
あと少しで国内200位入れなかった
層が厚すぎる
2023/02/04(土) 22:51:01.60ID:ZgVy8P1Na
>>491
問題外
496デフォルトの名無しさん (アウアウウー Sa93-/68i)
垢版 |
2023/02/04(土) 22:58:09.16ID:mQgt/9sra
>>489
ヒントになった途端通報されるかもしれないので注意
今回の場合、試験中に「Dが難しい」と叫んでいると取られかねない
497デフォルトの名無しさん (ワッチョイ ffe2-Cjv8)
垢版 |
2023/02/04(土) 22:59:01.54ID:/q0XctAl0
なんでこれをDの位置におこうとおもったんだ
2023/02/04(土) 23:04:37.21ID:6AvE22Ut0
400点以上だと体感Fが一番簡単だったな
2023/02/04(土) 23:05:57.02ID:6AvE22Ut0
>>489
コンテスト中にSNSとか5chにコンテストのこと書き込むのは真面目にやめた方がいいよ
2023/02/04(土) 23:11:58.81ID:qwiiBCAF0
D問題で区間総和÷K=0で閃いたと思ったけど条件が足りなかったみたい
501デフォルトの名無しさん (ワッチョイ cf01-EJkl)
垢版 |
2023/02/04(土) 23:14:05.17ID:366SNyz60
C問題で当たり前のようにunion findとかが出てきてビビった
勉強せんとなあ
2023/02/04(土) 23:15:42.29ID:qwiiBCAF0
解説見たらやっぱり何やってもこんなのコンテスト中に解けないやってなりますわ
おとなしくCまでを確実に解く練習を毎週末するだけでいいや
2023/02/04(土) 23:17:46.82ID:qwiiBCAF0
先週もだけどC問題で出るグラフ問題はACLのDSUに慣れさせようとする作問者の意図を感じます
解説もACL使ったら軽いと露骨に明示されてたから多分普及させたいんだろうなと
2023/02/04(土) 23:20:09.21ID:qwiiBCAF0
もう来週の問題も作成済みでACL使うグラフ問題シリーズが来週も出そう
とか言ってると来週はグラフ出すのやめたりするかな
ここ見てる?
2023/02/04(土) 23:20:54.02ID:ZgVy8P1Na
そんな当たり前のことを得意げに言われても…
506デフォルトの名無しさん (ワッチョイ ffe2-Cjv8)
垢版 |
2023/02/04(土) 23:26:03.10ID:/q0XctAl0
unionfind、初中級のアルゴリズムの本にのってない気がする、atcoder高度すぎ
2023/02/04(土) 23:26:58.45ID:qwiiBCAF0
参加回数が規定数に満たないってことなんですが
今回ABCまで解けてレート380点とパフォーマンス740点で差が360点くらいあるんですが
規定回数超えたら茶色に成れますかね?
茶色に成れたらもう満足なんですが
2023/02/04(土) 23:41:16.52ID:qwiiBCAF0
C問題で下記のようなコードで提出してACだったのですが
解説と違ったのですが解法として合ってますか?

(事前にいつものACLのDSUで入力済みとして)

 sum = 0;
foreach (g, d.groups()) { sum += g.size() - 1; }
cout << M - sum;
2023/02/04(土) 23:53:19.75ID:IojJ2/cf0
あってる、もっというと以下でいい
auto g = uf.groups();
int ans = m - (n - g.size());
2023/02/04(土) 23:59:17.63ID:6AvE22Ut0
UnionFindは、中身の理解と計算量解析自体は簡単ではないかもしれないけど、ブラックボックス化して使う分にはとても単純だから、まずはそういうものだと思って把握しといて損はないよ
2023/02/05(日) 00:01:06.52ID:L8nGaYgK0
Gはゼータ変換メビウス変換の要領でやれると思ったけど毎回頭がこんがらがる
いつかのARC-Dでもこういうゼータ変換メビウス変換の変種が出てた気がするけど、そのときもきつかった
2023/02/05(日) 00:13:05.03ID:zXAayJwsM
Eを最初セグ木でmin取ろうとしたらTLEして致命傷で済んだ
2023/02/05(日) 00:16:42.68ID:+Je3j6OX0
>>509
ありがとうございます
また嘘解法だったかと不安でしたが安心出来ました

ただDは解説配信見てもさっぱりでした
2023/02/05(日) 13:32:12.10ID:E/3apluda
union find は「プログラミング・コンテスト・チャレンジブック、第2版、2012」に載っていたような?
2023/02/05(日) 14:39:10.64ID:BCHcg2ZAM
競プロ本じゃなくて一般的なアルゴリズム本には載ってなさそうではある
516デフォルトの名無しさん (ワッチョイ 3f55-zLlH)
垢版 |
2023/02/05(日) 14:44:21.92ID:bw48TasH0
>>515
セジウィック&ウエイン
CLRS
浅野孝夫
の本に書いてありました。
517デフォルトの名無しさん (ワッチョイ 3f55-zLlH)
垢版 |
2023/02/05(日) 14:45:43.39ID:bw48TasH0
>>515
Kleinberg & Tardosの本にも書いてありました。
2023/02/05(日) 15:24:54.49ID:TzydnmM+M
ありがとう
よく考えたらクラスカル法をまともに実装すりゃセットで出てくるから普通の学術書でバンバン出てくるものか
すまん、適当なこと言ったわ
2023/02/05(日) 15:35:59.28ID:TzydnmM+M
昨日のEx見てるがそれぞれのパーツはそんなに難しくなくても、コンテスト中に詰めるのは相当な情報処理能力要るなこれ
最上位は既に知ってる部分が多いから思考をショートカットして解けてる(部分問題はKUPCで既出)のか、初見でも化け物みたいな処理能力があるから解けるのか
2023/02/05(日) 23:56:53.84ID:L8nGaYgK0
enumerative combinatoricsで式クソデカ数え上げの練習をしよう
2023/02/06(月) 14:57:07.46ID:tLnW5713M
ちょくだい暇空信者だったのか…
2023/02/06(月) 17:17:12.74ID:CC5umvVS0
信者では無くないか?
どっちについても炎上するから関わりたくない、が直接反応されたから返答はしたように見える
AtCoderユーザーは暇空寄りだから、どちらかと言うと暇空側の立場を取るのが正解だし
本当は無反応が最善のはずだから、リプ返した時点で暇空応援の気持ちはありそうだけどな
2023/02/06(月) 17:28:55.79ID:5KzQx2I0M
>AtCoderユーザーは暇空寄り
そうなんだ…ショック
2023/02/06(月) 17:55:26.95ID:8VwvYIdS0
誰やねん
2023/02/06(月) 18:05:31.15ID:atEmb0ZA0
誰だよ(´・ω・`)
2023/02/06(月) 18:34:28.57ID:vCbzFpDWM
chokudai定期的にいらんことに首突っ込むよな
2023/02/06(月) 19:09:41.21ID:P7WNzTvaa
最近やたらとイキってる陰謀論界隈の教祖様だろ
中立っていうならリプ返さないでほしい
心底気持ち悪い
2023/02/06(月) 19:29:13.93ID:TL/Aw+TK0
なんでミュートじゃなくてブロックするんやろなぁ。SNSの使い方下手すぎん
2023/02/06(月) 19:30:02.45ID:TL/Aw+TK0
ブロックした理由を解説して死体蹴りしてるのも謎
2023/02/06(月) 19:31:39.97ID:mjq9iwD6M
暇空応援公言は普通にショックだわ
あの界隈を胡散臭いと思わない感覚は怖い
2023/02/06(月) 20:23:50.09ID:7jgjd4tm0
ブロックにしても暇にしても弁解必死過ぎて草
2023/02/07(火) 12:48:26.37ID:Gs46GCc3M
ABC232E Rook Pathなんだけど、
解説だと、ゴール(x2,y2)の位置で場合分けしてるんだけど、
スタートとの位置関係で分かれるんじゃないの?
シミュレーションしてみたらそんな挙動。

計算は同じになるんだろうけど
533デフォルトの名無しさん (ワッチョイ 3f55-zLlH)
垢版 |
2023/02/07(火) 13:08:37.18ID:TWDaaH+/0
↓上級編がでますね。

アルゴリズム実技検定 公式テキスト[上級〜エキスパート編]
中村謙弘、tsutaj
2023/02/07(火) 13:38:15.54ID:zZYboOb2a
>>532
値が同じところで分けるとそうだけど、
多分解説は値が同じところで分けてるわけじゃなくて答えが計算しやすいように分割してるだけ
(集合内のfの和でgを定義してる)

このあたり確かに文章の流れがミスリーディングだね
2023/02/08(水) 19:11:20.77ID:2gR5KQQeM
公金の使われ方とか言って暇空は応援するのに
五輪談合で逮捕者出てる電通から金貰ってるのはいいの?
私女だけど男の人のダブスタ悲しい
2023/02/09(木) 18:50:48.66ID:g9RtUNgNa
ロシアと強いつながりがある競技プログラミングコミュニティ
2023/02/09(木) 21:38:31.53ID:qp4RAwsP0
ロシア批判に消極的に見えるのは
男子校理系的なキモさの極地って感じ
2023/02/09(木) 23:54:08.08ID:KDi1Xk2qr
>>535
今ホットなのは暇空の方だしなぁ
話題性のある方に言及するのは普通でしょ?
2023/02/10(金) 07:46:52.03ID:W3KrKL2I0
競プロに関係しそうなq-類似の中国語記事
https://zhuanlan.zhihu.com/p/202494934
https://www.cnblogs.com/amagaisite/p/16475758.html
540デフォルトの名無しさん (ワッチョイ 3f55-zLlH)
垢版 |
2023/02/10(金) 12:38:57.68ID:GORLgW5U0
アルゴリズム実技検定 公式テキスト[上級〜エキスパート編]
中村謙弘、tsutaj

↑予約注文しました。
2023/02/10(金) 15:45:03.21ID:4TIGievXM
q類似って情報量増やすシリーズですか?
2023/02/10(金) 18:12:43.91ID:ajYYAE4c0
情報量増やすシリーズって何
2023/02/10(金) 21:35:37.67ID:oC8O9KZEM
https://codeforces.com/gym/102978/problem/A
なんか、こういう総数は簡単なんだけどもうちょい細分化したものを数えたいときに新しい変数とかを導入するテクニック的な
2023/02/11(土) 00:45:13.40ID:v67POrgW0
まあ情報増やす感じよね
自然数の代わりに、[n]_q = 1+q+...+q^(n-1)というqの多項式を考えみる
そうすると普段の数え上げで出てくる概念についてもq-類似というものを考えることができて、q-類似はオリジナルより細かい情報を持っている
例えば普通の階乗は順列の数え上げだけど、そのq-類似であるq-階乗[k]_q! = [k]_q [k-1]_q ... [1]_qは、r次の係数が転倒数rの順列の数え上げになっている
どうしてそうなるかは挿入DPの要領だね
1を代入する、つまり係数の総和を取ればオリジナルの階乗を復元できもする
2023/02/11(土) 00:45:52.02ID:v67POrgW0
さらにq-二項係数というのもあって、binom(n, k)_q = [n]_q/([k]_q [n-k]_q)なんだけど、r次の係数が、r個の区別できない球をk個の区別できない箱に分ける(箱の容量は最大n-k個の球を収容可能)場合の数になってる
同じ意味だけど「grid上のpathで区切る領域の面積がrのpathの場合の数」の方が直感的にわかりやすいかな
https://scholarship.claremont.edu/cgi/viewcontent.cgi?article=1194&context=hmc_theses
すぐに役に立つ概念かわからないけど、数え上げの精密化と考えると面白い
2023/02/11(土) 00:47:23.46ID:v67POrgW0
>>545
訂正:path→lattice path
2023/02/11(土) 00:49:35.69ID:v67POrgW0
>>543
とかいろいろ書いておきながら普通にこれ俺にとって難しくて解答読んでも自信ない
まずVを無視した数の割り振りが、境界線の数え上げに対応してて、それぞれの境界線を適宜微妙にずらすことで非交差路の数え上げに帰着してLGV公式で解ける
さらにLGV公式で使う行列の各要素(すなわちある始点からある終点への行き方の数え上げ)を改造して、ある点pより右下を通過することが確定するところを通ったらx倍、点p自体を通ったら0倍みたいなルールでxの一次式を作り、Lagrange補間の要領で行列式の多項式を計算してV次の係数が答え的な感じ?
比較的典型性の高い数え上げを多項式で細かく分けて、係数から欲しい情報取り出すというのはまさにって感じに見える
2023/02/11(土) 17:12:01.33ID:rBS0t6wJM
どちらかというと、q-二項係数がFq上n次元ベクトル空間からk次元部分空間を選ぶときの数え上げになってるって話の方で存在を認識してたな
係数を見るというより、何かを代入して情報を取り出すタイプ
2023/02/11(土) 17:15:03.20ID:rBS0t6wJM
実装には詳しくないが、(1-q^n)/(1-q)みたいな疎な多項式の除算にできることを利用して高速化できる感じなのか?
2023/02/11(土) 19:05:11.90ID:Avc4ARa4M
q-二項係数を分割の数え上げで解釈する話も部分ベクトル空間の数え上げで解釈する話も証明見たら見たらせやな感あるが、この2つのどこがどう対応づいているのかあんまよくわからんな
2023/02/11(土) 19:35:59.54ID:DstcEta5H
またAGCやばそうな配点だ
endagorionってどんな問題出すんだ?
2023/02/11(土) 20:31:02.43ID:ht8bMudq0
C++17が多数派だと思うのですが
C++20が未だに対応されない理由って何なのでしょうか?

本業が忙しすぎてそこまで手が回らないとか?
費用対効果が低くて恩恵を得られる人が少ないとか?
過去問まで対応させるとなると多すぎて単純に面倒だからとか?

上記全部当てはまりそうだから仕方ないか・・・
2023/02/11(土) 20:50:07.00ID:H4oosVmb0
>>552
AtCoderなら、近いうちに言語アップデートが入るからそこで追加されるのでは?
2023/02/11(土) 20:59:47.47ID:ht8bMudq0
>>553
そうなんですか?
知らなかったです
ありがとうございます

もしよろしければ言語アップデートのソース元ってありますか?
2023/02/11(土) 22:41:03.83ID:ht8bMudq0
Bは面倒そうなので飛ばしてC
解法はすぐに思いついて実装に手間取って30分で提出したが
1つだけREになるコーナーケース?が分からずに時間切れ

残り15分くらいで一瞬Bやりかけたけて問題見たけど
CのREが分からないイライラを引きずって萎えたやる気出ないので
順位表見てたけどやっぱ今回のBCは難易度高かったぽい?

毎回こんなの1分2分で解いてる人いるけど
どんだけテンプレ用意してるんだろう

最速AC時間からすると自分のテンプレから探してコピペする時間としか思えない
2023/02/11(土) 22:42:57.96ID:T7V722zO0
Eまで脳死で解いていく問題セットでしたね(´・ω・`)
2023/02/11(土) 22:45:13.25ID:EnOI2f+w0
Convex hull trickEDPCで調べたばかりだったのに存在を忘れてた
2023/02/11(土) 22:46:55.58ID:MMfnVwYs0
5完でまったり
2023/02/11(土) 22:49:04.63ID:Avc4ARa4M
Fえらく簡単だなと思って実装してみたら想定の数倍厄介な問題だったな
2023/02/11(土) 22:50:22.19ID:8B7uiFw80
>>555
基本的にはみんな普通に問題文読んでコード書いてるだけだ

極まってる赤色のひとだとこれぐらいの考察速度でコードを書く
(まあ、このひとに限っては更にコードゴルフもしてるからかなり変態っぽいけど)
https://www.youtube.com/watch?v=su1QrfVkZK4
2023/02/11(土) 22:53:21.26ID:ht8bMudq0
>>560
A問題ならまだ見て書くで分かる気がしますが
B,C問題をコピペじゃなくて1分,2分台で読んで書いてACって既に人間と思えないんですけど
上位様方達は凄いんですね
2023/02/11(土) 22:53:39.17ID:Avc4ARa4M
Bは読解めんどくさいけど、レ点の存在を知ってればだいぶ思考節約できるし、ある程度上級者ならソラで書いても1, 2分で解けるんじゃないか
2023/02/11(土) 23:04:09.59ID:ht8bMudq0
C問題でACが28/29でREが1つだけ残ってて分からないのですが
コードのどこがおかしいか分かりますか?
テストケースが公開されていないので思いつかなくて・・・

自作関数などは省略してます
https://i.gyazo.com/58576b7851ef6038272e7cb78af48707.png
https://i.gyazo.com/e14f6e1124bfff6c2f117f807dbff63b.png
2023/02/11(土) 23:05:29.61ID:EnOI2f+w0
今回のGみたいな出現頻度低めの高度典型忘れた頃に出題されるから中々身に付かない
2023/02/11(土) 23:06:39.24ID:Ps6JrzP7r
>>563
あたま
2023/02/11(土) 23:07:40.96ID:Avc4ARa4M
Exは除原理で立式して母関数使って整理するときれいな除算になるのか
Exは結構な数の問題がFPS講座になっている気がする
2023/02/11(土) 23:08:45.56ID:W6Ts6djNM
Bってグラフの説明いるの?
あれをまじめに読んじゃったせいで時間無駄にした
2023/02/11(土) 23:11:50.37ID:Avc4ARa4M
厳密に書くにはあれが一番なのかもしれないが、それはそれとして、やる操作に対して記述量が多すぎて驚く
2023/02/11(土) 23:13:14.69ID:ht8bMudq0
>>565
ありがとうございます
ヒントが冒頭って意味でしょうか?
ヒントじゃなくて頭が悪いってことならそのとおりなので異論はありません
2023/02/11(土) 23:17:15.33ID:Avc4ARa4M
>>563
vectorの宣言だけどvst(N)じゃなくてvst(M)にすべきなんじゃないか
逆にRE1個で済むんだな
2023/02/11(土) 23:18:47.90ID:ht8bMudq0
>>570
>>あたま
のヒントで気づいて
それでACなりました
572デフォルトの名無しさん (ワッチョイ c6e2-lZ4L)
垢版 |
2023/02/11(土) 23:21:04.95ID:lZkIj9hH0
Fが黄色。Fが青色上になったらノーカンにすべき。
2023/02/11(土) 23:22:15.58ID:ht8bMudq0
思い込みと言うかこんな些細なミスに気づかずに1時間半も悩んでてて1完でメンタル壊れますね
REが解決できなくてドツボにハマる典型だと思いますが
すぐにBに着手してればもしかしたら解けてたかと思うと残念です
今日はBを今から解いてみて寝ます
2023/02/11(土) 23:25:03.24ID:glz4wAHkH
確かにF青、G黄ぐらいが理想ではあるけど、一色上振れぐらいはいいんじゃないかな
FもGも難問って感じはしなかったけどやっぱりあの場合分けはキツいのかな
2023/02/11(土) 23:34:21.84ID:0pKJqIeQ0
来週またTOYOTAだからABCの難度壊されるのか
オンサイトの枠なんかARCで好きに争っといてくれ
2023/02/11(土) 23:43:36.37ID:Avc4ARa4M
昔の企業コンARCの問題と比較すると普通にトヨタはARCでいい気がするんだよな
2023/02/11(土) 23:54:48.28ID:ht8bMudq0
>>573
無事B問題30分ぐらいで解けました
予想通りACLのDSU使えました
3回連続は無いだろうと思ってたのに
やっぱこっち先にやればよかったトホホ
2023/02/12(日) 00:15:48.81ID:V1WHF7OO0
AGCの配点5-8-8ってA問題から青〜黄色の激重セットになりそうだな
579デフォルトの名無しさん (ワッチョイ a751-t1ev)
垢版 |
2023/02/12(日) 00:20:22.77ID:ulhmgCnx0
>>554
AtCoderの言語アップデートに関して 2023年版
https://atcoder.jp/posts/966
です アップデート自体がいつになるかはわかりません…
2023/02/12(日) 00:22:33.59ID:clMPTfPu0
>>579
ありがとうございます
丁度今さらっとシート見終わってここに戻って来たとこでした
2023/02/12(日) 00:24:27.27ID:clMPTfPu0
アプデ前後にC++20で使える便利情報などが出回りそう
2023/02/12(日) 01:22:02.99ID:icQYZybb0
>>549
そうだね、1-q^nは性質がよくてありがたい
たとえばq-二項係数なんかはbinom(n,r)_q = Π_{i=1}^{r} ((1-q^(n-i))/(1-q^i))と表せてlogを取ると

log binom(n,r)_q = Σ_{i=1}^{r} log (1-q^(n-i)) - Σ_{i=1}^{r} log (1-q^i)

なわけだけど、log (1-q^i) = - Σ_{k=1} q^ik / k(ここで疎であることが効く)を利用し、
log binom(n,r)_qをN次まで求めるのならばO(NlogN)で求められる(調和級数)
binom(n,r)_q = exp(log binom(n,r)_q)もexp取る操作がNewton法でO(NlogN)でできて、最終的にはO(NlogN)
2023/02/12(日) 01:30:42.49ID:icQYZybb0
(1-q^n)/(1-q)で定義されたq-数の積で表されるようなものならこの方針でほぼ対応できるんじゃないかな
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況