ABC308 C問題の自分用解説です。
解説パッと読んだだけではわからなかったところを忘れないよう書いておきます。
問題
https://atcoder.jp/contests/abc308/tasks/abc308_c
解答例(コピペ)
大事そうなとこ解説
line 14:配列pを0から始まる整数(0,1,2,3…)で初期化してます。
pは配列abの要素のインデックスを保持するために使用されています。
line 15:ここからが僕には解読が大変でした。
auto:変数の型を推測してくれる とりあえずautoって書いておけば便利 ってことだと思います
[&]: この時点で見える変数をキャプチャしてくれる
[ai, aj] = ab[i]; : pair型の要素ab[i]を、aiとajに分けてくれている
abのインデックスの配列p(0,1,2,3,4,5,..n-1)をつくり、
ab[i]とab[j]で、ai*bj とaj*bi の大小でソートしている
ということですね。