22.3.18

1,数的范围(二分)2,数的三次方根(二分)3,子矩阵的和(公式)4,机器人跳跃问题(递推)5,四平方和(典型优化思想)

1,数的范围
本题就是跟一个升序排列的数组,eg:122233334 然后有查询,查询并输出某个数第一次出现的位置和最后一次出现的位置,位置从0开始;
我想的是用映射来更新位置下标,所以需要两个map hs1和hs2,hs1存储第一次出现的位置,hs2存储第一次后出现的位置并不断更新,所以最终存储的就是最后一次的位置;
需要注意的是:hs1最早只能存储1这个位置,不能存储0,所以如果询问第一个数的位置,就会出错,只需在输出循环里加个特判即可
时间复杂度O(n+n)
#include
#define rep1(i,a,n) for(int i=a;ia;i--)
#define per2(i,n,a) for(i

22.3.18最先出现在Python成神之路

版权声明:
作者:ht
链接:https://www.techfm.club/p/25347.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>