交互题经典思路:二分
一道经典的题目便是猜数字。
Codeforces 1011D - Rocket
不过,这里面的人有可能撒谎,即大于有可能说成小于,小于有可能说成大于。
好在,它们说真假话为n个一个周期。
即第 i i i次说假话当且仅当 i m o d n i\ mod\ n i mod n时说假话。
真话同理。
猜的数在[1,1e9]内。 n ⩽ 30 n\leqslant 30 n⩽30,需要60次内猜出来。
我们可以先采取n次每次问1,得出真谎话周期。
后面二分即可。
codeforces 862D和codeforces 714D均是这个经典思路的应用。
在[IOI 2018]highway中,二分的伟大神力被体现地淋漓尽致。
题意:
有个n个点,m条边的无向图。 n ⩽ 90000 n\leqslant 90000 n⩽90000 m ⩽ 130000 m\leqslant 130000