摘要:
传送门 解题思路 先读懂题目: 有一个等差数列(未排序),共有n个数字,需要你猜出公差和最小的数字。 你共有60次询问机会,每一次有两种选择: ?i,返回ai的值 > i,返回是否存在一个数严格大于i 最后给出答案。 思路? 首先用二分查找得到最大值,使用最多三十次左右询问次数(a<=10^9)。 阅读全文
posted @ 2021-02-20 21:00
尹昱钦
阅读(94)
评论(0)
推荐(0)
摘要:
传送门 解题思路 看到题的第一眼,直觉告诉我要把所有的数乘在最大的数身上,但举了一个反例: 2 1 2 2 3 这样乘在2身上明显答案更优。 所以并不能确定应该乘在谁的身上,但是可以保证一定是把所有数都乘在一个数身上。 那么怎么优化O(n^2)的时间复杂度呢? 我们可以预处理一个数组存所有数字二进制 阅读全文
posted @ 2021-02-20 10:45
尹昱钦
阅读(116)
评论(0)
推荐(0)
摘要:
传送门 解题思路 开21棵线段树,把数字拆成二进制存,然后对每一位进行操作。 注意+-*/和&^|等不能混用,都各自是闭环,两者毫无规律可言! 所以就开21棵线段树。 AC代码 1 #include<iostream> 2 #include<algorithm> 3 #include<cmath> 阅读全文
posted @ 2021-02-20 09:55
尹昱钦
阅读(153)
评论(0)
推荐(0)

浙公网安备 33010602011771号