首页 > 其他分享 >2.3 闲话 & solution - 『如蝶般地舞蹈哪会恐高』

2.3 闲话 & solution - 『如蝶般地舞蹈哪会恐高』

时间:2024-02-03 21:11:17浏览次数:35  
标签:Butterfly qr text 恐高 solution 如蝶 top sim

今天挺抽象的,上午一切正常,下午....

先是因为明天\(1\)号楼锁宿舍楼断电断水所以搬宿舍到\(9\)号楼

喵喵: 去二楼,没电就去三楼

然后去了二楼,没电没水啥也没有

去三楼,没电没水啥也没有

去四楼,有点有水其他奥赛

去五楼才找到的合适位置,在\(9518\),快来找我玩?但是有宿管还是算了,也可能不是宿管

然后晚上去吃饭,因为去搬宿舍所以提前去的食堂,买完饭其他不知道高几的奥赛过来了,人数众多,感觉排队\(10min\)起步

似乎 \(\text{HZOI}2023\) 是倒数\(rk1\)到的,哈哈,估计明天我也倒数\(rk1\)了

晚上有\(\text{ABC}\),我要上分我要上分我要上分

今天的头图

图片来自百度热搜

image

image


看着镜中的娥眉 翩若惊鸿只是种词汇
身体里有什么在攻擂 说带我 偷溜出洛水
少女的奇幻派对 要自己才试验出哲学

solution - 『主席树』

E. 『HNOI2017/AHOI2017』影魔

  • 简要题意

    有一个长度为 \(n\) 的序列和两个值 \(p_1\) 和 \(p_2\),序列中每个数都有一个值\(k_i\)

    对于\(i,j\),当不存在\(k_s\)使\(k_s\)大于\(k_i\)或\(k_j\)时让\(ans+p_1\)

    让\(c\)为\(\{i+1 \sim j-1\}\)的最大值,若 \(k_i<c<k_j\) 或 \(k_j<c<k_i\) 时让\(ans+p_2\)

    有\(m\)次询问,每次询问一个区间\(\{l \sim r\}\)的\(ans\)值

  • 思路

    维护一个单调栈,求出每个\(a[i]\)对应左侧第一个它大\(j_1\)的和右侧第一个比它大的\(j_2\)

    首先可以发现对于\(\{i\sim i+1\}\)一定存在\(p_1\)的贡献 \((\)显然\()\)

    然后发现\(\{j_1+1 \sim i-1,j_2-1\sim i+1\}\)中都一定能做出\(p_2\)的贡献

    我们只要用总贡献减去不包含的贡献就行

  • 代码

    就放个 main 函数里的吧,其他就线段树板子

    FastI>>n>>m>>p1>>p2;
    for(int i=1;i<=n;i++) 
        FastI>>a[i];
    sta[top]=0; 
    for(int i=1;i<=n;i++){
        while(top>0&&a[sta[top]]<a[i])top--;
        pl[i]=sta[top],sta[++top]=i;
    }  
    top=0;
    sta[top]=n+1;
    for(int i=n;i>=1;i--){
        while(top>0&&a[sta[top]]<a[i])top--;
        pr[i]=sta[top],sta[++top]=i;
    }
    for(int i=1;i<=n;i++){
        tot[1][pr[i]].push_back(i);
        tot[2][pl[i]].push_back(i);
    }
    int l,r;
    for(int i=1;i<=m;i++){
        FastI>>ql[i]>>qr[i];
        sum2[i]+=(qr[i]-ql[i])*p1;
        tot[3][ql[i]-1].push_back(i);
        tot[4][qr[i]].push_back(i);
    }  
    for(int i=1;i<=n;i++) {
        ans=0;
        for(int j=0;j<tot[1][i].size();j++){
            add(1,0,n,pl[tot[1][i][j]],pl[tot[1][i][j]],p1);
            add(1,0,n,pl[tot[1][i][j]]+1,tot[1][i][j]-1,p2);
        }
        for(int j=0;j<tot[2][i].size();j++){
            add(1,0,n,tot[2][i][j]+1,pr[tot[2][i][j]]-1,p2);
        }
        for(int j=0;j<tot[3][i].size();j++){
            ans=0;
            sum1[tot[3][i][j]]=query(1,0,n,ql[tot[3][i][j]],qr[tot[3][i][j]]);
        }
        for(int j=0;j<tot[4][i].size();j++){
            ans=0;
            sum2[tot[4][i][j]]+=query(1,0,n,ql[tot[4][i][j]],qr[tot[4][i][j]]);
        }
    }
    for(int i=1;i<=m;i++) 
        FastO<<sum2[i]-sum1[i]<<endl;
    

