- masashinakata
- 919
- 0
- 0
- 0
(nは自然数)
@n_vip
A,B,Cがdistinctである必要があるかですが、同じだったら同じやつになるので質問するよりもクエリ投げる関数内で場合分けしたほうがお得(validだったとしてもクエリ回数が節約できる)
2018-01-11 02:11:08
競技プログラミング
@LatteMalta
E:次を繰り返す 1.サイズN/2のグループ2つに分割する(ランダムに) 2.それぞれについてクエリを投げる 3. 50%くらいの確立でspyAとspyBを分離できる。分離できたかどうかは、簡単にわかる。分離出来ていたら、Aonlyのグループの人全員にフラグA、Bonlyのグループの人全員にフラグBを立てる
2018-01-11 02:12:32
競技プログラミング
@LatteMalta
これをひたすらやると、spy以外の人は、十分な確率でフラグA,Bが両方立っている。逆に、片方のフラグしかたっていない人がspy
2018-01-11 02:13:22
(nは自然数)
@n_vip
iビット目が立っているかで2つに分けると、15*2回のクエリでA xor Bが求まります。A xor B == U xor V となるような各(U,V)について、両方含める/片方だけ含めるという場合をこれもやはりiビット目で分けて全部試します。
2018-01-11 02:16:49
sigma
@sigma425
@uwitenpen そういう意味ではなくて、ジャッジが(spyA,spyB)を出来るだけ最悪に決めようとadapt した時にどのくらい分離を遅く出来るかが気になりました(ので2進数でkビット目が経ってるか でやりました)
2018-01-11 02:20:02
satanic@研究💪
@satanic0258
Congratulations! Your rating has increased by 24 points 😄. Keep it up!
2018-01-11 02:20:07