随笔分类 -  新奇代码

树状数组求后缀和
摘要:代码中的下标从0开始,原理是一样的 int f[N]; void upd(int x, int val){ for (int i = x; i >= 0; i = (i & (i + 1)) - 1) f[i] += val; } int get(int x){ int res = 0; for ( 阅读全文

posted @ 2020-01-18 23:18 欣崽 阅读(524) 评论(0) 推荐(0)

单调栈
摘要:基于递推,写起来更快 for(int i=1;i<=n;i++) scanf("%I64d",&a[i]),l[i]=r[i]=i; a[0]=0; for(int i=2;i<=n;i++){ int now=i; while(now>1&&a[i]<=a[now-1]) now=l[now-1] 阅读全文

posted @ 2020-01-18 23:16 欣崽 阅读(168) 评论(0) 推荐(0)

导航