X



競技プログラミング総合スレ 63
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん (ワッチョイ 1f9f-qCnf)
垢版 |
2021/07/28(水) 21:58:48.02ID:nljYiy+l0
!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/

※前スレ
競技プログラミングにハマるプログラマのスレ 62
https://medaka.5ch.net/test/read.cgi/prog/1626625368/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
0002デフォルトの名無しさん (アウアウウー Sa5d-FBxQ)
垢版 |
2021/07/28(水) 22:02:20.52ID:Qpk5DZvUa
>>1
0017デフォルトの名無しさん (アウアウウー Sa5d-kNB2)
垢版 |
2021/07/29(木) 14:34:49.92ID:s9NsQyija
こっち20まで保守とかいるんやろか
0022デフォルトの名無しさん (アウアウウー Sa5d-kNB2)
垢版 |
2021/07/29(木) 19:15:04.25ID:CiCpZIxsa
自分スマホで見てるから関係ないな
0030デフォルトの名無しさん (ワッチョイ 457c-7QjZ)
垢版 |
2021/07/30(金) 02:05:56.79ID:06AAPmWW0
>>28
最大流量F ってのはそのままの意味で、 始点から終点へ流せる量の最大値
見積もりは難しいと思う。自明なカットで上界与えるくらいしかできないんじゃないかな
(辺容量の最大値) * (辺数) とか
0032デフォルトの名無しさん (ワッチョイ 4d90-nzU0)
垢版 |
2021/07/30(金) 03:05:30.73ID:uZitzRq40
最大流が青までの問題に出ない教プロに何の価値があるんだろうか
0034デフォルトの名無しさん (ワッチョイ 4d90-nzU0)
垢版 |
2021/07/30(金) 03:34:11.33ID:uZitzRq40
最大流とかグラフ系を増やしてしまうと進学校の数学の先生が激おこですからね
0036デフォルトの名無しさん (ワッチョイ 4d90-nzU0)
垢版 |
2021/07/30(金) 04:22:03.94ID:uZitzRq40
こんなのがあるのか、有効グラフの連結分解が明確に除外ってw
https://www.ioi-jp.org/ioi/ioi-syllabus_jp.pdf

中高生の「事情」に一般人が配慮する一般向けコンテスト
0037デフォルトの名無しさん (ワッチョイ 4105-MjzU)
垢版 |
2021/07/30(金) 05:40:51.76ID:IQSK5lVc0
>>35
これはどう考え方?
ARCで前提にするつもりのテクニックはABCで出しておかないと
ARCがそのテクニックを学ぶための教育的コンテンツになってしまうし、ARCの位置づけはそうではないと思うんだが
一切出さないかABCでも出すかの二択しかないと思っていた

それはそうと実はCodeChef LunchtimeはIOIのシラバスに沿うというルールなんだよな
言うほど守られていないが
0039デフォルトの名無しさん (ワッチョイ 4105-MjzU)
垢版 |
2021/07/30(金) 08:51:15.74ID:IQSK5lVc0
>>38
なるほどだけど、少し難しいアルゴリズムが結果的に青dif以下になるなら点数にはこだわらなくていい気がするなあ
本当にフロー流すだけ、とかはIOIで除外されてるけど青ボーダーくらいになりそうだし500点ででても違和感がない
(そんなん出すなよ、というのは一理はある)
0041デフォルトの名無しさん (オッペケ Sr05-DsjR)
垢版 |
2021/07/30(金) 11:57:16.76ID:LzoN76F4r
アルゴリズムってなんでこんな仰々しい名前多いんだろ
連鎖行列積問題とか行列積コスト最小化問題って書いてたら、何となくやってること分かりそうなのにわざわざ難しく書く
0046デフォルトの名無しさん (アウアウウー Sa09-4g3S)
垢版 |
2021/07/30(金) 13:25:31.86ID:l/bfPV+ta
こっちのスレ快適すぎだろ
0047デフォルトの名無しさん (アウアウウー Sa09-hwgF)
垢版 |
2021/07/30(金) 14:20:47.89ID:jPC1M8tJa
もうあっち見てもいない。いい感じで隔離できたね
0050デフォルトの名無しさん (アウアウウー Sa09-hwgF)
垢版 |
2021/07/30(金) 16:39:52.14ID:UIn/rcGPa
500点問題が俺でも解ける難易度になってて欲しい
0055デフォルトの名無しさん (ワッチョイ ce6f-ZkVx)
垢版 |
2021/07/30(金) 18:48:08.28ID:TtoKf80P0
そういえば4問ABCから6問ABCに変わった初回はunratedになったのを思い出した
今回も参加者増えてジャッジ詰まらないか心配
0057デフォルトの名無しさん (オッペケ Sr05-Czf9)
垢版 |
2021/07/30(金) 20:04:52.00ID:AkwBGTPYr
171 仕様書無しさん sage 2021/07/30(金) 19:51:47.26
IDありの方でいい感じに自演してるけど楽しい
こっち見てない人多そうだししばらくバレなそう
0061デフォルトの名無しさん (アウアウウー Sa09-hwgF)
垢版 |
2021/07/30(金) 20:25:20.61ID:8us7N61Da
20年前の2ちゃんねらーみたいなやつやな
0064デフォルトの名無しさん (ワッチョイ 9126-WQcR)
垢版 |
2021/07/31(土) 03:23:13.88ID:OipI3A3d0
直近コドフォAの考え方教えてください
自分は小中大のスライスの数が3:4:5なので、その辺りから必要な枚数をO(1)で導こうとしたのですがうまくいきませんでした
答えが小中大の枚数に関わらず(n+1)/2*5だなとわかった人はどんな発想でそうなったのか知りたいです
よろしくお願いします
ちなみに関係ないかも知れませんが女子中学生です
0065デフォルトの名無しさん (ワッチョイ 992c-9p95)
垢版 |
2021/07/31(土) 04:01:37.36ID:jolcKo8x0
>>64
小中大も単位枚数当たりにかかる時間が同じ

拡張ユークリッド互除法の観点から、ある程度大きな数の偶数は、6 と 8 のペアの組み合わせで作れるみたいなのがある (実際には 6 以上の整数すべてが 3 つのペアから作れる)
0070デフォルトの名無しさん (アウアウウー Sa09-hwgF)
垢版 |
2021/07/31(土) 17:36:59.59ID:etGBbmq6a
問題数の多さに嫌気さして減るまであるかもね。実質何にも変わらないとしても
0073デフォルトの名無しさん (アウアウウー Sa09-hwgF)
垢版 |
2021/07/31(土) 20:57:07.06ID:ZzHXwKHIa
snukeさんだけ貧乏くじか
0077デフォルトの名無しさん (ワッチョイ 917f-8s23)
垢版 |
2021/07/31(土) 23:24:16.55ID:6TJMuv8N0
今日のC問題、
Bだけソートして、
二分探索でB[l]<=A[i]<B[r](l+1==r)となるl,rを探して
min(今までの最小,min(abs(A[i] - B[l]),abs(A[i] - B[r]))))
で最小値だそうとしたんだけど、WAが2つ。
ソートする前に10の9乗よりちょっと大きい数字とその負の数をBに付けた。TLEはない。

なんで?
…とここまで書いてちょっと大きい数を
10**9+20から3*(10**9)に替えたら全部通った。
ドンマイ、俺
0084デフォルトの名無しさん (テテンテンテン MMee-aJB8)
垢版 |
2021/08/01(日) 13:06:46.38ID:j6FSUO0IM
Gは位数とか原始根みたいなちょっと進んだ整数論を学んでたら知ってるような概念割とそのまんまなので、考察負荷も確かにそんな高くない
Fも考察の本体は「あるバスに乗ったあとに乗るバスがあるとすれば一意に定まる」に気づいて超頂点を作るだけな気がするけど、ダブリング二分探索みたいなおまけ部分が重い
AtCoderで重実装問の後ろに軽い数学問出したらそらそっちに流れるわなという
0090デフォルトの名無しさん (アウアウエー Sa22-d0wC)
垢版 |
2021/08/01(日) 14:37:52.06ID:eHM3Q9HLa
同程度の難易度の問題が500と600にあったらコスパ良い600の方が解かれるのは当然
600の方がちょっと難しかったとしても、つまり難易度は逆転していないとしても、diffが逆転することは全然ありうるよな
そういう意味でdiffを重視しすぎるのはどうかと思う
0092デフォルトの名無しさん (ドコグロ MMde-HYiC)
垢版 |
2021/08/01(日) 15:02:20.30ID:rnLvS3mlM
確かにこの難易度帯が解ける人にとっては実装が重そうなこの問題よりも発想さえ出来れば解ける得点が高い方に流れるか

そうなると問題数増えて時間同じままだから、実装重い問題は忌避されていくんだろうなあ
0102デフォルトの名無しさん (テテンテンテン MMee-aJB8)
垢版 |
2021/08/01(日) 17:41:14.99ID:rylMcfQtM
遷移の節約がメインって考えると確かに補グラフが本質か
むしろ行列累乗の発想を使えないからwalkの本質的な部分とは遠いかもしれない
そもそも俺はDPを一から生やすのが苦手な方だから、DPのテンプレとして既知問題が役に立ったという感じかな
0111デフォルトの名無しさん (テテンテンテン MMee-aJB8)
垢版 |
2021/08/02(月) 12:15:14.37ID:YwN/bnngM
入出力数がO(n)ならn=10^7とかにするとそこがボトルネックになって非本質ゲーになりがち
あと遅い言語でO(n log n)落としてO(n)通すように設計するとC++ではO(n log n)が普通に通るなんてことがある
logを落とす力を評価するコンテストサイトもあるっぽいけど、AtCoderは入出力ゲーとか言語格差とかそんなに好きじゃないのであまりそういう力は問わない
0119デフォルトの名無しさん (テテンテンテン MMee-aJB8)
垢版 |
2021/08/03(火) 13:47:56.92ID:8JvOP1wgM
最近競プロで必要そうな知識を整理してて、集めるとそれなりの分量になるなと思った反面、AGCの難問には基本的な知識しか問わないけど難しいものが結構あるよね
多分知識入れただけじゃ解けるようにならなそう
どうやって練習してる?
0134デフォルトの名無しさん (オッペケ Sr5d-z7pP)
垢版 |
2021/08/07(土) 12:48:17.49ID:tc9pz7jrr
132だけどやっとA取れました...
茶色になった記念でpaizaに挑戦したけど意外と苦戦した

Aの美術館のセキュリティって問題でasin,acosが出てきて三角関数の逆関数の使い方を色々学べて楽しかった(これだけじゃネタバレにならんと思う)
asinは終域が-π/2〜π/2で全単射
acosは終域が0〜πで全単射だからモジュールの仕様で出てくるradianに気をつけないといけないんよね
0137デフォルトの名無しさん (テテンテンテン MM8b-Upoi)
垢版 |
2021/08/07(土) 15:16:31.01ID:m3lfMST8M
解答の本質とは関係ないぐらいの書き込みなんだろうから直ちにアウトってレベルじゃないと信じるけど、事前に要求知識が分かるだけでも微妙なのでやめといた方がいいと思う
あれ提出までの時間も評価対象だし
0144デフォルトの名無しさん (ワッチョイ 917e-Yw11)
垢版 |
2021/08/09(月) 18:48:38.87ID:8zL0HaLl0
diffよりも正確な問題難易度の指標ってないだろうか
chokudaiはdiff信仰をやめろって言ってるけど現状問題点数が全くあてにならないから結局diff見るしかないんだけど
0149デフォルトの名無しさん (テテンテンテン MM8b-Upoi)
垢版 |
2021/08/09(月) 20:50:23.56ID:UyuWFwykM
一元的な指標を作るのは難しいね
ただ点数、diff、平均AC時間、ABC or ARC or AGC、コンテスト中の問題の位置あたりを使えば何かしら予測できそうではある
あと難易度評価と言えばAOJ-ICPCの投票システムとかも悪くなさそう
0150デフォルトの名無しさん (ワッチョイ ebb0-Kbjn)
垢版 |
2021/08/09(月) 21:22:43.06ID:0xclxDfU0
Tree Gameとか問題だけ見たら黄diffがいいところなのにAGC-Fに置いてあるってだけで赤diffなんだよな
diff、点数、出題時期、傾向、コンテスト時間、点数、問題位置あたりをパラメータにしてなんかすごいパワーで問題単体の指標が出来たら嬉しそう
0153デフォルトの名無しさん (テテンテンテン MM8b-Upoi)
垢版 |
2021/08/09(月) 23:22:45.32ID:JOLWY9t6M
分割統治FFTはtwitterの人々の反応をみても知識レベル的に橙〜赤はあるようには見えるし、今回はそんなに極端に上がったわけではなさそう
ただ、今回のFレベルの問題が仮にHの位置にあったら橙diff上位になるみたいなことは普通にありえそう
0156デフォルトの名無しさん (ワッチョイ 895f-NW/4)
垢版 |
2021/08/09(月) 23:48:37.40ID:Qpru44Ly0
8問制になったことで今まで以上にdiffの信憑性がイマイチになりそうなんだよな
EFGHのうち典型3問、実装1問だとしたら
実装問が難易度的には一番易しくても橙diffとかになりかねないし
diffにとらわれず全部覚えろという意見ももっともだが、なるべく効率的にやっていきたいので
やっぱりよりよい指標ができたら嬉しい
0157デフォルトの名無しさん (アウアウウー Sa55-qGWQ)
垢版 |
2021/08/10(火) 01:12:05.76ID:+8rHdyoLa
せめて120分にしたらもう少しdiff下がるよね
0161デフォルトの名無しさん (ブーイモ MM85-4F3g)
垢版 |
2021/08/10(火) 08:42:22.48ID:jFfsp4nTM
Fは500点問題としては難しかった。6問の時のFのままの難易度では。
0164デフォルトの名無しさん (アウアウエー Sa23-fnA7)
垢版 |
2021/08/10(火) 21:06:15.34ID:YaD+0zrAa
ABCで明らかにRatedが解けない様な問題たくさん出してるのってどういう意図なのかな
0165デフォルトの名無しさん (テテンテンテン MM8b-po8W)
垢版 |
2021/08/10(火) 21:13:14.40ID:/CAOXhvjM
高難度典型枠は高レベル向け典型90としてみるとありがたいけど、だったらストレートに高レベル向け典型90という形で出してもよかったんじゃないかなあとも思う
界隈の知識レベルを向上させる?みたいなコンセプトそんなに悪いとは思わないからさ
0167デフォルトの名無しさん (ワッチョイ a905-dtsT)
垢版 |
2021/08/10(火) 22:23:49.89ID:mpjmHC7I0
ARCもAGCもratedで全完が出るかどうか、くらいの回が多いしABCもそうなっていくのかね
一般論としてはratedが全完同士のスピード勝負になるよりは上から下まで点数の勝負になるほうが健全と思うけど、
ABCは上位のかなりの人数が2400になるから全完多めでも問題ないはずなんだよな
0171デフォルトの名無しさん (アウアウウー Sa55-qGWQ)
垢版 |
2021/08/11(水) 02:40:27.47ID:aKewhnjga
まあ色々文句も出てるけど、e問題までは確実に以前の難易度に戻ったから良かったと思う
0172デフォルトの名無しさん (ワッチョイ 8102-whzZ)
垢版 |
2021/08/12(木) 06:44:33.27ID:cvBubBdB0
それはほんとに思う Eまで大分解きやすくなったよね ありがたい
0174デフォルトの名無しさん (ワッチョイ 895f-NW/4)
垢版 |
2021/08/12(木) 13:06:07.88ID:/vY/xrb70
社長曰く
Easy/Easy/灰-茶/茶-緑/水-青/青/黄-橙/黄-橙

辺りを狙っていくとのことだったので、E青は全然ありうると思う
現時点ではFが思ったより難しいのがアナウンスと異なる点
0180デフォルトの名無しさん (アウアウウー Saa5-QBLq)
垢版 |
2021/08/13(金) 04:54:00.24ID:ivCE0qz6a
for文書けない人に配慮する前に気にすべきことがあるんじゃないかとは思う
0183デフォルトの名無しさん (アウアウウー Saa5-QBLq)
垢版 |
2021/08/13(金) 10:00:25.00ID:ivCE0qz6a
こないだのaは自信なかったんで全探で解いたわ
0205デフォルトの名無しさん (ワッチョイ 3121-1+Eo)
垢版 |
2021/08/15(日) 03:22:13.67ID:gujuFnPB0
>>193
そういうCSっぽいのを出すと受験を控えた電通のご子息の負担になってしまうんよ
0207デフォルトの名無しさん (ワッチョイ 5902-1kHZ)
垢版 |
2021/08/15(日) 03:52:35.22ID:A2cCfMbu0
Eは典型とかFは典型とかいう意見を見たけどほんとに典型なん?あれをはい典型だねと思って解けるようになる未来が見えないんだけど
0209デフォルトの名無しさん (ワッチョイ 41cd-TSG6)
垢版 |
2021/08/15(日) 14:08:24.22ID:mhmE79MH0
プログラミング初心者にアルゴ式勧めてる人ちょくちょく見るけど
AOJ の ITP とかのほうが良くないか?
0216デフォルトの名無しさん (オッペケ Srf1-NqGc)
垢版 |
2021/08/16(月) 14:43:02.04ID:adtnZqXzr
先週のDってKruscalとPrimのアルゴリズムを実装したことある人なら簡単だったのかな
緑だと厳しくて水の人らはそこそこ解けてるからこの辺り知識差がでたのか
0218デフォルトの名無しさん (テテンテンテン MM26-qmhw)
垢版 |
2021/08/16(月) 15:42:21.88ID:FZJNdLMvM
マトロイドは勉強したけど青黄往復レベルの自分だと直接的にそこまで役に立ったことはまだないかな
クラスカル法の一般化として理論は面白い、電気通信大の資料で勉強した
問題に出てくる対象がマトロイドになってるとわかると直感的に明らかでない場合も貪欲でできるとわかって嬉しい
けどそもそもマトロイドであることを初見で見抜いて示すのがそこまで簡単じゃない
自分の認識はこんなもんだけど橙以上の上位陣がよく話してるマトロイド交差みたいな上位典型もあって、自分が把握してない活用法がまだまだありそう
0219デフォルトの名無しさん (テテンテンテン MM26-qmhw)
垢版 |
2021/08/16(月) 15:51:57.71ID:FZJNdLMvM
あとこの前のABC-Dではあまり最小全域木アルゴは意識したつもりはなかったけど、辺を段々追加して動的に管理するみたいな発想は確かにそのあたりのアルゴの影響で思い付けた可能性はあるかも
どちらかというと主客転倒がメインで、辺が寄与できる範囲の木を作ろうという気持ちだった
0221デフォルトの名無しさん (ワッチョイ 2eb9-bUWv)
垢版 |
2021/08/16(月) 18:21:55.66ID:4w1z8qFD0
>>216
ちょうど水色でなんとかそれ解けた、ってレベルだけど、
似たようなアイデアを断片的につかう問題をいくつもやってたからたまたま解けたって感じ。
やっぱ解きまくって典型解法に習熟するのが重要なんじゃない?
初等レベルの算数でも足し算、掛け算、割り算の筆算は練習しまくらないと慣れないし。

