VJ 172735 A - Can you find it? - 二分查找
二分查找。
刚上手没有听学长讲课之前想用之前做过的排序+蛮力寻解。上次比赛水过去了。
听完后改成了二分。
然后TLE了...
中间改着改着wa了...
稍微动了动鼠标决定舍弃vector(显然很费时间;以及调换循环的对象和二分的对象(把大的二分快啊妈耶
一怒之下决定重写。
发现可以用upper_bound和lower_bound代替自己写二分。
然后想起来之前预热训练一道题也看到别人用的upper_bound和lower_bound ...(https://vjudge.net/contest/170770#problem/C)
upper_bound和lower_bound还自带计数 ...
不得不说是精妙优雅的做法。
把前两个数组排列组合O(L*N),后面的循环和二分要O(M*log(L*N))
VJ题目:
Github:
By Donny
Last modified: 2017-07-25