24.10.22 洛谷P3979 遥远的国度
第一道自己独立想出(大致)思路的紫题,但是因为代码细节调了三个多小时。。。
其实也就是树剖+换根,但是本人太菜交了十几次才AC。
感觉这三个小时还是学到了不少东西的(全靠大佬们的题解%%%)
(1)判断点y是否在x到root的路径上,可以转化为判断x是否在y的子树中;
(2)线段树小技巧
查询某个区间的信息
if(ql<=l&&r<=qr)return mn[u];
查询除了这个区间,其他所有区间的信息
if(r<ql||l>qr)return mn[u];
if(ql<=l&&r<=qr)return 1e16;
主程序加freopen
freopen("P3979a_6.in","r",stdin);
freopen("ans.out","w",stdout);
再新建一个程序
#include<bits/stdc++.h>
using namespace std;
int main(){
system("purple.exe");
system("fc P3979_6.out ans.out");
return 0;
}

浙公网安备 33010602011771号