ちなみにクラスカルは楽勝に実装できるけど、プリムのやり方忘れたやべえ。マトロイドはなんのことだか知らんがな、って知識量。
0224デフォルトの名無しさん (ワッチョイ 222c-ODwZ)
垢版 |
2021/08/17(火) 20:29:41.66ID:hYkkAkQv0
ウニオンフィンド(´・ω・`)
0229デフォルトの名無しさん (ワッチョイ 2eb9-pBez)
垢版 |
2021/08/19(木) 02:58:40.08ID:UckJ/DAo0
ほどよい難易度だったね
0230デフォルトの名無しさん (ガックシ 0626-LMo/)
垢版 |
2021/08/19(木) 11:00:23.69ID:a6l+9Dx26
ABC214-Dが茶色予想だったってchokudaiがあーだこーだーで言ってたね
・辺をコストでソートする
・Unionfindで管理する
って普通の人はクラスカル法を理解してないと着想難しいし、あれが茶色は流石にないでしょう
0243デフォルトの名無しさん (ワッチョイ 492c-l+b6)
垢版 |
2021/08/19(木) 20:39:43.61ID:U/+cw26+0
クラスカルとは全く違う

クラスカルは最小の和が欲しいから、小さい方から貪欲に見ていくのであって、今回のは各辺の寄与をみるのに小さい方からみるとうまくいくというだけ

アルゴリズムが本質として違いすぎる
0244デフォルトの名無しさん (ワッチョイ ffdb-OTWc)
垢版 |
2021/08/20(金) 17:51:46.53ID:sosiCxFj0
クラスカルとは違うけど枝を小さい順から見ていってunionするとか、プリムとは違うけど頂点集合のカットから最小の枝を選ぶとかの考え方を1度やっておくと
別の問題に帰着できそうね
0245デフォルトの名無しさん (アウアウウー Sa63-wMFD)
垢版 |
2021/08/21(土) 00:34:03.74ID:uRKo8Igna
今月ARC一回だけか。。
0248デフォルトの名無しさん (ワッチョイ ff02-VfHF)
垢版 |
2021/08/21(土) 22:10:18.81ID:7GAoG1Iq0
Rustのメモリ安全性はボローチェッカーによって担保されているが、
Nimと比較してRustはタイプ量が多い事により限りなく低い生産性と
C++のような高い難読性、超巨大なバイナリ生成性能を兼ね備えています

Nimはバージョン1.5.1でRustのボローチェッカーに似た「View types」が実装されれば、
GC無しのView typesで参照の有効性を検証することによってメモリ安全性を保証しつつ
限りなく抑え込まれたタイプ量で高速化したCのソースコードを吐き出せます

Nimソースコード ==nimコンパイラ==> Cソースコード ==Cコンパイラ==> バイナリ

なので、nimコンパイラが通った時点でメモリ安全性が担保されませんか?

Nimの実験的特徴
著者: アンドレアス・ルンプ
バージョン: 1.5.1
http://nim-lang.github.io/Nim/manual_experimental.html


Nimは限りなく抑え込まれたタイプ量で高い生産性とPythonのような高い可読性を実現し
ているにもかかわらず、高速なCのソースコードを吐き出せるのでC言語でリモートワーク
されている方は割り振られた仕事が早く終わっても終わってないふりをして怠けることができる

「怠け者とはこうあるべきだ!」と言うとても大事な事を Nim は我々に教えてくれます
0250デフォルトの名無しさん (ブーイモ MMc3-ujp1)
垢版 |
2021/08/21(土) 23:08:27.09ID:FoeKOLs+M
今日のC問題、26^8の並べ替えは全探索は無理と思ってたけど、8^8の並べ替え考えればいいんだな。
0252デフォルトの名無しさん (テテンテンテン MM4f-zH/y)
垢版 |
2021/08/21(土) 23:32:07.02ID:1B8QhnzYM
noshiさんの言ってるTaylor shiftやっと理解した
f(x) = \sum_{n=0}^N c_n x^nとする
二項定理から
f(x+a) = \sum_{n=0}^N c_n (x+a)^n
= \sum_{i=0}^N (\sum_{n=i}^N a^{n-i} c_n \binom{n}{i}) x^i
これは二項係数をばらしてj=N-i, k=N-nとして
\sum_{j=0}^N x^j /(N-j)! \sum_{k=0}^j (a^{j-k}/(j-k)!)((N-k)! c_{N-k})
になる

この後ろの部分をよく見ると畳み込みになってて、
g(x) = \sum_{n=0}^{N} (a^i/i!) x^i
h(x) = \sum_{n=0}^{N} (N-i)! c_(N-i) x^i
の畳み込み(g*h)(x)のi次の項に1/(N-i)!倍すればいい
これでO(NlogN)でFPSの平行移動が計算可能
0256デフォルトの名無しさん (ワッチョイ ff02-VfHF)
垢版 |
2021/08/22(日) 13:12:10.90ID:0Cz6ueFz0
Rustのメモリ安全性はボローチェッカーによって担保されているが、
Nimと比較してRustはタイプ量が多い事により限りなく低い生産性と
C++のような高い難読性、超巨大なバイナリ生成性能を兼ね備えています

Nimはバージョン1.5.1でRustのボローチェッカーに似た「View types」が実装されれば、
GC無しのView typesで参照の有効性を検証することによってメモリ安全性を保証しつつ
限りなく抑え込まれたタイプ量で高速化したCのソースコードを吐き出せます

Nimソースコード ==nimコンパイラ==> Cソースコード ==Cコンパイラ==> バイナリ

なので、nimコンパイラが通った時点でメモリ安全性が担保されませんか?

Nimの実験的特徴 バージョン1.5.1
http://nim-lang.github.io/Nim/manual_experimental.html

第二プログラミング言語として Rust はオススメしません Nim をやるのです
https://wolfbash.hateblo.jp/entry/2017/07/30/193412


Nimは限りなく抑え込まれたタイプ量で高い生産性とPythonのような高い可読性を実現し
ているにもかかわらず、高速なCのソースコードを吐き出せるのでC言語でリモートワーク
されている方は割り振られた仕事が早く終わっても終わってないふりをして怠けることができる

「怠け者とはこうあるべきだ!」と言うとても大事な事を Nim は我々に教えてくれます
0257デフォルトの名無しさん (JP 0H1f-zH/y)
垢版 |
2021/08/22(日) 13:20:23.57ID:emY9LezaH
>>254
>>255
ありがとう
最初Nが有限じゃなきゃ意味のない式だから確かにFPSじゃなくて多項式において適用可能か程度の認識で読んだけど、そもそも根本的に定数項を含むFPSを他のFPSに代入しちゃダメなのか
恥ずかしながら理解してなかった
確かに一般のFPSに1を代入したら容易に定数項が発散してしまうね
0に何掛けても0なので0次の項が爆発してしまう
0261デフォルトの名無しさん (テテンテンテン MM4f-xvoR)
垢版 |
2021/08/24(火) 11:36:43.63ID:86nlJJ+dM
ざっくり読んだけど、大意としては白カピさんが前言ってたようなことと大体似たような感じ?
優秀なITエンジニアを目指すことと競プロを突き詰めることは分けて考えた方がいいというのはまあそうだよねという感じ
0264デフォルトの名無しさん (ワッチョイ 9f14-FcIJ)
垢版 |
2021/08/24(火) 15:01:44.46ID:dGk193ua0
あと競技プログラミングで作ったものって
他の人の役に立たないよね?

あんなに優秀(笑)な人が時間をかけて作業してるのに
競技プログラミングの成果は無駄になる

ものづくりのためにあるプログラミングなのに物を作らない
ものづくりに必要ない技術の競技なってるから役に立たない
0265デフォルトの名無しさん (テテンテンテン MM4f-xvoR)
垢版 |
2021/08/24(火) 15:18:14.22ID:hCwrk83dM
入り口の段階でコーディングに慣れたり頭の体操ができる的な効用はあると思うけどねー
まあ趣味なので一定レベル以上でそんなに実用的な期待のもとにやってる人は少ないと思う
0266デフォルトの名無しさん (アウアウウー Sa63-y8ey)
垢版 |
2021/08/24(火) 21:34:58.15ID:2qNqCWyUa
黄 abc卒業、一つの到達点
青?
水 アルゴカンスト
緑 業務上は十分
茶 入色!

なんか青だけ中途半端だな。自分の立ち位置をうまく説明できなくて就職も失敗しそう
0270デフォルトの名無しさん (ワッチョイ ff90-DepB)
垢版 |
2021/08/25(水) 02:33:04.77ID:6jB+kuHx0
>>266
それ書いた頃から色1つ以上ずれてる予感
最大流が青以下で出てない以上黄色でもカンストしてないし、灰色で高度なグラフや最適化アルゴリズムを実用レベルで使うことも可能でミスリーディング

今のatcoderはアルゴリズムをダシにしたただの算数パズル
0274デフォルトの名無しさん (ワッチョイ ff90-DepB)
垢版 |
2021/08/25(水) 03:26:54.54ID:6jB+kuHx0
グラフアルゴリズムを使えなくても、整数問題と漸化式と関連してdpが使えれば最悪青までいけるように調整してきたのがatcoder、受験生に優しい
0275デフォルトの名無しさん (アウアウウー Sa63-CKVu)
垢版 |
2021/08/25(水) 04:56:41.94ID:hWSOgqtaa
門外漢に説明する場合実態よりも社長のブログ記事やから
0279デフォルトの名無しさん (テテンテンテン MM66-4thN)
垢版 |
2021/08/29(日) 22:55:37.34ID:Z+jA1Ny+M
牛ゲーっていうんだこれ
G問題なのにad hocで妙だなって思ってたけどちゃんと高度典型に関わる問題だったんだね
牛ゲーへの帰着よりad hoc解の方が簡単で結果みんな解けているけど
0284デフォルトの名無しさん (ワッチョイ 4d05-OBKD)
垢版 |
2021/08/30(月) 00:04:52.56ID:zE3c6uCW0
最短経路問題に帰着したあと、負辺に悩んだ末にグラフの特殊な形を利用して準線形にしたけど
解説見てなるほどなあとなった
初手で反転するタイプのやつ全般、いつも見落としてしまうな
0309デフォルトの名無しさん (ワッチョイ f177-9yYO)
垢版 |
2021/09/12(日) 04:27:40.04ID:7UxarLCX0
算数パズルと叩きまくれば普通のプログラミングやアルゴリズムの問題が増える
0310デフォルトの名無しさん (ワッチョイ a602-Lcib)
垢版 |
2021/09/14(火) 04:13:51.06ID:GzssHl260
https://twitter.com/kyopro_friends/status/1436693258298482688
を見るとABC218-Gがpriority_queueでも解けるように読めるんだけど、今回みたいにバックトラックが必要な場面でもこのテクニックは使えるもの?
multisetみたいに任意の要素を削除できないと厳しい気がするんだけど
https://twitter.com/5chan_nel (5ch newer account)
0317デフォルトの名無しさん (ゲマー MM92-zk0n)
垢版 |
2021/09/14(火) 18:34:53.52ID:SK+RosMiM
priority queueから削除が要る時は、追加する値を2倍+1、削除する値は2倍にして
同じキューに突っ込んで、取り出した値の下位1ビットが0の数だけスキップする
最強園児の選別でそんな感じのものを使った気がする
0318デフォルトの名無しさん (ガックシ 063e-EthW)
垢版 |
2021/09/14(火) 19:14:04.78ID:5jb1fRHV6
レート付き園児が出てくるやばい問題ね
min、maxおよび定数個のk分位点の取得はpriority queueでほぼ代用可能ということかな
検索は大体どの言語にもあるunordered_setで代替できる
lower_boundとかは無理そうか
まあ、平衡二分探索木の代用だとクエリ先読みできるんなら座圧BITの方が直感的にわかりやすい気がするけど
0320デフォルトの名無しさん (ワッチョイ fff2-b3rt)
垢版 |
2021/09/19(日) 12:40:14.90ID:HwX1dH8g0
Rubyが遅すぎるんじゃないのかな使ったことないから知らんけど
余り遅すぎる言語に合わせるとC++とかでクソ解法が通ってしまうからしょうがないような気もする
一応Pythonなら通せるようにする方針らしいけど
0321デフォルトの名無しさん (ワッチョイ 9732-t0a3)
垢版 |
2021/09/19(日) 13:16:18.07ID:NXnuF3oi0
Rubyはインタプリタとしては遅いわけではないが、JITコンパイルでもあまりはやくならないのが厳しい。PyPyのように速くなるものがあるといいんだけどね。
0323デフォルトの名無しさん (ワッチョイ f732-t0a3)
垢版 |
2021/09/19(日) 15:23:37.00ID:vAjqgmQ30
Ruby書けるならCrystalはすぐ書けるようになるよ。ほとんど同じ。

むしろ型アノテーションが使える分、Crystalの方が書きやすいまであるかも。個人の感想です。
0324デフォルトの名無しさん (アウアウウー Sa5b-3TuO)
垢版 |
2021/09/19(日) 17:32:36.92ID:PtCH0+cLa
crystalはほんとよくできてるよね。静的型、null安全を実現しつつもrubyistがこだわる「rubyらしさ」がほとんど損なわれていない
0330デフォルトの名無しさん (オッペケ Sr0f-agLc)
垢版 |
2021/10/16(土) 03:00:16.89ID:vcLu1S2Wr
うんち!w
0336デフォルトの名無しさん (ワッチョイ fb05-59xu)
垢版 |
2021/10/17(日) 23:42:38.80ID:f7OUjdhe0
Gは木を二部グラフ(V1×V2)とみなして大頂点S, Tを追加してSからTに最大フローを流した状態の残余グラフについて考えたら解けた

v1 ∈ V1, v2 ∈ V2がマッチしているとして、v1 → S → … → v2 → v1みたいなサイクルがあることがv1を消しても別のマッチを作れる条件で、
v1, v2, Sがすべて同じ強連結成分に属するなら消してもOK、だめならv1は消せない、と考えると通った

「残余ネットワーク上の貪欲は正しい」としか覚えてないので厳密な証明はよくわからない……
0337デフォルトの名無しさん (ワッチョイ fb05-59xu)
垢版 |
2021/10/18(月) 21:30:25.41ID:cUABpoQy0
↑別に難しくなかった
最大フローを流した状態の残余グラフをGとして、GからS->v1->v2->Tに流れているフローを押し戻してv1を消したグラフをG'とする
G'にSからTへの増加パスが存在することが、v1を消しても最大マッチングの大きさが減らない必要十分条件である

G'にSからTへの増加パスPが存在するとする
Pがv2を含まなければPを伝ってSからTに行った後、T->v2->v1->Sと戻ってくるのがG上のサイクルになっている
Pがv2を含んでいる場合はPを伝ってSからv2に行った後v2->v1->Sと戻ってくるのがG上のサイクルになっている
どちらの場合もv1, v2, SはG上で強連結

逆にv1, v2, SがG上で同じ強連結成分に属するとする
v2->v1->SはG上で一方通行のパスだから、Sからv2へのv1を含まないパスが存在して、これにv2->Tを加えるとG'上でSからTへの増加パスである

(v2を消す場合もv1, v2, Tに関して同じことが言える)

この方針なら二部グラフでもO(M sqrt(N)))とかで解けてそう
0339デフォルトの名無しさん (ワッチョイ fb05-59xu)
垢版 |
2021/10/18(月) 23:21:33.28ID:cUABpoQy0
>>338
GやG'は残余グラフのほうを指してるつもりだった
その例で言うと、最大マッチングとして2-1を選ぶとGは

S <- 2
2 <- 1
1 <- T
2 -> 3
3 -> T

で、この場合、1, 2, Tは同じ強連結成分に属しているので2を消してもS->Tへの別の増加パスが見つかる
S, 1, 2は同じ強連結成分に属していないので1を消すと増加パスが見つからない
0340デフォルトの名無しさん (ワッチョイ fb01-Avck)
垢版 |
2021/10/21(木) 16:15:46.81ID:8ILWSSPd0
フリーランスに立ちはだかる「常駐」の壁。慣例を打ち壊し、
“テレワーク”案件3割→8割へと成長を遂げた「クラウドテック」の軌跡

リモートワーク求人専門サイト「プロリモート」がリニューアルオープン、業務委託契約の求職者と企業をマッチング

1/3以上が採用につながる高マッチング率、リモートワーク×エンジニア・デザイナー専門の
人材紹介サービス「ReworkerAgent」正式リリース場所からも時間からも自由な働き方を実現!

茨城県日立市、県外からの「テレワーク移住者」に最大151万円の助成金

長野市、市内に移転・事業所設置し、移住することで最大550万円の支援金を支給

フリーランスが活用できる「最大1,000〜3,000万円・補助率50%〜75%」の
『ものづくり・商業・サービス補助金』とは?概要や条件を解説

『ReWorks(リワークス)』リモートワーク特化型転職サイトとして 3月5日 リニューアル
0344デフォルトの名無しさん (テテンテンテン MMe6-vCD2)
垢版 |
2021/10/26(火) 22:34:52.78ID:59ycdlv3M
数学ではよくある考え方やテクがABC-Cから登場すると思うけど、基本的なものでも初見だと難しいものが多いと思う
最初からスムーズに解ける人たちは散々似た考え方に慣らされてきた人たちだと思うし
ABC-Cぐらいの数学的思考の素養ぐらいは身に付けておいて損はないと思うから、慣れてみるといいんじゃないかな
0346デフォルトの名無しさん (テテンテンテン MMe6-vCD2)
垢版 |
2021/10/26(火) 22:43:03.70ID:59ycdlv3M
グラフや木の問題だったら手癖でよくあるケースを作れるようにしたりして実験そのものをスムーズにできるようにしたり
愚直解の実装を早めにやるように心がけたり
ありがちな注目すべき量(パリティー、剰余、木の葉の数、木の直径、頂点の次数、連続する二項の差分、転倒数、総xor…etc)の知識が増えてくるとエスパー精度上がりそう、俺自身実験エスパーそんな得意じゃないから知らんけど
0351デフォルトの名無しさん (ワッチョイ 1302-48dE)
垢版 |
2021/11/04(木) 22:10:01.18ID:hqf6Ttzz0
AtCoderの「第二回 アルゴリズム実技検定」のテストケースはどこにありますか?
0353デフォルトの名無しさん (ワッチョイ 256e-9FlI)
垢版 |
2021/11/13(土) 00:38:47.84ID:WhtcoC320
ちょっとずれた話題になるけど競プロ好きな人ってどういう方向の就職が向いてるのかな
よくある金融系とか医療とか販売サイトとかそういうのが全然ピンとこない。ロジックを考えるのが楽しいのであって何を作るかにあまり興味ないというか…
0355デフォルトの名無しさん (ワッチョイ 2302-09aj)
垢版 |
2021/11/13(土) 23:13:52.96ID:cg3EZESf0
paizaのSを全解き目指してるレベルの者だけど、>>345の意見には納得するところがある。
競プロやる前は、クラス定義してDictionaryでどうこうすれば、大抵の問題は片付いた
わけだが、競プロの問題ではクラスなど定義していたら時間切れになってしまうので、
配列だけで何とかするという、文法的にはレベルの低い書き方をして、いかに実行時間を
短くするかということに主眼がおかれていると思う。ビジネスで使うには10の何乗という
データ数はない場合がほとんどだし、計算に1週間程度掛かるのも問題ないことが多い。
競プロ的な書き方をすると、他のプログラマーとコーディングスタイルがかなり異なって
しまうと思う。
0359デフォルトの名無しさん (ワッチョイ 4b10-Etu+)
垢版 |
2021/11/18(木) 20:46:20.19ID:yaHQuJEZ0
paizaはatcoderと比較して時間制限が緩いし、その制限に間に合わないときは、
他に最適なロジックがあるってことだと思うよ

あと競プロを解いていると、自分が知らないやり方とか、効率の良いやり方を
知ることができるということが大きいと思う

意外と文字列と時間の細かい扱い方とか知らないことがあるので
それを知るきっかけになるので勉強になる
0361デフォルトの名無しさん (ガックシ 068f-ZQOw)
垢版 |
2021/11/28(日) 10:56:10.69ID:DkHLSjjA6
ソースは特に見当たらないけど、それ以外にABを難しくするモチベがあまりなさそうだからそう言われてる
あとは精々、企業コンではあまりにもひねりのない問題の出題は避けてるとか?
0362デフォルトの名無しさん (ワッチョイ f79a-i1Ew)
垢版 |
2021/11/28(日) 13:18:03.58ID:ykDYmOS+0
競技プログラミング的なロジック組んで金になる方法考えてみようぜ
とりあえず俺は自動取引系ソフトに一票
0364デフォルトの名無しさん (ワッチョイ 977c-VbP9)
垢版 |
2021/12/01(水) 02:28:23.44ID:7HPQuU+R0
ABC226-H の解説に類題として挙げられていた以下の問題が解けません
> 区間 [0,1] 上に一様ランダムに区切り線を n−1 本入れて n 個の区間に分けた時、 k 番目に短い区間の幅の期待値は?
ABC226-H 自体はすんなり解けたのですが上の問題は正直N=3の時点で自分には手が出なくて、困ってます
0365デフォルトの名無しさん (ブーイモ MMfb-jDRN)
垢版 |
2021/12/02(木) 20:39:33.36ID:rnInpLg+M
まず、k=1はわかりますか?
これは期待値がx以上になる確率を考えるとできるはず(累積分布関数を考えているという点が類似ポイント)

で、一般の場合は包除原理を適用するとできる

途中式省くけど答えは1/n (1/n + 1/(n-1) + ... + 1/(n-k+1))になります
0366デフォルトの名無しさん (ワッチョイ 3f7c-xawu)
垢版 |
2021/12/04(土) 08:39:45.51ID:x9fVLDRG0
ええと、k=1の場合は
P(x) を x 以上となる確率として \int_0^{\infty} P(x) dx が求められれば良い
x 以上となるような区切りの入れ方は[0, 1-nx] に区切りをn-1本入れて、各区切りの間に幅xを挿入したものと一対一対応するので
P(x) = (1-nx)^{n-1}
よってk=1の答えは \int_0^{\infty} P(x) dx = 1/n^2
みたいな感じでいいでしょうか
0368デフォルトの名無しさん (ワッチョイ 5202-PP5C)
垢版 |
2021/12/04(土) 12:33:36.19ID:gg0i98sn0
>>367
355だけど、役に立つよ。頭の体操になる。数学の問題を手で解くより面白い。
0375デフォルトの名無しさん (ワッチョイ 0f01-izju)
垢版 |
2021/12/18(土) 14:36:12.14ID:EFVtFN3G0
「ゲームで金儲けする時代止められない」CCPゲームズ代表インタビュー

「CCPゲームズ」のヒルマ・ベーガー代表は14日、オンラインインタビューで最近、
話題に浮上した「プレイトゥオン(Play to Earn 儲けるゲーム)」について「世界のゲーム業界には、
すでにゲームアイテムを取り引きする2次市場が存在する」とし「儲かるゲームは以前にもあったし、
これからも止められない流れになる」と診断した。
CCPゲームズは、世界的な人気ゲーム「イブオンライン(Eve Online)」を開発・運営する。イブオンラインは、
世界で4000万人以上が楽しんでいる。
CCPゲームズは最近、NFT(代替不可能トークン)コンテンツを披露し、注目を集めている。
「アライアンス・トーナメント」というゲーム内の大会商品でNFTコンテンツを配った。
0376デフォルトの名無しさん (ワッチョイ 7b6e-Zgw3)
垢版 |
2021/12/21(火) 13:47:34.46ID:8AspzEl40
最近勉強始めたばかりの初心者だけど動的計画法でつまづいている
部分構造最適性っていうけど、損して得取れというか一部では損でも全体で見れば最良になるような問題やケースは無いのか?って思う
0378デフォルトの名無しさん (ワッチョイ e310-ujj6)
垢版 |
2021/12/21(火) 18:49:26.20ID:gTw96teU0
枝刈り全探索だと思うとよさそう ナップサック問題でいうと大きさは同じなのに価値が低い組みたいにどう頑張っても得にならないケースは使わないように大きさごとに価値が最大のものだけ持っておく感じ?
0379デフォルトの名無しさん (ワッチョイ d7a4-4IyZ)
垢版 |
2021/12/21(火) 20:30:24.97ID:JiGJ+/NL0
動的計画法がいまいち理解できない人には、メモ化再帰バージョンを試してみてほしい
と、個人的には思うんだけど、再帰呼び出しそのものが難しいかしら?
0381デフォルトの名無しさん (ワッチョイ 7b6e-Zgw3)
垢版 |
2021/12/22(水) 02:28:33.78ID:Z+1UFQDg0
近頃再帰少しずつ書けるようになってきてメモ化再帰も試してはいる
ただたとえばフィボナッチなんかはわかりやすい。同じ計算してるからメモしておくっていうのは
でも経路とかの問題でmemoは違う値にならえないのか?ってなる。値が更新されてたらそれを返すっていうけどさらに更新される可能性はないのか?って
0383デフォルトの名無しさん (ワッチョイ 3b01-hc9O)
垢版 |
2021/12/22(水) 22:28:18.00ID:AhLEKKoC0
>>381
違う値になりえる場合は使えないよもちろん

正当性が証明できるときだけ使うし、正当性が担保できるようにアルゴリズムを組むんだよ
これ以上は具体的な問題見ないとなんとも
0385デフォルトの名無しさん (ワッチョイ 9901-sV8s)
垢版 |
2022/01/06(木) 17:53:55.86ID:lFeOOX7v0
白カピを讃えよ
0390デフォルトの名無しさん (アウアウウー Saa5-keiW)
垢版 |
2022/01/06(木) 19:27:37.71ID:sqyEIboYa
別にわっちょい怖くなんかないけど、人がおらんとどうしようもない。向こうのスレコンテスト後の数時間はクソスレ極まってるけど、日常のバカ話で人を引き止めてるところはあるのかもしれない
0391デフォルトの名無しさん (アウアウウー Saa5-keiW)
垢版 |
2022/01/06(木) 19:30:20.21ID:sqyEIboYa
>>390
>コンテスト後の数時間はクソスレ

すまん「コンテスト後の数時間以外はクソスレ」の間違い
0392デフォルトの名無しさん (ワッチョイ 9901-sV8s)
垢版 |
2022/01/06(木) 19:33:22.15ID:lFeOOX7v0
くんすこ
0393デフォルトの名無しさん (テテンテンテン MM26-ADtK)
垢版 |
2022/01/06(木) 19:52:52.81ID:E4kfzcZtM
常時クソスレだろ?
0397デフォルトの名無しさん (ワッチョイ a734-B/cF)
垢版 |
2022/01/26(水) 13:16:14.83ID:HUI/BT/C0
>>395
何物にも縛られない「自由な動き」が創造性を高めると判明!
https://nazology.net/archives/103764

多分これが一番近い理由だと思う
創造性とは少し異なるけど競プロも発散的思考の要素はある
拘束とも少しずれるけどそれに似た緊張が不調なタスクには絡んでると見てる

>>396
結果だけみて判断するのは他人をフィルターにかけるときは傾向が収束するから合理的だが、個々の事案に向き合うときには不十分だと思うで
0398デフォルトの名無しさん (テテンテンテン MM8f-yRnv)
垢版 |
2022/01/26(水) 17:34:45.45ID:IMxi6ITqM
風呂に入ってたら思い付いたアルキメデスの原理の逸話もあるし、精神状態に応じて辿り着ける思考は違うんだろうね
特にコンテスト終了前後じゃ劇的に違うだろう
考察得意な人は意図的にその辺のモードをコントロールするのが得意だったりしたりするのかも?
0404デフォルトの名無しさん (ワッチョイ 6301-piVT)
垢版 |
2022/02/14(月) 10:47:03.47ID:TVm+ejPZ0
フリーランスに立ちはだかる「常駐」の壁。慣例を打ち壊し、
“テレワーク”案件3割→8割へと成長を遂げた「クラウドテック」の軌跡

リモートワーク求人専門サイト「プロリモート」がリニューアルオープン、業務委託契約の求職者と企業をマッチング

1/3以上が採用につながる高マッチング率、リモートワーク×エンジニア・デザイナー専門の
人材紹介サービス「ReworkerAgent」正式リリース場所からも時間からも自由な働き方を実現!

『ReWorks(リワークス)』リモートワーク特化型転職サイトとして 3月5日 リニューアル

副業・兼業マッチングサービス「クラウドリンクス」登録者数2万人突破
中小企業で進む副業人材の採用、96%が継続採用を希望

茨城県日立市、県外からの「テレワーク移住者」に最大151万円の助成金

長野市、市内に移転・事業所設置し、移住することで最大550万円の支援金を支給

フリーランスが活用できる「最大1,000〜3,000万円・補助率50%〜75%」の
『ものづくり・商業・サービス補助金』とは?概要や条件を解説
0422デフォルトの名無しさん (ワッチョイ 0a02-9ZeA)
垢版 |
2022/07/02(土) 23:06:46.41ID:2OTHusXb0
Bがこの重さってまじ?
もう新規囲い込む気ないよねこのサイト
0424デフォルトの名無しさん (ワッチョイ 8e02-CTF5)
垢版 |
2022/07/02(土) 23:10:19.92ID:cezlBl1t0
BCDの3問がCCCになってる
0426デフォルトの名無しさん (ワッチョイ 0a02-9ZeA)
垢版 |
2022/07/02(土) 23:12:52.80ID:2OTHusXb0
プログラミング入門者で、競技プログラミングやってみよーって人が今回のABCのBをみたらどう思うだろうね
これじゃあ人なんて増えないわ
0428デフォルトの名無しさん (アウアウウー Sacf-pVYn)
垢版 |
2022/07/02(土) 23:24:56.50ID:z91+ebe7a
bよく読めばそんなに難しくないんだけどな
出題者がdiff低く見積もったのもわかる気がする
0431デフォルトの名無しさん (ワッチョイ c7a4-g8jV)
垢版 |
2022/07/02(土) 23:43:25.18ID:WXVFk7BC0
灰や茶にとってはちょっと難しい要素が複数詰め込まれてた感じか?
問題文がちょっとむずい
8方向遷移がちょっとむずい
順番に並べて整数を作るのがちょっとむずい
みたいな
0432デフォルトの名無しさん (ワッチョイ 1b7f-K581)
垢版 |
2022/07/03(日) 00:33:20.34ID:1yNMSZTa0
Bはひたすら面倒くさかった
0439デフォルトの名無しさん (アウアウウー Sacf-pVYn)
垢版 |
2022/07/03(日) 14:58:10.18ID:1KIWm0Nxa
>>436
diff200くらいだろうと思ってb問題にした結果です
0444デフォルトの名無しさん (ワッチョイ 4a7c-5Nuq)
垢版 |
2022/07/03(日) 16:34:44.10ID:Rs7jP0Dp0
>>439
chokudaiさんだっけ?B問題作ったの
確かにただのループだけで解けるならdiff200くらいで済んだかもしれんが
マスの外に飛び出しても良いってのが難易度上げちゃったんだろうな
0449デフォルトの名無しさん (アウアウウー Sacf-pVYn)
垢版 |
2022/07/03(日) 20:10:53.34ID:zNseTisNa
O(1)の数学問題はめっちゃ解かれるよね
文系の俺、順位表のAC数見ていつも涙目
0452デフォルトの名無しさん (ワッチョイ 6b01-AhbY)
垢版 |
2022/07/04(月) 03:37:12.45ID:nQtKwBZH0
AHC012、ずっと任意の向きの直線考慮しててラスト一時間でようやく縦横だけのほうがスコア出るってたまたま試して気付いたんだけど、
初期から縦横だけでやった人はどうやって縦横だけで十分って気付いたの
0455デフォルトの名無しさん (ワッチョイ 1f3e-A/OY)
垢版 |
2022/07/04(月) 11:32:45.33ID:DTICoLLo0
任意の向きで考え始めると時間かかるからとりあえず縦横に制限すれば楽だな→意外と点取れるな
って感じだったが
苺はランダムだから、まずは直線の向きどうこうよりは囲んだ面積のほうが個数に寄与しがちだと思った
0456デフォルトの名無しさん (ワッチョイ 7f12-70GY)
垢版 |
2022/07/04(月) 12:20:49.27ID:Zs7eA4JI0
まともにスコア計算を高速化できない方針に短時間コンで手を出すべきじゃないんだよな
となると縦横が第一候補になるのは自明じゃないか?WaveletMatrixとか使えるのだから
0458デフォルトの名無しさん (ワッチョイ de68-5Nuq)
垢版 |
2022/07/04(月) 19:20:57.03ID:9IzbeOYI0
アルゴは解けなかった問題を解けるようにする/解ける問題を速く解く、で強くなれるけど、
ヒューリスティックはどうやったら上位勢との差が縮まるのか分からん
0465デフォルトの名無しさん (ワッチョイ a310-2uVC)
垢版 |
2022/07/06(水) 10:01:44.04ID:nHn2EtC00
自身が解けない問題をしっかり理解するきっかけになるからあえてレートよりdiffが高い問題を解説したら実力伸びる気がしてきた
ただ解説の精度に著しい問題が発生しそう
0476デフォルトの名無しさん (ワッチョイ 5301-A+Eo)
垢版 |
2022/07/07(木) 00:59:43.89ID:Kgc1E1s+0
表現の自由
はい論破
0495デフォルトの名無しさん (アウアウウー Sa09-h6Ny)
垢版 |
2022/07/09(土) 19:10:30.74ID:/7QgEttWa
>>493
ABC卒業したらそういうところも気にする必要あるのかもね
0496デフォルトの名無しさん (ワッチョイ 239f-GdaO)
垢版 |
2022/07/09(土) 19:13:04.46ID:uSQvYEtC0
競技プログラミングで思考が入力に追いつかないなんて入力が遅すぎるか本当に天才的に冴えてるかどっちかじゃない?
0502デフォルトの名無しさん (ワッチョイ 55e6-BXm0)
垢版 |
2022/07/09(土) 22:01:50.75ID:xBP8FTI+0
許さんぞ チーのもの
チーのもののくせに大それた事を
気分が悪くなったわ
0503デフォルトの名無しさん (ワッチョイ 55e6-BXm0)
垢版 |
2022/07/09(土) 22:02:51.98ID:xBP8FTI+0
犯人見て思ったこと
現実では関わりたくもねー チーのもの
0507デフォルトの名無しさん (アウアウウー Sa09-2HoA)
垢版 |
2022/07/11(月) 10:47:09.75ID:1W23UOpta
>>468
競技のコード観てると汚いのが多いし
そういうのが勝ってしまうのもどうかと思う
0508デフォルトの名無しさん (アウアウウー Sa09-wDuZ)
垢版 |
2022/07/11(月) 16:27:58.25ID:NjyTZsvXa
touristのコードとか綺麗やけどな
0514デフォルトの名無しさん (ワッチョイ 03bd-9GEJ)
垢版 |
2022/07/12(火) 09:49:50.85ID:nuTe4rEL0
tourist のコード(マクロがほぼない)を実務erの視点で見たら変数名が短いこと以外にどんなところがダメなんや?
アルゴリズム部分はかなり洗練されてると思うけど
0515デフォルトの名無しさん (スッププ Sd43-L+AA)
垢版 |
2022/07/12(火) 19:15:55.14ID:s2SMihWRd
・情報系の枠を増やすのが急務。なぜなら進振りで行けないから(東大ローカル事情)
・枠を増やすのが急務だけど新しい大学はレベルが低いから不可

めちゃくちゃじゃね?
0522デフォルトの名無しさん (ワッチョイ 3da4-h+9Z)
垢版 |
2022/07/13(水) 21:34:02.13ID:hq1XzdaG0
Sublimeはさすがにもう選ぶ理由が少ないよ
VSCodeより軽いけど、vimにもVSCodeにも機能面で劣る
というわけで勝手にvimとVSCodeの比較のつもりで話すけど
マスターするっていえるぐらい気合があるならとりあえずvim使ったら?

そもそもどっちも使えるようになっておくといいけど、気合があるうちにvimに慣れておくといいよ
VSCodeはマスターっていうほど気合を入れることなく、お手軽に使えるようになるだろうし
0523デフォルトの名無しさん (アウアウウー Sa09-h6Ny)
垢版 |
2022/07/13(水) 22:12:05.84ID:kDIyIUura
前からエディタの話ばっかりしてるアホが一人おるな
しかも聞いてばっかで実行しようとしない
0531デフォルトの名無しさん (アウアウウー Sa39-cI5m)
垢版 |
2022/07/16(土) 22:47:03.67ID:sS1IvH3Pa
apiadのwinning runかと思ったらtouristまさかのまくりw
0535デフォルトの名無しさん (アウアウウー Sa39-q/r2)
垢版 |
2022/07/17(日) 15:22:17.42ID:ryq1q+OZa
必死すぎウケるw
0538デフォルトの名無しさん (ワッチョイ 9501-mMB8)
垢版 |
2022/07/17(日) 17:07:51.34ID:lP/cgJhX0
まともな感性のフォロワーならとっくにミュートしてるはずだし、誰もリプしないのはそういうこと
0539デフォルトの名無しさん (アウアウウー Sa39-3/et)
垢版 |
2022/07/17(日) 20:01:31.85ID:qEPC/5M0a
もう彼のフォロワーお気持ち表明楽しみにしてる奴しかいないでしょ
0542デフォルトの名無しさん (アウアウウー Sa39-q/r2)
垢版 |
2022/07/19(火) 13:54:24.18ID:f5ehd13Ra
いや、十分じゃね?
Agcは全く収益産まないんだから年間240万円ドブに捨ててるようなもんだろう
0546デフォルトの名無しさん (アウアウウー Sa39-q/r2)
垢版 |
2022/07/19(火) 16:05:16.13ID:f5ehd13Ra
点数*10円くらいちゃうのかな
efで差つけろって話題のときそんな話が出たような
0547デフォルトの名無しさん (ワッチョイ 0d01-qysg)
垢版 |
2022/07/19(火) 18:55:50.22ID:S8bArn500
PスポーツとかPリーグとかできるんかね。
0549デフォルトの名無しさん (テテンテンテン MMeb-qRKy)
垢版 |
2022/07/23(土) 23:22:42.93ID:fbrwkkWxM
G解説を読んだ
状態の持ち方さえ決めてしまえば飛躍はないけど、この状態の持ち方を思い付いて実装してみようって気がなかなか起きなさそうだし、やっぱり難問だな
なまじGっていつももっと簡単に解ける印象だし
0556デフォルトの名無しさん (ワッチョイ 5101-R4TS)
垢版 |
2022/07/26(火) 17:08:10.61ID:IrL7txwd0
・フリーランスに立ちはだかる「常駐」の壁。慣例を打ち壊し、
“テレワーク”案件3割→8割へと成長を遂げた「クラウドテック」の軌跡
・リモートワーク求人専門サイト「プロリモート」がリニューアルオープン、
 業務委託契約の求職者と企業をマッチング 
・1/3以上が採用につながる高マッチング率、リモートワーク×エンジニア・デザイナー専門の
 人材紹介サービス「ReworkerAgent」正式リリース場所からも時間からも自由な働き方を実現!
・『ReWorks(リワークス)』リモートワーク特化型転職サイトとして 3月5日 リニューアル
・副業・兼業マッチングサービス「クラウドリンクス」登録者数2万人突破
 中小企業で進む副業人材の採用、96%が継続採用を希望
・フリーランスが活用できる「最大1,000〜3,000万円・補助率50%〜75%」の
『ものづくり・商業・サービス補助金』とは?概要や条件を解説
・茨城県日立市、県外からの「テレワーク移住者」に最大151万円の助成金
・長野市、市内に移転・事業所設置し、移住することで最大550万円の支援金を支給
0557デフォルトの名無しさん (ワッチョイ 5101-R4TS)
垢版 |
2022/07/26(火) 17:08:39.28ID:IrL7txwd0
フリーランス向けエージェント「クラウドテック」会員数8万人突破
〜働きやすい環境構築のため、単価向上・全年齢の活躍の場創出・
地方企業のDX推進の取り組みを強化します〜

フリーランスエンジニア専門の案件一括検索サイト「フリーランススタート」、
累計掲載案件数25万件突破!リモートワークの累計掲載案件数35,000件突破!

新規人材の80%がフルリモート希望! IT人材市況動向レポート2021年12月版を公開

人口移動報告 家賃高い、首都圏脱出 「コロナ禍、仕事フルリモート」

クラウドテック、地方企業向け『クラウドテックDX』を開始、
7万人を超えるDX人材が、地方の非IT企業のDX推進を支援

新潟県、移住してきたテレワーカー/フリーランスに最大50万円を支給

テレワークの一般化により、11月にはテレワーク可能案件83.7%へと増加。
2021年、フリーランスのトレンドは「移住&テレワーク」と予測
0560デフォルトの名無しさん (ワッチョイ fa10-NdPv)
垢版 |
2022/07/31(日) 22:51:55.95ID:CJUWmQJb0
E全然分からなかった
解説見たらへえって感じだけど、なんで急に赤色の頂点の次数の総和を考え出すの?
解けた人の考え方聞きたい
0561デフォルトの名無しさん (ワッチョイ 59a4-t8o8)
垢版 |
2022/07/31(日) 23:00:49.66ID:FStFDS540
模範解答的な思考過程は知らんけど、
ある頂点1つに着目してそこを塗ったときに、色が異なる辺が増えるかどうかを考えたら気づいたぞ
周囲の頂点が赤色だとしても青色だとしても同じやんってな
0562デフォルトの名無しさん (ワッチョイ fa10-NdPv)
垢版 |
2022/07/31(日) 23:15:59.14ID:CJUWmQJb0
んー、腑に落ちない
教えてくれてありがとう
0564デフォルトの名無しさん (ワッチョイ fa10-NdPv)
垢版 |
2022/07/31(日) 23:30:20.86ID:CJUWmQJb0
お絵描きして考えてはいたんだけど、何も見えてこんかった...
0567デフォルトの名無しさん (ワッチョイ 59a4-t8o8)
垢版 |
2022/08/01(月) 01:31:16.33ID:IUF0b1bQ0
>>565
ああ、解けてたからあまり気にしてなかったけど、解説のやつそういう意味だったか
やっと理解した

たしかに解説の流れだとなんでそれに気づくんねん、って感じするが、
まあ求める辺の数と次数にさえ着目できれば気付けるね
0568デフォルトの名無しさん (テテンテンテン MMee-uSmf)
垢版 |
2022/08/01(月) 17:18:40.65ID:GPsg5YsiM
いろんなことにいっちょ噛みして語りたい人という印象を受けたな
他の質問を見たら蟻本を知ってそうだし、全く知らずに言ってるわけでなさそう
ただプレイヤー目線ではなくて、競技経験自体はあまりなさそう
https://jp.quora.com/AtCoder%E3%81%A7%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E5%AD%A6%E7%BF%92%E3%82%92%E3%81%97%E3%81%9F%E3%81%93%E3%81%A8%E3%81%AF%E5%B0%B1%E6%B4%BB%E3%81%A7IT%E6%A5%AD%E7%95%8C%E4%BB%A5/answers/367992068?ch=10&oid=367992068&share=cfedb6e5&target_type=answer
ところで、同姓同名の東大の情報系教員がいるみたいだけど、これ本人?
内情erいる?
0570デフォルトの名無しさん (ワッチョイ 59a4-t8o8)
垢版 |
2022/08/01(月) 17:40:31.26ID:IUF0b1bQ0
   \   丶        i.    |       /      ./       /
    \   ヽ      i.    .|      /     /      /
      \   ヽ                        /
                 わ た し で す 
   \            _,,  ---一 ー- ,,,_
      、  _,,,, _,, -.'"           ` 、           -‐
ー     ミ三ミ三ミ三ミミ                ヽ_,
     -==三ミ彡三ミミ     ,,=-==     ==、 iミ=-、_
     _,,ンミミ三ミ三ミミ]  -彡-一 ー-、 r一 ーミ、|ミミ三ミ=-'      --
