周任务扫描那题,单调栈的原理可以用优先队列,priority_queue默认将元素从大到小排,当队头元素下标小于等于i-k代表要出范围了就q.pop()弹出去,每次输出q.pop()队列里的最大值,当一个数组总要求更新范围的最大值时用这个很方便pop,top
周任务统计子矩阵那题,直接枚举暴力所有子矩阵的和过不完全,要压缩范围,遍历第i到第j列,设置l,r作为行的上下边界,res大于要求的k后,缩小范围l++,例如双指针一样,可以压缩时间,res+=a[r][j]-a[r][i-1]若res>k,则res-=a[l][j]-a[l][i-1],l++,每一次循环r++,满足res<=k&&l<=r时就cnt+=r-l+1
高精度加法中,错位相乘a[i+j-1]=a[i]*a[j],判断a[i]>9时需要进位,a[i+1]+=a[i]/10,a[i]=a[i]%10,还有使首位不能是0
len=lena+lenb;//最大长度
while(c[len]==0&&len>1) len--;//首数不能是0,删减后得到答案长度
输入数字时倒着数,输出时也倒着