如果答案没差别 没差别 有什么趣味
我是谁 我会慢慢发掘
$\text{I'll do it my own way}$

  • 难存的情缘

树链剖分板子裸题,直接上边权转点权即可

代码不放了


欢迎 来我的频道 听我的宣告
新辞赋的概貌 已初见棱角
迈轻快的步调 见招拆招

晚上打ABC,4题遗憾离场(其实还没打完)


$\text{Butterfly Butterfly Butterfly}$
别怕 来我的视角 听我的速报
烦恼宛如鸿毛 全都不重要
如蝶般地舞蹈 哪会恐高
$\text{Butterfly Butterfly Butterfly}$

标签:Butterfly,qr,text,恐高,solution,如蝶,top,sim
From: https://www.cnblogs.com/Vsinger-LuoTianYi/p/18004306

相关文章

  • 2.2 闲话 & solution - 『听,万物复苏的声音』
    一个好的闲话需要一张头图当然我还有一张solution-2024初三年前集训测试2\(189/400\),\(rk4\),还是太菜了,而且没打出来T3T4的暴力垫底了赛时似一捧细泉的奔逃跃过石缝岩脚降落到我怀抱待天地再静默一秒这蓬勃的心跳渴盼你能听到T1『上海』here和here天依......
  • Solution - Little Elephant and LCM & 之前学组合的一点疯话
    \(n\)个元素分成\(m\)份,每份不能为空,在\(n-1\)个空中插入\(m-1\)个板子,方案数\(C_{n-1}^{m-1}\)。为空则加上\(m\)个元素来垫着,就转化为上一个,然后就是\(C_{m-n+1}^{m-1}\)。所以为什么我之前不会插板?我是傻逼吗?然后突然发现,之前一直以为Gameswit......
  • Collision Resolution -Game Physics Engine Development总结
    ThevelocityofapointThevelocityofapointonanobjectdependsonbothitslinearandangularvelocity:\[\dot{q}=\dot{\theta}\times(q-p)+\dot{p}\qquad\qquad[1.0]\]where\(\dot{q}\)isthevelocityofthepoint,\(p\)ist......
  • Solution Set - 训练计划 链表
    咕掉了两道不可做题(指黑色)。梦幻布丁放在链表的题单里,和链表有什么关系呢???因为都是在对颜色整体进行操作,我们可以根据颜色拉出来对应的链表。那么每次合并就相当于把一个链表接到另一个链表上去,暴力修改,那么是\(O(n)\)的,但是要怎么维护答案呢?首先可以处理出不做任何操作时的......
  • Solution - Median Sum
    其它题不是很写得动了跑来写一下这个题,还是挺有趣的。给定由\(n\)个正整数\(a_1,a_2,\dots,a_n\)组成的可重集合,求出它的非空子集的和的中位数。设\(sum=\sum\limits_{i=1}^na_i\)。首先是对于任意一个子集,设其和为\(x\),我们将其取反,就是选的改成不选,不选的改......
  • Solution Set #9
    在cdqz的集训结束了,虽然总榜比较好看但感觉只过了一堆平凡题。怎么一个月就省选了(恼)150【IOI2016】shortcut(拆绝对值)考虑确定了架桥架在哪里之后怎么算(经过桥的)直径。实际上就是\(\max(|pos_u-pos_x|+|pos_v-pos_y|+d_u+d_v)\)。大力转切比雪夫(大概)然后二分,先排除\(|pos_......
  • Solution Set【2024.1.27】
    CF1778FMaximizingRoot首先不难证明不操作根节点一定不优,因此我们考虑操作根节点的情况。现在我们的问题转化为了:最大化操作根节点前的整个树的节点权值的最大公约数。由于可能的最大公约数值只有\(\mathcal{O}(\sqrt{V})\)种。因此我们考虑将其压入状态进行动态规划。设......
  • Solution - 数字配对
    因为网络流的题一直都做得很烂,所以写一发这个题。第一眼感觉可以暴力\(O(n^2)\)连边,然后我去为什么是价值总和不小于\(0\)?我的最小费用最大流班子都准备好了???哦(看了一下下题解),这个配对相当于是流量,然后如果我们固定流量的话,最大价值和是有单调性的。很好感性理解,流量越大即......
  • solution-arc158e
    [ARC158E]AllPairShortestPaths还是挺牛逼的一题。但是为什么其他题解都说很板?看来还是我太菜了,见的题太少了。主要参考@TeneryTree首先考虑CDQ分治,只考虑处理\([l,mid]\)中的到\([mid+1,r]\)这些点的路径和。由于列数\(m=2\)所以我们考虑设\(f_{i,0/1}\)为左......
  • Comparison between IPQ9574 and IPQ9554 | MLO EHT Solution Unveils the WiFi 7 CPU
    ComparisonbetweenIPQ9574andIPQ9554|MLOEHTWiFi7QualcommSolutionUnveilstheWiFi7CPUforIndustrialApplications-AlderSeriesWi-Fi7elevateswirelessexperiencesandwillaccelerateemergingusecaseswithitsextremedataspeedsandconsis......