__   _, -==彡ミ彡ミミミ|  ン| ,=て)> (|ー| ,て)>、 ||三ミ彡==-'
_     ,彡彡三ミ三ミミレ'~ .|. '     |  ヽ   `  |ミ三彡三=-  = 二
     (_彡三ミ彡ミミミ'   ヽ、    ノ   \__ノiミ彡ミ三=ー
     ー-=二三ンーミミミ     `ー /(_r-、r-_)   .|彡ミ三=-、
     )(_ミ彡ミ| i' ヽヽミ       | : : : __ : :__: :i   .|彡ミ三=-、     --
     と彡ミ彡ミヽヽ<ヽミミ      |: ン=-ニ-ヽ、   .|彡ミ三==-
      彡ミ彡ミミヽ  ) `    、 .' <=ェェェェェン |    |彡ン=-=      --
-‐    -==彡三ミ `ーヽ : : : : : :i: :  `ー--一''  : : ノミ三==''
      '' てノこミ彡三ミ`i : : : : : :ヽ: : : .      .:, :/ミ三=-、
        '' 三ミ=三三ミ|ヾ、: : : : :ヽ: : : : : : : : :_ノ:./三=-'
         -=='' ̄ .        : ̄ ̄ ̄    彡 `

               /               ヽ          \
      /                     丶       \
     /   /    /      |    i,       丶      \
   /    /    /       |     i,       丶       \
0573デフォルトの名無しさん (アウアウウー Sa09-546A)
垢版 |
2022/08/01(月) 19:33:03.00ID:wZgy5UePa
アピールできるのギリギリ黄までってすごく真っ当では
水なんて4級やろ?
囲碁や将棋に学生時代打ち込んで4級になりました!
ってアピールされたらどう思うんよ
0576デフォルトの名無しさん (テテンテンテン MMee-uSmf)
垢版 |
2022/08/01(月) 23:20:01.30ID:GPsg5YsiM
本当にそれだけしかない人なら暖色上位あった方がいいのかもしれないけど、one of themとして使うんなら別に緑とか水でも十分だと思うけどね
大手企業でも別にそんな新卒はハイスペだらけじゃないよ
0578デフォルトの名無しさん (ワッチョイ 9b71-uMN9)
垢版 |
2022/08/07(日) 14:06:05.87ID:92VIw/Wa0
Eをmodとった値になんの意味があるのかwww
近似値で良いじゃん
0582デフォルトの名無しさん (アウアウウー Sa55-7XjG)
垢版 |
2022/08/09(火) 19:25:34.31ID:Uwp36N1Ga
社長がいなくても回るんならもう副社長が社長でいいやん
0587デフォルトの名無しさん (ワッチョイ c9bd-toPh)
垢版 |
2022/08/13(土) 23:09:04.86ID:1rThskKv0
自称ユーザー解説については、コンテスト中に書いて終了後即座に提出したか、testerが書いた(writerじゃないから非公式という認識?)みたいな感じじゃないか
0590デフォルトの名無しさん (ワッチョイ e5da-lLTM)
垢版 |
2022/08/14(日) 15:11:07.66ID:3gxKNbVN0
0012 仕様書無しさん 2022/07/02(土) 21:05:02.67
prog:プログラマー[重要削除]
https://ace.5ch.net/.../saku2ch/1032017835/

230 上奥 龍 (ワッチョイ d58e-sbT5 [182.171.118.130]) mistery0817@gmail.com 2022/07/01(金) 13:06:33.82 ID:9RE/ovUm0
対象区分:[個人・三種]優先削除あり
削除対象アドレス: https://medaka.5ch.n.../prog/1655625352/811
https://medaka.5ch.n.../prog/1655625352/813
https://medaka.5ch.n.../prog/1655625352/861
削除理由・詳細・その他: 811番のレス・813番のレスに対しては[個人名・住所・所属]の二類に属する情報が掲載されているため、削除申請を行います。
861番のレスに対しては[個人名・住所・所属]の三群に所属する情報であると考えていますが、
インターネット上のURLが掲載されている状況です。
そのURLには、個人名並びに私の昔の写真が掲載されております。
しかし、スレッドの議論の状況から誹謗中傷の個人特定が目的である情報であると考え、削除申請をさせて頂きます。

以上3点のレスが削除申請を行うものになります。よろしくお願いします。

231 Dele Ace ★ 2022/07/01(金) 16:49:02.69 ID:CAP_USER
>>230
見ました。
URLリンク先に問題がある場合はリンク先に削除を依頼して下さい

958 仕様書無しさん 2022/07/02(土) 19:03:13.41
>>894
ご尊顔
https://www.ds.shiga.../news-faculty/p7102/
0606デフォルトの名無しさん (アウアウウー Sa63-ngAI)
垢版 |
2022/08/25(木) 09:21:20.76ID:H6ZjYSuOa
山上徹也の話だったらしていいよ
0618デフォルトの名無しさん (ワッチョイ bf71-InTp)
垢版 |
2022/09/03(土) 22:43:13.85ID:+ovHgQRj0
2冠、難易度上がりすぎて長年維持してた緑脱落しそうw
0622デフォルトの名無しさん (ワッチョイ bf71-InTp)
垢版 |
2022/09/03(土) 23:47:53.39ID:+ovHgQRj0
(コスト,インデックス)の配列のヒープでやってたけど中に手を入れられない事に気づいて2分探索にして時間切れ・・・
0625デフォルトの名無しさん (ワッチョイ 0701-Jj1I)
垢版 |
2022/09/04(日) 00:20:53.96ID:YUzYugU50
ニブたんのイラストが欲しいところ。
0627デフォルトの名無しさん (ワッチョイ 87bd-6nWD)
垢版 |
2022/09/04(日) 13:03:27.94ID:nBwf9QtV0
最近昔よりARCが解けない気がするし、いよいよ俺も過学習erかぁ〜?って状態
頭が悪いのはどうしようもないからあきらめてるけど、CF div1過学習とかでARCはなんとかできる?
0629デフォルトの名無しさん (ワッチョイ 5f55-bBdM)
垢版 |
2022/09/04(日) 15:35:21.26ID:x0sSmgMe0
トポロジカルソートを使っています.
0630デフォルトの名無しさん (ワッチョイ 5f55-bBdM)
垢版 |
2022/09/04(日) 15:37:44.90ID:x0sSmgMe0
深さ優先探索でのグラフの点への後行順のリバースオーダーがトポロジカルオーダーになるので,
それを利用しています.
0631デフォルトの名無しさん (ワッチョイ 5f55-bBdM)
垢版 |
2022/09/04(日) 15:42:05.58ID:x0sSmgMe0
ところで,アルゴリズム専門の大学教授が参加したら強いと思いますか?
0632デフォルトの名無しさん (ワッチョイ 0701-Jj1I)
垢版 |
2022/09/04(日) 15:43:12.14ID:YUzYugU50
むしろ、東京アルゴリズム専門学校を設立すべきでは?
0633デフォルトの名無しさん (ワッチョイ 5f55-bBdM)
垢版 |
2022/09/04(日) 15:45:32.52ID:x0sSmgMe0
Erik Demaineとか強そうじゃないですか?
0634デフォルトの名無しさん (ワッチョイ bf2a-qLXA)
垢版 |
2022/09/04(日) 15:49:41.68ID:KvZxXp+G0
>>628
次数が0の頂点からdfsを始めないとqがトポロジカル順にならないかな
あと、PythonとかPyPyなら
import sys
sys.setrecursionlimit(10**5+10)
とかを書かないとREになるよ
0635デフォルトの名無しさん (ワッチョイ 5f55-bBdM)
垢版 |
2022/09/04(日) 15:53:52.62ID:x0sSmgMe0
>>634

ありがとうございました.
その再帰のリミット設定を追加したらパスしました.
プログラム自体は変更しなくても大丈夫でした.
0639デフォルトの名無しさん (ワッチョイ 5f55-bBdM)
垢版 |
2022/09/04(日) 17:36:16.96ID:x0sSmgMe0
>>637

確かに人によって全然違うでしょうね.
極端な場合,プログラミングをやったことがないという人さえいるみたいですし.
0640デフォルトの名無しさん (ワッチョイ 5f55-bBdM)
垢版 |
2022/09/04(日) 17:48:11.72ID:x0sSmgMe0
みなさん,アルゴリズムの本はどんな本を読んでいますか?

クヌース
CLRS
セジウィック&ウエイン
Kleinberg & Tardos

何かおすすめの本はありますか?
0642デフォルトの名無しさん (ワッチョイ 872c-6nWD)
垢版 |
2022/09/04(日) 22:31:48.58ID:9ocqxCfk0
超高速グラフ列挙アルゴリズム−〈フカシギの数え方〉が拓く,
組合せ問題への新アプローチ
ERATO 湊離散構造処理系プロジェクト・湊真一、2015

計算時間が何百億年も掛かるのが、数秒で解けた
「おねえさんの問題」で有名な、
湊真一の超高速グラフ列挙アルゴリズム ZDD

プログラミング・コンテスト・チャレンジブック、第2版、2012
3人の大学院生が、様々なコンテストの問題を集めたもの。g++ 用のC++

オライリーの「入門 データ構造とアルゴリズム」は、インド人の著者

他にはセジウィック、石畑清、川中真耶など
0645デフォルトの名無しさん (ワッチョイ 5f55-bBdM)
垢版 |
2022/09/05(月) 16:51:34.75ID:POytJmdv0
>>641

ありがとうございます.CLRSですか.第4版が出ましたね.

>>642

『超高速グラフ列挙アルゴリズム』ってトンデモ本ではないんですか?

>>644

その本って,高級な話題を扱っていそうですが,競技プログラミングに結びつきますかね?
0647デフォルトの名無しさん (テテンテンテン MM8f-cIHC)
垢版 |
2022/09/05(月) 18:54:43.43ID:bZ4vo4vxM
>>645
コルテ組合せ最適化の内容に関して言うと、LP、フロー、マトロイドはじめ、競プロサイトの中でも知識が要らない方と言われているAtCoderでもそれなりに見るような話も結構扱っているように見える
ただ、それらをコルテで勉強するのがいいのかはちょっと自分はよくわからない
0648デフォルトの名無しさん (ワッチョイ bf71-InTp)
垢版 |
2022/09/05(月) 21:57:07.54ID:o8y8QwPZ0
在庫管理系の面接受けたけど、競プロと関係なさすぎて。簡単な最適化くらい出せば良いのに。
0649デフォルトの名無しさん (アウアウウー Sa8b-ZRei)
垢版 |
2022/09/06(火) 19:20:46.62ID:t7+pgncea
業務はアルゴリズムとか関係ないからな
プログラマの仕事は基本的にデータベースの出し入れだけ
でも業務知識や設計はなかなかバカにできない難易度だな
0650デフォルトの名無しさん (ワッチョイ bf71-InTp)
垢版 |
2022/09/06(火) 21:25:40.57ID:Kf3p7rj70
いや、アルゴリズム、数理最適化使うんだけどatcoderパズルが的外れすぎて役に立たない。線形計画もラグランジュ法も出さないで何がアルゴリズム人材だと。
0652デフォルトの名無しさん (ワッチョイ bf71-InTp)
垢版 |
2022/09/06(火) 22:46:39.84ID:Kf3p7rj70
問題にもよるけど昔より難易度上がってるし一般的な業務だったら灰色上くらいで、アルゴリズムっぽいのでもせいぜい茶色くらいまでかと。数え上げとかmod,xorなんちゃらみたいなのがなければもっと上まで役に立つ可能性があるといっても良い気がする。精進は時間の無駄と考えて気楽に参加してる。
AHCのほうはかなり役に立つと思う。
0655デフォルトの名無しさん (ワッチョイ 87bd-6nWD)
垢版 |
2022/09/07(水) 00:40:38.30ID:P6TFpbuE0
普通にLP解いたりラグランジュ双対とったりする問題は頻出だと思うけど
同じ数理最適化でもニュートン法とかもっと機械学習っぽい連続最適化問題出せみたいな話は分かるが
0656デフォルトの名無しさん (ワッチョイ 87bd-6nWD)
垢版 |
2022/09/07(水) 00:48:11.56ID:P6TFpbuE0
ただその辺はABC-GとかExとかARC-C以降とかに放り込まれているから、数論や組合せ論系の問題が元から得意じゃないとそこで阻まれてたどり着きにくいというのはそう
0657デフォルトの名無しさん (ワッチョイ bf71-InTp)
垢版 |
2022/09/07(水) 01:27:40.63ID:KXyAg9cX0
え、脳死でソルバーに突っ込んで解けるのがG以降にあるの?
だとしても普通に最適化系の科目をで履修中の人が解ける3-400点程度に押さえてCDあたりで出すべきかと
0658デフォルトの名無しさん (ワッチョイ 87bd-6nWD)
垢版 |
2022/09/07(水) 02:44:08.46ID:P6TFpbuE0
>>657
いや、さすがにそんな脳死解法が想定解の問題はいくらABCでも後半じゃ出ない
https://atcoder.jp/contests/abc216/tasks/abc216_g
例えばこれは数列をうまく変換して条件言い換えるとLPが出てきて、その双対LPが最短経路問題になってるからダイクストラ法で準線形に落とせるって問題
ソルバーに投げず別のアルゴで解けるようにしないと通らないし、また、LPに帰着させる部分が大体非自明なのがAtCoderで出るLPの特徴
一方、本当に一目でLPだとわかり、脳死でソルバーに投げればいいタイプのLPをABC-Cとかに出せって話もわからなくはない
個人的にはつまらない問題だと思うけど教育的ではある
0659デフォルトの名無しさん (ワッチョイ 87bd-6nWD)
垢版 |
2022/09/07(水) 03:01:49.65ID:P6TFpbuE0
そもそもAtCoderのアルゴの方のコンテストだと確率的に正解になる解法はコンセプト上想定解にしにくいから、脳死LPが出てくるとしたらソルバーに投げるんじゃなくて普通に頂点全探索が間に合うような問題になるかな
二次元ですら実行可能領域求めるの結構大変だから、ABC-Cで出すとしたらかなりかなりわかりやすい凸多角形にする必要がありそう
0664デフォルトの名無しさん (ワッチョイ e733-Iguz)
垢版 |
2022/09/07(水) 16:13:49.50ID:jifeMzUR0
https://atcoder.jp/contests/abc087/tasks/arc090_a
にある
左上および右下のマスにもアメが置かれており、あなたはこれらのマスに置かれているアメも回収します。
ってどういう意味?
単純に通ったマスの飴だけとったらACになったんだけど、問題の意味が分からんかった
0666デフォルトの名無しさん (ワッチョイ e733-Iguz)
垢版 |
2022/09/07(水) 16:39:19.33ID:jifeMzUR0
そういうことかありがとう
0667デフォルトの名無しさん (ワッチョイ 87bd-6nWD)
垢版 |
2022/09/07(水) 18:24:50.65ID:P6TFpbuE0
>>664
確かに一瞬、意味が取れなくて(i,j)を通ったら(i-1,j-1) or (i+1,j+1)の飴も回収できてますよ、的な話かと思ってしまった
(1,1)と(2,N)の飴も回収しますとか書いた方が紛れが少なそう
0669デフォルトの名無しさん (ワッチョイ 5f55-CzlZ)
垢版 |
2022/09/07(水) 19:18:51.47ID:pyqwkznf0
競技プログラミングの問題には人間の作者がいるので,それほど独創的な問題を量産できるとは思えません.
とすると,ある程度の訓練を積んだ人間にとっては,同工異曲な問題群に見えるのではないか?

と考えたのですが,あっていますか?
0671デフォルトの名無しさん (ワッチョイ 5f55-CzlZ)
垢版 |
2022/09/07(水) 19:40:51.71ID:pyqwkznf0
数学オリンピックの問題はおそらく数学者が作っていると思いますが,AtCoderの問題は学者が作っているわけではないですよね?
だとすると,問題の独創性はかなり低いのではないかと推測しますが,あっていますか?
0672デフォルトの名無しさん (ワッチョイ 8763-rNOT)
垢版 |
2022/09/07(水) 20:11:10.05ID:lTpXDHBr0
さすがにAGCとかになると作問者もかなりハイレベルだし既出かどうかをチェックする体制などもあるのであまり関係ないと思いますが、作問者じゃないしわかりません
そんなに気になるなら高橋社長に聞いてみたらどうですか
TwitterでもYouTubeでも匿名で質問しても回答をくれますよ
0674デフォルトの名無しさん (ワッチョイ 87bd-6nWD)
垢版 |
2022/09/07(水) 20:22:49.29ID:P6TFpbuE0
別にそんなことはないよ
ABCは典型問題だらけだけど、AGCはかなり独創性の高い問題を出すことを志向している
そもそも数学者としての能力と競プロの独創的な問題を作る能力はそもそも微妙に違う、良くも悪くも
もちろんAGCすら世界10位以内とかのクラスから見たらパターン見えるのかもしれないけど、大体の人だと二十年頑張ってもパターン学習できないと思う
0679デフォルトの名無しさん (ワッチョイ 8763-rNOT)
垢版 |
2022/09/07(水) 20:57:18.48ID:lTpXDHBr0
AGCも問題にバラツキあるから、ハッキリとは言いづらいけど、
全年齢対象なのになかなか全完が出ないAGCのほうがやっぱ難しといえるんじゃない?

ちなみに今年の数オリは中国からの参加者は全員が満点を取ったらしい
簡単だったのかな
0680デフォルトの名無しさん (アウアウウー Sa8b-QAu0)
垢版 |
2022/09/07(水) 22:38:04.79ID:LY9bvG3na
赤コーダーともなれば数学者と変わらんだろ
0682デフォルトの名無しさん (ワッチョイ e733-Iguz)
垢版 |
2022/09/08(木) 00:50:08.86ID:A4rHdGWR0
chokudaiも以前に何かの放送で、新しい問題つくるのがほんと大変だって言ってたな
0697デフォルトの名無しさん (ワッチョイ 5f55-CzlZ)
垢版 |
2022/09/09(金) 14:25:44.31ID:kJ4avtf50
競技プログラミングをやっている人で強い人でも、アカデミックな匂いのしない人
が結構いるように思います。
0699デフォルトの名無しさん (ワッチョイ 87bd-HH83)
垢版 |
2022/09/09(金) 17:33:18.01ID:zBJv5lXS0
暖色向け本の話だけど、今のAtCoderで黄色より上に上がるのに別にそんなに知識って寄与しないイメージ(というか知識だけならみんなもう持ってる層での競争)で、こういうデ/アの知識を入れた方がいいとか、知らないデ/アの知識を手に入れるにはどうしたらいいのかみたいな話はあんま”本質”って感じがしないんだよな
0701デフォルトの名無しさん (ワッチョイ 5f55-CzlZ)
垢版 |
2022/09/09(金) 19:03:35.57ID:kJ4avtf50
何がすごいんですか?
0702デフォルトの名無しさん (ワッチョイ 87bd-HH83)
垢版 |
2022/09/09(金) 19:17:01.85ID:zBJv5lXS0
競技プログラミングは独創的な問題に価値を見出しているから、年々新しい問題がたくさん作られているんだけど、未だに12年前の本が中級者(ここでは水〜黄ぐらい?)向けの本としては定評があるから
0703デフォルトの名無しさん (ワッチョイ 5f2c-HH83)
垢版 |
2022/09/09(金) 19:22:06.29ID:n8dQNxep0
蟻本って、プログラミング・コンテスト・チャレンジブック、第2版、2012 の事か

色々なコンテストから、3人の東大大学院生がまとめた本でしょ。
ほとんど全てのアルゴリズムを網羅している

言語は、g++ 用のC++

読んだ感じ、すごい学生達だと思った。
商売はアイデア。これはニーズがあるから売れると思った
0705デフォルトの名無しさん (ワッチョイ 5f55-CzlZ)
垢版 |
2022/09/09(金) 20:00:57.21ID:kJ4avtf50
>>702
独創的な問題といっても,アルゴリズムとデータ構造の本に書いてある知識で解ける問題ですよね?

みなさんはアルゴリズムとデータ構造の本を読んで勉強しますか?
0706デフォルトの名無しさん (ワッチョイ 87bd-HH83)
垢版 |
2022/09/09(金) 20:05:14.26ID:zBJv5lXS0
ある一定レベル以上行くと要求知識と難易度ってそんな関係ないんだよね
小学生でも理解できる単純な貪欲アルゴリズムが解法の問題が永続赤黒木を要求する問題より難しいということがままある
0707デフォルトの名無しさん (ワッチョイ 8763-dy61)
垢版 |
2022/09/09(金) 20:06:03.79ID:pJ7ShlGc0
解けないよ
小学校の計算ドリルじゃあるまいし

AGC解いてみればわかると思うけど、知識は大前提で、それ以上に閃きみたいなのが必要
つまりアルゴリズム知識問題というよりは、どちらというとやたら頭を使うパズルやなぞなぞといったほうがいい
0708デフォルトの名無しさん (ワッチョイ 87bd-HH83)
垢版 |
2022/09/09(金) 20:11:55.82ID:zBJv5lXS0
AtCoderに関して言えば、正直、ABCの問題(Exまで)や典型90を解いて蟻本を読むだけでもほぼ知識的には網羅できていて、学術的なアルゴリズムとデータ構造の本を読む必要性があるかというとそこまででもない
ただ、アルゴリズムとデータ構造を題材としたゲームをやっているので周辺知識に興味がある人も多くいて、趣味で勉強している人は結構いる雰囲気
学術的じゃない人もいるけど、学術的なことが好きな人も他より多めだと思うので、そういう人と話してみたら面白いのではないかな
0709デフォルトの名無しさん (テテンテンテン MM8f-cIHC)
垢版 |
2022/09/09(金) 20:34:07.29ID:yIa0OFzGM
アルゴリズムとデータ構造の網羅性のある教科書の知識があれば知識面では十分問題が解ける水準にあると思う
ただそれには前提があって、発想力がないといくら知識があっても解けない(そしてここの要求水準が結構厳しめ)
って感じかね
0711デフォルトの名無しさん (ワッチョイ e733-Iguz)
垢版 |
2022/09/09(金) 20:48:11.75ID:0OeV3J7Z0
何十年考える時間与えられても解けない自信あるわ
0713デフォルトの名無しさん (ワッチョイ bfad-Xhwa)
垢版 |
2022/09/09(金) 20:53:37.03ID:Xak+SWAc0
好きな、覚えたてなコンピューター言語その他を使ってやるブラゲーっと思ってやってみた。
https://www.youtube.com/watch?v=Z9ki00Z5SWg&list=PLirT2ByBZWrNT1tlKZy2uAFRsaEc9KEEe&index=13

任天堂の“絶対に挫折させないプログラミングゲームUnreal Emgineみたいなノードだけど、Unreal Engineでいいんじゃないかと思った。
https://www.youtube.com/watch?v=Z9ki00Z5SWg&list=PLirT2ByBZWrNT1tlKZy2uAFRsaEc9KEEe&index=13
0714デフォルトの名無しさん (ワッチョイ 27a4-InTp)
垢版 |
2022/09/09(金) 21:42:10.67ID:eDV4BhqD0
>>705
試しに解かなくてもいいけど、このへんの問題を考えてみ
AGCの中では破格に簡単な部類の問題だよ
https://atcoder.jp/contests/agc056/tasks/agc056_a
https://atcoder.jp/contests/agc021/tasks/agc021_a
https://atcoder.jp/contests/agc053/tasks/agc053_a

アルゴリズムの知識なんて全くいらないし、アルゴリズムの参考書なんてほとんど役に立たないよ
0716デフォルトの名無しさん (ワッチョイ bf71-InTp)
垢版 |
2022/09/09(金) 21:51:15.46ID:jmAmnAZ30
というか、典型を嫌うのでアルゴリズム全然使わなくても水とか青になれちゃうじゃん
0720デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/10(土) 04:59:42.21ID:eGCheWpr0
>>718
単に説明が下手なだけだと思います。
完成度も低いと思います。
0722デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/10(土) 05:06:40.45ID:eGCheWpr0
海外の本で良い本はないんですか?
0724デフォルトの名無しさん (ワッチョイ a668-eUNu)
垢版 |
2022/09/10(土) 14:11:29.88ID:yhVOakDL0
Springerの"Guide to Competitive Programming"は読んだことある。
けんちょん本と同等程度のレベルって感じだけど典型テクニックへの言及はこっちのほうが多いかな
アルゴリズムの説明だけで実装が書いてないところが結構ある
0725642 (ワッチョイ ea2c-kBqH)
垢版 |
2022/09/10(土) 14:14:41.39ID:2MbFO6mH0
蟻本は簡単な説明だけ。
個別のアルゴリズムは検索して、理解するまで自分で図を描いて勉強しないと無理

だから、>>642
に書いたように、個別の著書で調べる

湊真一、セジウィック、石畑清、川中真耶、インド人とか

例えば赤黒木なら、どの本だったかな? みたいな
0726デフォルトの名無しさん (ワッチョイ 25bd-kBqH)
垢版 |
2022/09/10(土) 15:22:48.30ID:ES5OPAh40
>>724
ありがとう
聞いた感じ、英語圏の標準的な入門書って雰囲気だね
やっぱり気になるのは中国だからいくつか調べてみた

・算法竞赛入门到进阶
・算法竞赛入门经典
・算法竞赛宝典

調べた感じまず目についたのはこのあたり?算法竞赛で競技プログラミングらしい
いずれもペーパーブックしかないところが惜しい
俺は機械翻訳しないと中国語読めないので
入门は日本で出版されている平均的なものとあまり変わらなそうな予感がするけど、宝典とかいうのは気になるね
0737デフォルトの名無しさん (ワッチョイ 25bd-kBqH)
垢版 |
2022/09/10(土) 23:37:10.70ID:ES5OPAh40
Exの最後のパートの「区間集合が与えられて、その集合に属する任意の区間内に*が存在するように*を配置するとき、*の数を最小化せよ」って問題、定期的に出る典型だ
これもmincut maxflowの要領で双対とると蟻本でも有名な区間スケジューリング問題になって双対すごいってなった問題
なお今日はそこまで至れなかった模様
0738デフォルトの名無しさん (ワッチョイ de71-pqEy)
垢版 |
2022/09/10(土) 23:43:38.03ID:IxTwXPHP0
Dみたいなプログラミング的に普通っぽい問題の難易度が高いw
0743デフォルトの名無しさん (ワッチョイ 25bd-kBqH)
垢版 |
2022/09/11(日) 00:14:58.33ID:jAgyYoIY0
C、絶対位置を相対位置に変換して考えるのって初見でできたらかなり頭いいと思うんだけど茶diffなんだね
みんな頭いいな(もしくは典型で染みついている層が茶まで下りてきてるか)
0745デフォルトの名無しさん (ワッチョイ 25bd-kBqH)
垢版 |
2022/09/11(日) 00:49:02.92ID:jAgyYoIY0
上位者は本番中に問題を解ける思考モードへの入り方がうまいっぽい
chokudaiか誰だったか忘れたけど、本番じゃないとAGCの問題解くの難しいって言ってたな
かなりメンタルが影響するらしい
0747デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/11(日) 11:51:48.46ID:c+Ui/I6I0
>>737
Exというのはどの問題のことでしょうか?
0749デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/11(日) 12:33:26.32ID:c+Ui/I6I0
>>748
ありがとうございました。

『プログラミングコンテストチャレンジブック第2版』のp.325に、

「したがって、先ほどの長方形を左半分と右半分の一辺dの正方形に分けると、それぞれの正方形には、
点はたかだか3個しか含まれません。」

と書いてあるのですが、たかだか2個ではないですか?
3個になる例はありますか?
0750デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/11(日) 12:37:14.74ID:c+Ui/I6I0
3点となる例がわかりました。
でも4点の例がないことはどうやって証明するのでしょうか?
直感的には3点であろうと思いますが。
0753デフォルトの名無しさん (テテンテンテン MM3e-fcS6)
垢版 |
2022/09/11(日) 14:17:40.92ID:sY9L7CLNM
>>750
コンテスト中だと直感で済ませちゃうけど、ちゃんと証明書こうとするとめんどいやつだ

全ての点対の距離がd以上であるような4点が正方形領域内にあると仮定する。
この四点をA,B,C,Dとし、四角形ABCDを考える。
(1)全ての頂点の角度が180°未満のとき
角度が90°以上である頂点が存在、これをAとしても一般性を失わない。
ここで余弦定理より、BD^2 = AB^2 + AD^2 - 2 AB AD cos∠BAD >= AB^2 + AD^2 >= 2 d^2
よって、BD >= √2d
(2)ある頂点の角度が180°以上のとき
角度が180°以上である頂点をAとしても一般性を失わない。
ここで、∠BAC+∠DAC>=180°なので∠BACと∠DACのいずれかは90°以上。
∠BACを90°以上としても一般性を失わない。
(1)と同様の議論により、BC >= √2d

正方形領域内の点対距離は√2d未満(座標計算普通にやれば示せると思う)
(1),(2)のいずれの場合においても矛盾が生じる。
(証明終)
0755デフォルトの名無しさん (ワッチョイ 25bd-kBqH)
垢版 |
2022/09/11(日) 15:12:26.47ID:jAgyYoIY0
凸包の最遠点対という特徴量、いかにも重要そうだけどあまり競プロで使った覚えがない
ABC234Exなんかは最近点対問題の解法と似た発想かもしれない、さすがにABC234Exの方が難しいけど
0758デフォルトの名無しさん (ワッチョイ 7d01-J1Nd)
垢版 |
2022/09/11(日) 16:55:39.75ID:Nz+JHxy30
昨日のABC、Dの実装でバグらせる予感しかしなかったからEから解いて何とかギリギリ解けたけど難易度E>Fだったんだな
F典型って聞いたけど青くらいまで行けば典型に見えるんだろうかたしかに取り組みやすそうな問題ではあったけど
0759デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/11(日) 17:29:18.43ID:c+Ui/I6I0
>>753
証明ありがとうございました.
うまい証明ですね.
0760デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/11(日) 17:37:25.16ID:c+Ui/I6I0
>>751
今,解こうとしていますが,難しいですね.
素朴な方法だとΘ(N^2)ですね.
回転前の喜ぶ人の人数から,回転後の喜ぶ人の人数が簡単に計算できないかと考えているのですが,うまくいきません.
0761デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/11(日) 18:18:32.35ID:c+Ui/I6I0
>>751
幅3のパルス波が押し寄せてくるイメージを思いつきました.
なんとなく解けるような気がします.
0762デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/11(日) 18:57:12.47ID:c+Ui/I6I0
>>751

半日かかりましたが,Θ(N)のアルゴリズムを作ってパスしました.
これじゃ,コンテストでいい成績は残せませんね.
0765デフォルトの名無しさん (ワッチョイ 25bd-kBqH)
垢版 |
2022/09/11(日) 23:24:22.70ID:jAgyYoIY0
最終的にはわからない問題を考え続けるのが一番の練習法らしいから、解説を見ないで解く体力が長い目で見て実力に寄与する気がするし、ABC-Cを半日考えて解くのは上等
ただ、ABCだと知識ゲーの要素があるから、最初のうちは解説見た方がサクサクレートが上がる場合もあるし、悩みどころだ
0766デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/12(月) 07:10:41.31ID:rinzAyh80
「Closest pair of points」を求めるアルゴリズムについてですが,『プログラミングコンテストチャレンジブック第2版』の
説明だと説明が全く不足しています.

この本を褒める人がいますが,信じられません.
確かに他に少し高度なこの類の本がないというのは事実だと思いますが.

CLRSの計算幾何学の章に非常に詳しく解説が書いてありますので,そちらを読もうと思います.
0767デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/12(月) 07:12:15.09ID:rinzAyh80
『プログラミングコンテストチャレンジブック第2版』ですが,完全な解説ではなく,スケッチ程度の説明集だと
思います.

ネット上の解説などもそのようなものがほとんどだと思います.
0769デフォルトの名無しさん (テテンテンテン MM3e-fcS6)
垢版 |
2022/09/12(月) 11:21:41.15ID:WsTAO2GiM
4点の証明よりめんどい行間ある?って思ったけどマージソートの部分か
x座標で点集合を分けたあと、各ステップでx座標的に隣接する点集合を合わせることを繰り返すわけだが、そこでマージソートの要領でy座標をソートすることで、時間計算量を増やさずにy座標のソートができる
ある程度のレベルの学術書で単体で行間埋められる本の方が珍しいし、別に行間だらけだから良書じゃないなんてことはないと思うがな
0770デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/12(月) 17:30:34.33ID:rinzAyh80
>>769
確かに有益な本だとは思うのですが,もう少し解説が丁寧だといいなと思います.
完全に理解するために,ソースコードに頼ることが非常に多いので.

何かおすすめのAtCoderの問題はありますか?
難しすぎると解けないので,初心者でも解けるくらいで面白い問題が希望です.
0771デフォルトの名無しさん (テテンテンテン MM3e-fcS6)
垢版 |
2022/09/12(月) 18:09:25.90ID:E//33fQvM
>>770
このサイトはAtCoder Problemsといって、各問題のdifficultyという数値を見ることができる
https://kenkoooo.com/atcoder#/table/

difficultyとはなにかと言うと、半分ぐらいの確率でその問題を解けるであろう人のレートを推定したもの
ここでdifficultyの二分探索でもすれば自ずと丁度いいぐらいのところに行きつくと思う
基本的には自分のレートと同じか一色上ぐらいがやってて楽しい
初心者でプログラミング自体はできるんなら、最初はABC-C、ARC-Aぐらいの問題が丁度いいレベルと思う
面白さについて言えばAtCoderの問題は大体パズル的には面白いはず、ただそこも好みだな
高度な知識をたくさん使いたいんならCodeForcesの方が面白いかもしれない
0772デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/12(月) 18:15:28.92ID:rinzAyh80
>>771

詳しく丁寧にありがとうございました.

時間をかけて解いていきたいと思います.
0773デフォルトの名無しさん (テテンテンテン MM3e-fcS6)
垢版 |
2022/09/12(月) 18:20:46.33ID:E//33fQvM
蟻本が解説に関して親切設計な本ではないのは確か
今は蟻本よりもっと初学者向けの競プロ本がたくさんあるから、その中から選ぶのも手ではある
最近は鉄則本なんていうのも出て、それも蟻本に比べたら多分初学者向け
https://kato-hiro.github.io/AtCoderClans/books/

ただ厳密数学的な意味で丁寧な本ってあるんか?自分は蟻本以外読んだことないからよくわからん
0774デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/12(月) 18:38:46.03ID:rinzAyh80
>>773
リンクありがとうございました.
0777デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/14(水) 09:18:47.48ID:jsfAG/sd0
github.com/drken1215/book_algorithm_solution/blob/master/solutions/chap04.md

この4.6のコードですが、本当にO(N*W)ですか?

ボトムアップ型の動的計画法がO(N*W)というのは分かりますが、4.6は違うような気がします。
0778デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/14(水) 09:24:01.59ID:jsfAG/sd0
>>777
これは、部分和問題のコードのメモ化再帰のコードです。
0782デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/14(水) 13:32:56.43ID:jsfAG/sd0
文字列の編集距離について質問です。
S、Tを文字列とする。
dp[i][j]をSの最初のi文字からなる文字列とTの最初のj文字からなる文字列の間の編集距離とする。

■変更操作(Sのi文字目とTのj文字目とを対応させる):
S[i-1]==T[j-1]のとき:コストを増やさずに済みますので
chmin(dp[i][j], dp[i-1][j-1])
です。
S[i-1]!=T[j-1]のとき:変更操作が必要ですので
chmin(dp[i][j], dp[i-1][j-1]+1)
です。
■削除操作(Sのi文字目を削除):
Sのi文字目を削除する操作を行いますので
chmin(dp[i][j], dp[i-1][j]+1);
です。
挿入操作(Tのj文字目を削除):
Tのj文字目を削除する操作を行いますので
chmin(dp[i][j], dp[i][j-1]+1)
です。
0783デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/14(水) 13:34:32.86ID:jsfAG/sd0
「S[i-1]==T[j-1]のとき」と書いてありますが、これは
「S[i]==T[j]のとき」が正しいというわけではないですか?
0784デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/14(水) 13:34:44.34ID:jsfAG/sd0
>>779-781

ご回答ありがとうございます。
0785デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/14(水) 13:36:39.23ID:jsfAG/sd0
>>782
は『問題解決力を鍛える!アルゴリズムとデータ構造』という本に書いてある解説です。
0786デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/14(水) 13:38:36.60ID:jsfAG/sd0
配列は0始まりなのでこれで間違っていませんね。
0787デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/14(水) 13:44:17.21ID:jsfAG/sd0
>>782

S[i-1]==T[j-1]のとき:コストを増やさずに済みますので
chmin(dp[i][j], dp[i-1][j-1])
です。

これをSの最初のi文字からなる文字列を編集により、Tの最初のj文字からなる文字列に最小の手間で
変更するには、Sの最初のi-1文字からなる文字列を編集により、Tの最初のj-1文字からなる文字列に最小の手間で
変更すればいいということを言いたいのだと解釈しました。

Sのi番目の文字を変更したとしてもトータルの編集の手間が少なくなることはないというのは証明が必要ではないでしょうか?
0788デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/14(水) 13:46:31.88ID:jsfAG/sd0
>>782

の他のところについても同様の疑問があります。
0790デフォルトの名無しさん (ワッチョイ de2a-62hs)
垢版 |
2022/09/14(水) 15:24:09.35ID:9+y+r6nn0
適当なこと言うけど
Sのi番目の文字を変更したとしても、最終的にはSのi番目の文字をTのi番目の文字に合わせないといけないから、
Sのi-1番目までの操作に置き換えられるということじゃないかな

例えば、bookをdeskに合わせるなら、
bookのkを適当にaに変える→booa
でも最終的には最後の文字はkにしないといけない
booaの最後にkを挿入→booak
booakっていうのは、bookのbooの部分にaを挿入したものと考えられる
こういう感じで、結局Sのi-1番目までの操作と考えることができるっていうことだと思う
0791デフォルトの名無しさん (ワッチョイ 25bd-aQ9k)
垢版 |
2022/09/14(水) 15:30:11.95ID:5xlFzeB+0
S[i-1]==S[j-1]で、Sのi文字目かTのj文字目を変更したときに、dp[i][j]<dp[i-1][j-1]とするとdp[i-1][j-1]<dp[i-1][j-1]が導かれるようにできるよ
dp[i-1][j-1]未満の編集距離で揃えるにはSのi文字目かTのj文字目のどちらかを使わなきゃいけないことに注目する
0792デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/15(木) 09:32:52.27ID:3elqjdXs0
>>790-791
ありがとうございました。
まだ、よく分からないので、少し質問の仕方を変えてもう一度質問させてください。

以下がなぜなのかが分かりません。
いかにも成り立ちそうですが、証明ができません。

S = 'LOGISTIC'
T = 'ALGORITHM'

(1)
Sの最後の文字CをTの最後の文字Mで置き換える。
Sからその最後の文字を除いた文字列を、Tからその最後の文字を除いた文字列に
最小の手間で編集する。

(2)
Sの最後の文字Cを削除する。
Sからその最後の文字を除いた文字列を、Tに最小の手間で編集する。

(3)
Sの最後の文字Cの後ろに、Tの最後の文字Mを付け加える。
SをTからその最後の文字を除いた文字列に最小の手間で編集する。

(1)、(2)、(3)を実行するのに必要な手間のうち最小の手間が、文字列Sを文字列Tに
編集する最小の手間である。
0793デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/15(木) 09:35:19.04ID:3elqjdXs0
間違えました。以下のように訂正します。

S = 'LOGISTIC'
T = 'ALGORITHM'

(1)
Sの最後の文字CをTの最後の文字Mで置き換える。
Sからその最後の文字を除いた文字列を、Tからその最後の文字を除いた文字列に
最小の手間で編集する。

(2)
Sの最後の文字Cを削除する。
Sを、Tに最小の手間で編集する。

(3)
Sの最後の文字Cの後ろに、Tの最後の文字Mを付け加える。
SをTからその最後の文字を除いた文字列に最小の手間で編集する。

(1)、(2)、(3)を実行するのに必要な手間のうち最小の手間が、文字列Sを文字列Tに
編集する最小の手間である。
0794デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/15(木) 09:38:28.08ID:3elqjdXs0
また、間違えました。以下のように訂正します。

S = 'LOGISTIC'
T = 'ALGORITHM'

(1)
Sの最後の文字CをTの最後の文字Mで置き換える。
Sからその最後の文字Mを除いた文字列を、Tからその最後の文字Mを除いた文字列に
最小の手間で編集する。

(2)
Sの最後の文字Cを削除する。
Sを、Tに最小の手間で編集する。

(3)
Sの最後の文字Cの後ろに、Tの最後の文字Mを付け加える。
Sからその最後の文字Mを除いた文字列を、Tからその最後の文字Mを除いた文字列に最小の手間で編集する。

(1)、(2)、(3)を実行するのに必要な手間のうち最小の手間が、文字列Sを文字列Tに
編集する最小の手間である。
0795デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/15(木) 13:41:42.51ID:3elqjdXs0
SをTに最小の手間で変換するオペレーションが以下の画像の通りだとする。
オペレーションを実行する順序には関係なく、SはTに変換されることに注意する。

imgur.com/GSQfWoU.jpg

(1)Sの最後の文字の右にInsertオペレーションがある場合。

Sの最後の文字の後ろに、Tの最後の文字を付け加える。
Sからその最後の文字を除いた文字列を、Tからその最後の文字を除いた文字列に最小の手間で編集する。

これが(1)の場合に、SをTに変換する最小の編集方法になる。
0796デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/15(木) 13:41:55.18ID:3elqjdXs0
(2)Sの最後の文字の右にInsertオペレーションがない場合。

(2-1)Sの最後の文字に行うオペレーションがN(何もしない)の場合。

この場合、Sの最後の文字とTの最後の文字は等しい。
Sからその最後の文字を除いた文字列を、Tからその最後の文字を除いた文字列に最小の手間で編集する。

これが(2-1)の場合に、SをTに変換する最小の編集方法になる。

(2-2)Sの最後の文字に行うオペレーションがD(Delete)の場合。

この場合、Sの最後の文字を削除する。
Sを、Tに最小の手間で編集する。

これが(2-2)の場合に、SをTに変換する最小の編集方法になる。

(2-3)Sの最後の文字に行うオペレーションがS(Substitute)の場合。

この場合、Sの最後の文字をTの最後の文字に置き換える。
Sからその最後の文字を除いた文字列を、Tからその最後の文字を除いた文字列に
最小の手間で編集する。

これが(2-3)の場合に、SをTに変換する最小の編集方法になる。
0797デフォルトの名無しさん (ワッチョイ 6a55-V+uT)
垢版 |
2022/09/15(木) 13:43:21.05ID:3elqjdXs0
こう考えたのですが、これでいいでしょうか?
0798デフォルトの名無しさん (ワッチョイ 4ac0-20Zt)
垢版 |
2022/09/15(木) 14:20:18.89ID:2rpOawCB0
多分、dp[i]を、i番目まで揃えたときの最小手順数だって定義してると思う
その次のインデックスの文字を揃えるために出来ることがその3パターンしかなければ、そうなんじゃないかなぁ
dpを更新したときに、定義が崩れてしまわないか?を集中して考えてみると良いと思う
0800デフォルトの名無しさん (ワッチョイ 5701-nNgT)
垢版 |
2022/09/20(火) 09:38:15.86ID:l9naZzzk0
パイザってサイトに『エンジニア騎士とクエリの魔女』の『暗黒の地』って
競技プログラミング風味のものがあるんだよ。まあまあ面白くて
これで12位になったので、ソース公開するね。
https://paiza.io/projects/Me-9l8aRopclovpRhczITg
ソースを読んだ感想を書いてくれたりしてくれると嬉しいです。みんなもやってみよう
0804デフォルトの名無しさん (ワッチョイ 9fc0-W3aP)
垢版 |
2022/09/20(火) 14:51:16.41ID:Y9OiSWpN0
Lだけの話に限定するけど、
Lの効果をインデックス毎に保管しておいて、(入力例1なら[-1, -2, 2, 0, 1])
それのセグメント木を作れば区間最小値をlogNで取り出せるようになるからいけるんちゃうか?
0806デフォルトの名無しさん (ワッチョイ d7bd-bG2j)
垢版 |
2022/09/20(火) 17:00:13.31ID:gUImHuHP0
>>804
問題は、Rも同じようにインデックス毎に効果を保管するとして、区間内で和が最大になるLの効果とRの効果のペア(Lの効果のインデックスよりRの効果のインデックスの方が右になければならない)をO(1)とかO(logN)で取り出さなきゃいけないことだと思うけど、そこが難しくないか?

>>805
耳DPというと、左の区間外、Lの区間、元の値をそのまま使う区間、Rの区間、右の区間外みたいな感じの状態の持ち方?
0808デフォルトの名無しさん (ワッチョイ bf5c-qOFO)
垢版 |
2022/09/20(火) 18:28:08.02ID:yGxPr74E0
まずaについて、各項の隙間ごとにLはその左でRはその右にあるような置き換え方での和の最小値を求めておいて、区間が限られたらその区間にある隙間に対して区間minして端の分を補正したらいいんじゃないの
0812デフォルトの名無しさん (ワッチョイ 5701-DV3A)
垢版 |
2022/09/20(火) 20:08:23.68ID:3RVLul1m0
普通にx毎に最小になるyを取れるようにする方針だけど
それだと幅*Qぐらいだから多分無理なので改良として
セグツリーかなんかで[x,..)の領域に対して一発でy取れるようにすりゃいんじゃねって思った
ちなワイ茶色
0813デフォルトの名無しさん (ワッチョイ 9fc0-e54V)
垢版 |
2022/09/20(火) 21:29:32.52ID:Y9OiSWpN0
超思いつきだけどさ、
L<Rの場合、Lのテリトリーを譲ってまでRの幅を広げる必要はない気がするんだよな
だからLについては貪欲に最小拾っていいとかないかな?
0816デフォルトの名無しさん (ワッチョイ d7bd-ret5)
垢版 |
2022/09/20(火) 22:19:34.98ID:gUImHuHP0
耳DPの遷移を表すトロピカル行列が
L ∞ ∞
A_i A_i ∞
R R R
になってて、積についてモノイドになってるからセグ木に乗る
区間積求めてあとは(0,∞,∞)^tに作用させればおkってこと?
0823デフォルトの名無しさん (テテンテンテン MM8f-nNgT)
垢版 |
2022/09/21(水) 12:17:44.87ID:qEUpkz9TM
>>819
あ、opencasは私個人的な
ローカル環境での
動作確認、デバッグ用です
そういうのつけとけば
参加してくれる人いるかな
的な意図もあります
0824デフォルトの名無しさん (アウアウウー Sa5b-lIjq)
垢版 |
2022/09/21(水) 16:22:14.70ID:AliPmZ5ga
ふつうにLとの差分の累積和とって右から全探索でいいんじゃないのか?
0826デフォルトの名無しさん (アウアウウー Sa5b-lIjq)
垢版 |
2022/09/21(水) 20:13:31.40ID:k2jdRmOoa
Nだから普通に通るよ
0830デフォルトの名無しさん (ワッチョイ bfd7-lIjq)
垢版 |
2022/09/21(水) 22:35:20.54ID:JxZ0RmNU0
>>828
ごめん話題変わってた?

左からLとの差分の累積和とって、左からi番目までで1番値が大きいやつのインデックスメモっておくのがO(N)
右から見てってiより右側はRにして、iより左側でLにするべき境目はさっき求めたからiの全探索でO(N)でいける認識

説明やばいけど勘弁して
0831デフォルトの名無しさん (ワッチョイ d7bd-ret5)
垢版 |
2022/09/22(木) 00:37:51.08ID:7XNeWjKf0
ABC263Dの解法としてはそれでOK
リンクされたツイートではさらに、元々の数列のうち区間[l,r)の部分に限った数列について元々の問題を解く×Qって設定になっていた
その解き方だとO(NQ)でTLEするので、これがちょっと難しかった(もう解法は発表されたけど)
0833デフォルトの名無しさん (ワッチョイ d7bd-ret5)
垢版 |
2022/09/22(木) 03:17:37.64ID:FFFEjz5/0
4つ情報を持ってないと、モノイドにする(≒結合則を成り立たせる)上で情報が足りないからセグ木に乗らない
このモノイドが代数的な言葉で言えばトロピカル行列に対応している
ちなみにこのトロピカル行列は耳DPの遷移だから、そっちから考えても同等の解答に行き着く的な感じ
明日気が向いたらこの辺ちゃんと書く
何か言葉は仰々しいけど別にトロピカル代数の知識なくても、上書き区間左側確定 T/F 上書き区間右側確定 T/Fで値持って区間をくっつけること考えたらどういう演算をしたらいいかは発想できると思う
0835デフォルトの名無しさん (テテンテンテン MM8f-wptx)
垢版 |
2022/09/22(木) 11:18:12.70ID:c1NDWA0LM
半環上の正方行列が積が結合則満たすのって実正方行列での証明考えれば自明だけど、それが行列積だと分かってない状況だとかなり直観的に分かりづらいよな
そもそも行列積自体、初見で線形写像の幾何学的な話もなしだと結合則が成り立つと見抜くのが無理そうな意味不明な演算に見えるし
0836デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/24(土) 18:24:44.81ID:nZKOKQNY0
大槻の本に、比較によってソートするアルゴリズムの最悪計算量は、 Ω(n * log(n)) であると書いてあります。

最善の計算量が O(n * log(n)) よりも良いようなものって存在しますか?
0839デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/24(土) 18:38:34.03ID:nZKOKQNY0
例を挙げてください。
0842デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/24(土) 19:24:43.12ID:nZKOKQNY0
>>837-838,841

ありがとうございました。確かにバブルソートはそうですね。でもマージソートとか最善の計算量と最悪の計算量が同じ計算量のものが多いですね。
0844デフォルトの名無しさん (ワッチョイ 9e71-mIyF)
垢版 |
2022/09/24(土) 22:53:45.20ID:cuZGjTPy0
Aこの難易度でも良いけど、ビギナーコンテストなんだから9割くらいが解けるDくらいまでにすべき、10問は多すぎ
Dも昔は愚直にやって通るくらいの難易度だった気が
0846デフォルトの名無しさん (ワッチョイ b7bd-i8Eu)
垢版 |
2022/09/24(土) 23:04:41.84ID:Cc5Uw0Zt0
確かに直感的にはDはgreedyでもよさそうだけど、ナップサック法よろしく、整数が絡むと途端に直感greedyが壊れる
ABC-DからABC-Fぐらいの問題だとコンテスト中はgreedyがダメな理由を考えるより簡単に正当性を示せるDPを思いつくことを意識した方がいい
0849デフォルトの名無しさん (ワッチョイ 9e71-mIyF)
垢版 |
2022/09/25(日) 01:57:37.46ID:eKbCKhXa0
Dが水という事は、ビギナーコンテストだからC問題までの3問で良いじゃん
0850デフォルトの名無しさん (ワッチョイ b7bd-i8Eu)
垢版 |
2022/09/25(日) 02:18:02.40ID:qNDnNxHD0
8問ABCは言うなればCodeForces Div. 2 + Div. 3 + Div. 4みたいな状態だから、Div. 3単独開催やDiv. 4単独開催が欲しいって話は分からなくもない
4問時代のABCがまさにそんな感じだったけど
コドフォが最近Div. 4増やしてるし、AtCoderも現ABCの下の区分のコンテスト作っていいと思うけどね
0851デフォルトの名無しさん (ワッチョイ b7bd-i8Eu)
垢版 |
2022/09/25(日) 02:25:38.65ID:qNDnNxHD0
自分の感覚だと
CF Global = AC AGC
CF Div. 1 = AC ARC
CF Div. 2 = AC ABC-C〜Ex
CF Div. 3 = AC ABC-C〜F
CF Div. 4 = AC ABC-A〜D
ぐらいのイメージなんだけど、合ってる?
そんなコドフォ出てないから詳しくないけど、Div. 2以下の階級を全部ABCがカバーしている状態ではあるのは確かだと思っている
0852デフォルトの名無しさん (ササクッテロレ Sp47-Rupp)
垢版 |
2022/09/25(日) 09:32:03.84ID:HBsCeuHap
昨日のEってどういう思考過程をすれば二分探索が思いつけるんだ
言われたらそれはそうってなるけど
0857デフォルトの名無しさん (ササクッテロレ Sp47-Rupp)
垢版 |
2022/09/25(日) 13:15:51.54ID:JpevNCD6p
愚直にシミュレーションしようとしたらバグらせまくったから二分探索の発想が早い段階で思い浮かぶように出来たら便利だなって
0858デフォルトの名無しさん (ワッチョイ c67c-GtWH)
垢版 |
2022/09/25(日) 22:01:15.20ID:IPCnGxrw0
端数は後でなんとかすることにしてだいたい何周すればいいか知りたくなって、周回数を決め打ちすれば何個減るかはO(N)でわかるから二分探索すれば良さそうとなる
0860デフォルトの名無しさん (テテンテンテン MMde-UGkd)
垢版 |
2022/09/26(月) 09:01:27.51ID:cpj0q9yVM
本来二分探索の実装ってかなりバグらせやすい方だと思うんだが、めぐる式で教育が行き届いている?のか、最近はみんな脳死で書ける印象
O(NlogN)解は量や内容は大したことないがアドホックなのが効いてんのかな
0865デフォルトの名無しさん (ワッチョイ 8ba4-mIyF)
垢版 |
2022/09/26(月) 14:00:18.97ID:i/jndsoD0
ok、ngとかいいつつちゃんと定義域を渡さないといけないところらへんで、慣れてないひとは混乱するんだろうと思う
ok、ngではなくて、明確に定義域を指定するようなインタフェースに整えてあげると初学者には優しいでしょう

おれはいつも混乱しないように詳細を積めてから実装してるからok、ngなんて使わずhi、loで書いてるけど
0868デフォルトの名無しさん (ワッチョイ 9210-A/T8)
垢版 |
2022/09/26(月) 15:55:48.24ID:50Eh55hb0
自分は二分探索、毎回コピペしてる
値が小さい方から大きい方にかけて、条件式がTrue, True, ..., False, Falseになるのと
False, False, ..., True, Trueになる2パターン用意しといて毎回コピペしてる
0869デフォルトの名無しさん (ワッチョイ 9210-A/T8)
垢版 |
2022/09/26(月) 16:10:31.34ID:50Eh55hb0
ん、めぐる式二分探索って、上の2パターンを一般化しますよっていう話か...
3年半も競プロしてんのに初めて知ったよ...
0870デフォルトの名無しさん (ワッチョイ b7bd-ZdqV)
垢版 |
2022/09/26(月) 17:20:22.65ID:mM+PT8Od0
別にlo, hiやleft, rightの実装で全く困ってなければ知らなくてもいいと思う
位置と判定、境界を一緒に考えると頭がこんがらがる初心者にとって、めぐる式は判定関数とok,ngの初期値さえ与えておけば二分探索部分のコードは位置関係すら考えず貼るだけなので楽
0872デフォルトの名無しさん (ワッチョイ 8ba4-mIyF)
垢版 |
2022/09/27(火) 00:51:50.39ID:ZwmfNOl50
あー、そういえば、めぐる式で一番重要なノウハウは、[left, right)の半開区間にすると処理が簡単、ってことだと思うわ

閉区間にすると考えることもコードも増えてキツイと思うんだけど、外人のコードだとかなり見かける
こないだのABC1位のひとでもこれでやってるんだよな
if check(mid)
l = mid + 1
else
r = mid - 1
0875デフォルトの名無しさん (テテンテンテン MMde-UGkd)
垢版 |
2022/09/27(火) 10:17:28.55ID:RK9MOCkIM
そのあたりは情報処理能力やライブラリ化でごり押せるから、上級者でも筋の悪い実装方針でやってたりすることがあるイメージ
特に軽実装のAtCoderでは、まず算数パズルができるということが何よりも大事だから
0876デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/27(火) 15:17:24.67ID:j2LDQh400
DAG上の最短路問題について普通のアルゴリズムとデータ構造の本には載っていません。
これはトポロジカルソート+動的計画法によって、最短経路の求め方が自明だという考えからでしょうか?
0879デフォルトの名無しさん (ブーイモ MM32-QTvv)
垢版 |
2022/09/28(水) 13:02:21.64ID:F+G1dH1CM
ABC263のDやってるんだけど、
kyopro_friendsさんの解説に出てくる累積minってググっても出ないんだけど、
nok0さんの解説のf(k+1)=min(f(k)+A[k+1], L*(k+1))のこと?
累積和使って最小値求めると、全体でO(N^2)になっちゃいますよね
0881デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/28(水) 15:59:44.30ID:B1p+YPuG0
AtCoder Problemsが独自に算出したという「difficulty」ってどこで見れるんですか?
0882デフォルトの名無しさん (アウアウウー Sa43-q+3U)
垢版 |
2022/09/28(水) 16:24:44.67ID:cIcLbxtta
AtCoder Problemsで見れます
0883デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/28(水) 16:38:42.88ID:B1p+YPuG0
>>882
Show DifficultyをONにしても表示されません。
0884デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/28(水) 16:47:43.15ID:B1p+YPuG0
大槻のAtCoder入門を図書館から借りてきましたが、やさしすぎますね。
0886デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/28(水) 18:08:29.44ID:B1p+YPuG0
>>885
ありがとうございました。マウスのポインターを円の上に持っていったら表示されました。
0887デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/28(水) 21:41:22.84ID:B1p+YPuG0
大槻のアルゴリズムとデータ構造の本に、クラスカルのアルゴリズムの計算量が、
O(|E| * log(|V|)) であると書いてあります。

なぜ、 O(|E| * log(|E|)) と書かないのですか?
0889デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/30(金) 12:34:13.21ID:aXocYaHs0
大槻のAtCoder入門という本に、頂点の数 N、辺の数 Mのグラフの構造の入力の受け取る処理に
O(N + M) の計算量が必要だと書いてあります。

O(M) が正しいと思いますが、どうですか?
0890デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/30(金) 12:34:55.30ID:aXocYaHs0
>>888
ありがとうございました。
0893デフォルトの名無しさん (ワッチョイ b7bd-ZdqV)
垢版 |
2022/09/30(金) 14:19:09.50ID:LLOTX79E0
本当にグラフの構造情報を受け取るだけであればO(M)でいいけど、後続の処理で結果的にはO(N+M)かかることがほとんど
ただ、たとえばN=10^100, M<=10^5みたいなパターンの問題も考えうるから、O(N+M)よりはO(M)の方が正確かな、特に他に但し書きがないのであれば
かなり自明な話なので、そこのO(N+M)の記述で混乱して問題を解くのに支障が出る人はいない気がするけど
0895デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/30(金) 20:10:13.70ID:aXocYaHs0
>>891-894
ありがとうございました。

明日の午後9時からの「AtCoder Beginner Contest 271」に参加予定なのですが、
何問くらい解けるのが平均的なんですか?
100分しか時間がないのでおそらく2,3問しか解けないと思っています。
0896デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/30(金) 20:13:19.02ID:aXocYaHs0
大槻の『AtCoder入門』という本を図書館から借りてきて第5章の中級編の最後まで読み終わりました。
そこまでの問題であれば、時間がかかったものが多いですが、すべて独力で解けました。
0899デフォルトの名無しさん (ワッチョイ 5f01-JEMU)
垢版 |
2022/09/30(金) 22:00:39.59ID:vp8mMnx50
東大出身のNTTなら敬称は殿だろね。
本もたくさん出してるし。
0901デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/30(金) 22:17:34.52ID:aXocYaHs0
例えば、大槻の『AtCoder入門』という本の上級編の1問目の「abc115_d」の問題ですが、独力で解けました。
基本的なアイディアはすぐに浮かんだのですが、パスするのに1時間もかかってしまいました。
そして、練習を重ねてもこの時間を短くすることは難しいのではないかと思います。
0902デフォルトの名無しさん (ワッチョイ 9255-JEMU)
垢版 |
2022/09/30(金) 22:20:59.94ID:aXocYaHs0
あと一つ質問ですが、問題の解答(AC)を、計算時間の短い順にソートすると、上位の
解答の計算時間が異常に短いです。

ソースを見ても、アイディアは同じなのになぜあんなに速くできるのでしょうか?

計算時間のコンテストではないので、レーティング上は、あまり重要ではないと思いますが、
気になります。
0903デフォルトの名無しさん (ワッチョイ b7bd-qv7X)
垢版 |
2022/09/30(金) 22:53:54.54ID:LLOTX79E0
解ける問題数については、三問解ければまずOKで、あわよくば四問解くことを目標にするぐらいじゃないかな
初回参加だとC問題解けない人の方が多そうな気がするし四問解ければなかなかだと思うよ
ABCは毎週開催されるようなものだし、一回一回の結果を気にしない方がいい、特に最初は
レートには直近10回程度の結果が反映されるから、今回失敗しても続けてればすぐにその影響を消せる
あと、参加回数が少ないとレートがめちゃくちゃ低く算出される仕組みなので、パフォーマンスを自分の成績指標として見よう
0904デフォルトの名無しさん (ワッチョイ b7bd-qv7X)
垢版 |
2022/09/30(金) 23:07:02.91ID:LLOTX79E0
平均的な話をすると、どうなんだろう
AtCoderから競プロ始めた人だったら一から二完の間じゃないかな、そもそもプログラミング初心者も多いし
あと、上級者のコードが速いのは、再帰関数を非再帰にするとか、キャッシュ効率をよくするとか、入出力を高速化するとか、コンパイラのオプションを変えるとか、そういう細かい工夫の積み重ねだと思う
C++だったら別に意識しなくても問題ない気がするけど、Python使いだったら再帰を非再帰にするとか入出力高速化ぐらいはやっとくと、ABC-E問題以降楽そう
0906デフォルトの名無しさん (ワッチョイ 8ba4-mIyF)
垢版 |
2022/09/30(金) 23:17:37.45ID:Hduo0GQQ0
レートでいうと100で上位50%みたいな感じだった気がするし、平均的なひとだったら最初は2完で上出来かね
強い人だと初参加でも3完か4完らへんをやってパフォ1000超えてるのが珍しくないけど
0912デフォルトの名無しさん (テテンテンテン MM7f-poG4)
垢版 |
2022/10/01(土) 20:55:59.80ID:w1pBwNBnM
ヒューリスティックコンテスト向けのおすすめ本ってあります?
0913デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/01(土) 22:48:49.05ID:DVLayUHe0
A, B, Dしか解けませんでした。
Cはソートして、巻番号が小さい順に見ていって抜けている巻を、巻番号がもっとも大きな2巻を売って買う
ということを繰り返せば良さそうでしたが、実装が面倒だと思い飛ばしました。
0915デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/01(土) 22:50:52.66ID:DVLayUHe0
>>903-906,909-911
ありがとうございました。
0916デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/01(土) 22:52:49.49ID:DVLayUHe0
>>914
ありがとうございます。考えてみます。
0917デフォルトの名無しさん (アウアウウー Sa27-XVJY)
垢版 |
2022/10/01(土) 22:52:51.85ID:CG2rPef9a
Cはにぶたんが楽だったな
愚直にシミュレートしたら3wa,2wa,1wa,1wa…って感じになったぴえん
0919デフォルトの名無しさん (ワッチョイ 6fbd-atM5)
垢版 |
2022/10/01(土) 23:00:56.33ID:zvX3MF2G0
8月から競プロ始めて現在レート337の雑魚

Dは楽だったけどCでwa出してしもうた。。
明日のレギュラーも参加するか
0925デフォルトの名無しさん (アウアウウー Sa27-XVJY)
垢版 |
2022/10/01(土) 23:28:08.04ID:CG2rPef9a
パスの復元じゃなくDpの値にそのままパスぶっ込むのでもokにしたかったとか?
0929デフォルトの名無しさん (ワッチョイ c3bd-kE2G)
垢版 |
2022/10/01(土) 23:35:23.86ID:Ry8jupv50
てか2*10^5でO(N^2)が2secで通るんなら、3*10^5のO(N^2)も4secあれば通りそう
あとは初心者が筋の悪い入力受け取りをしていたときにそこのオーバーヘッドで落ちるのを予防するとかかな
0930デフォルトの名無しさん (アウアウウー Sa27-XVJY)
垢版 |
2022/10/01(土) 23:35:36.10ID:CG2rPef9a
あ、dじゃなくcか
0933デフォルトの名無しさん (ワッチョイ 6f71-0qRf)
垢版 |
2022/10/02(日) 01:34:13.68ID:FZycuJqr0
なんか文句いってたら数え上げとXORの頻度が減った気がする。このあたりほんとアルゴリズムと関係ないので燃やすべし。
0936デフォルトの名無しさん (ワッチョイ 6f71-0qRf)
垢版 |
2022/10/02(日) 01:55:00.10ID:FZycuJqr0
>>934
数年前はこの類が毎週出てて違和感しかなかった、統計学でも数理最適化でも観測範囲内で組合せ論は二項係数くらいしか役に立ってないハズ
0938デフォルトの名無しさん (ワッチョイ ff10-UJKs)
垢版 |
2022/10/02(日) 02:03:38.75ID:m2kqJsOp0
C、線形で解こうとしたんだけど、謎の1WAが出て困ってる
同じ1WAの人結構いたけど、みんな二分探索に切り替えてACしてる
https://ideone.com/yD7l3P
誰か教えて欲しい
0939デフォルトの名無しさん (ワッチョイ c3bd-kE2G)
垢版 |
2022/10/02(日) 02:06:44.15ID:cj6ZUnIP0
「競プロは自分にとって離散数学パズルだ」ってりんごさんが言ってるし、整数論とかやるのと同じような立ち位置じゃないかなあ
そもそも初等組合せ論の考え方は初等確率論の基本なんだから、役に立たないというのも違うと思うしね
今回はGも数え上げ問題だったわけだけど、DP遷移部分について俺は幾何分布の考え方をイメージしたね
0940デフォルトの名無しさん (ワッチョイ 6f71-0qRf)
垢版 |
2022/10/02(日) 02:10:22.92ID:FZycuJqr0
>>937
そう、別に個人的にはそんなに嫌いじゃないんだけど、好む層の魂の元が中学入試あたりで、自然数の各桁の和とか数学的に大した意味もないトピックがやたらドヤドヤしていたのがちょっと不快。プログラミング、アルゴリズム、情報科学というより、IQ高めの算数エリートの娯楽という感じ。
0941デフォルトの名無しさん (ワッチョイ c3bd-kE2G)
垢版 |
2022/10/02(日) 02:12:42.56ID:cj6ZUnIP0
>>938
貯めてるsellが足りないときに貪欲に大きい方の本を売ってるけど、そこで順当にいけば読めるはずだった本売ってるんじゃない
一冊残しておいた方がいい場合とそうじゃない場合がある
0942デフォルトの名無しさん (ワッチョイ c3bd-kE2G)
垢版 |
2022/10/02(日) 02:17:08.77ID:cj6ZUnIP0
>>940
魂の元が中学入試なのはまあそうって感じ
俺も算数パズルや離散数学よりも比較的連続最適化とかの方が好きっちゃ好きだから分からなくもない
まあでもCSでは離散数学は基礎教養だし、離散数学と中受算数は親和性高いよね
0943デフォルトの名無しさん (ワッチョイ ff10-UJKs)
垢版 |
2022/10/02(日) 02:24:07.54ID:m2kqJsOp0
>>941
ありがとう ACできた
シミュレーションしながらsellを貯めていくのはダメで、sellをシミュレーションの前に計算するようにしたら通った
0946デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/02(日) 12:40:51.35ID:c1nVdKJ60
米田の新しい本を買いました。
PASTの公式本とどちらを先に読むか迷っています。
0947デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/02(日) 12:43:27.85ID:c1nVdKJ60
大槻のAtCoder入門という本は買わなくて正解でした。
図書館で借りて読めば十分な内容です。
0948デフォルトの名無しさん (ワッチョイ ff10-UJKs)
垢版 |
2022/10/02(日) 14:48:02.40ID:m2kqJsOp0
>>944
確かに その方が実装綺麗にまとまるね
0957デフォルトの名無しさん (ワッチョイ ffbd-atM5)
垢版 |
2022/10/02(日) 22:36:17.43ID:RAAxIiX40
コンテスト中に呟いちゃいけないんだろうけど

1時間以上Aを考えてるがわからん
0958デフォルトの名無しさん (ワッチョイ c3bd-kE2G)
垢版 |
2022/10/02(日) 23:16:35.86ID:cj6ZUnIP0
匿名の書き込みでも普通にやめた方がいい
そのぐらいなら大丈夫だと思うけど、それを見てまだラインがわからない人が勘違いしてさらに際どいことを書き込んでしまう危険性が
0959デフォルトの名無しさん (ワッチョイ ffbd-atM5)
垢版 |
2022/10/02(日) 23:26:55.10ID:z5LMHK5C0
わかった。少なくともコンテスト終了後に呟くようにする


今日のAわからなかった。。
どうやっても10^10**5がmで割り切れるかを10^5回するし


ゾロ目数に規則性はあるっちゃあるけど、ないから
全くわからんかった
0967デフォルトの名無しさん (ワッチョイ 6f71-0qRf)
垢版 |
2022/10/03(月) 01:04:26.18ID:lndyBnH50
というか10^(10^5)なんて数を扱う事あるのかwww

https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1463346279
>1m3に10個程度の原子(ほとんど水素)なら10^79となります。多めに見積もっても10^80は妥当なところだと思います。宇宙の半径130億光年であっても1桁増える程度です。
0970デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/03(月) 03:00:23.71ID:kRWtLYQ60
atcoder.jp/contests/abc137/tasks/abc137_d

この問題の解答を作ったのですが、一部の入力例に対してしかパスしません。
どこにバグがあるか分かる人はいますか?

解答は以下です:
ideone.com/uZ1cUa
0971デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/03(月) 03:42:55.31ID:kRWtLYQ60
>>970
のバグが分かりました。

大槻の『AtCoder入門』ですが、結局、独力で解答を見ずにすべての問題を解けました。
0972デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/03(月) 03:45:23.53ID:kRWtLYQ60
>>949
ありがとうございました。
>>950
問題集ってPASTの問題集ですか?
米田の本はまだ見ていないのですが、売れ行きはいいですよね。
0973デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/03(月) 03:49:30.34ID:kRWtLYQ60
ideone.com/z97s8q

バグの修正を上のようにしました。

パスしなかった入力を見ることができれば、バグ修正もやりやすいでしょうが、
実際には見ることができません。

みなさんはどうやって、バグ修正していますか?
0974デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/03(月) 03:55:00.31ID:kRWtLYQ60
大槻の『AtCoder入門』ですが、普通の「アルゴリズムとデータ構造」の本に書いてあるようなことは
ほとんど書いていない変な本ですね。

競技プログラミングで「アルゴリズムとデータ構造」の知識をほとんど必要としない問題用の本ですね。
0976デフォルトの名無しさん (ラクッペペ MM7f-osoq)
垢版 |
2022/10/03(月) 05:17:41.51ID:hBuxdlaYM
その本はプログラミング経験もアルゴリズムの学習経験も皆無に近い人(中高生も含め)がatcoderのC問題あたりを解けるようにして、本当に簡単なアルゴリズムを触れるようにするぐらいのレベルのもの
not for youだな
というかそもそも大多数の競プロ本はアルゴリズムとデータ構造の教科書を志向していないから
0977デフォルトの名無しさん (ラクッペペ MM7f-osoq)
垢版 |
2022/10/03(月) 05:24:09.62ID:hBuxdlaYM
デバッグは自分でテストケース作ってやるのがいい
実は過去コンテストのテストケースを見に行くことはできるが、競プロコンテスト本番のデバッグ力を鍛えることができないからオススメしない
0978デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/03(月) 08:54:28.68ID:kRWtLYQ60
>>976-977
ありがとうございます。

過去問の入力データを見に行けるんですね。
解答を見るのと、解答を見ずに入力データは見るというのだったら、後者のほうが勉強になると思います。
独力で正解を作るのがベストだとは思いますが。
0979デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/03(月) 08:55:09.57ID:kRWtLYQ60
テストケースを作るのは非常に大変だと思います。
0980デフォルトの名無しさん (ラクッペペ MM7f-osoq)
垢版 |
2022/10/03(月) 10:07:34.75ID:hBuxdlaYM
乱数で入力を発生させ、計算量的に悪いけど簡単に思いつけて実装できる部分解法で正しい出力を出せばいいわけで、そんなハードル高いものじゃないぞ
上位層はコンテスト中にちゃちゃっとやってると思う
0982デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/03(月) 19:13:46.77ID:kRWtLYQ60
>>980-981
ありがとうございました。

>>980
「計算量的に悪いけど簡単に思いつけて実装できる部分解法」
これは思いつきませんでした。ありがとうございました。

『競技プログラミングの鉄則』を今読んでいて第2章の累積和の途中まで読み終わりました。
確かにレベル的にはそれほど高くない本だとは思いますが、勉強になったことがありました。
・問題で添字が1始まりの問題ではプログラムでもそれに合わせて1始まりにすると分かりやすくなる。
・使用メモリ量については寛大なので無駄遣いしても全く構わない。
・1つのfor文でまとめて処理できる場合でも、複数のfor文に分ける(それでもオーダーは変わらない)と、分かりやすくなることがある。

for (int i = 0; i < N; ++i) {
□□cin >> A >> B;
□□ここに処理を書く。
}

とできる場合でも、

for (int i = 0; i < N; ++i) {
□□cin >> A[i] >> B[i];
}

とまずすべての入力を受け取ってしまってから、後で処理を書いても良い。
0987デフォルトの名無しさん (ワッチョイ 8301-kE2G)
垢版 |
2022/10/04(火) 01:28:16.20ID:6c7uePz80
https://atcoder.jp/contests/abc271/tasks/abc271_b
https://atcoder.jp/contests/abc269/tasks/abc269_b
こういうの問題文読んだだけじゃ何のことか分からなくて、入出力例を見てやっと「あーそういうことかー」となるんですけど、あんまり向いてないのかな?
皆さんは問題文だけで何すればいいのか分かるんですか?
0988デフォルトの名無しさん (アウアウウー Sa27-XVJY)
垢版 |
2022/10/04(火) 01:43:10.78ID:s5OlCB28a
入出力例見て推測する方針でだいたい正しいと思う
0992デフォルトの名無しさん (ワッチョイ e301-1kFI)
垢版 |
2022/10/04(火) 08:28:01.29ID:wdMm995x0
それはそうと直近のこどふぉの問題文全体的にわかりにくくなかった?
ABも誤読しそうな内容だしCですら最初は頭が壊れそうだったのにDに至ってはsetとかいうゲームを遊んだことがなかったせいでルールの理解までにだいぶ時間がかかったわ
0995デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/05(水) 05:29:59.65ID:hHqeDYjf0
>>986
ありがとうございます。
本が好きなのでつい本を読もうと考えてしまいます。
0996デフォルトの名無しさん (ワッチョイ ff55-vqPj)
垢版 |
2022/10/05(水) 13:26:30.13ID:hHqeDYjf0
競技プログラミングの問題の設定ですが、わかりやすさを狙ってだと思うのですが、スヌケ君がどうとか
余計な(?)設定が多いと思います。

純粋に数学的に問題を述べてくれたほうが分かりやすいように思います。
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 433日 19時間 59分 57秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

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