bzoj 1103 大都市meg (dfs序+线段树)

瑞芯微RV1126B芯片实战:如何用3Tops NPU打造智能安防摄像头(附配置指南) 本文详细介绍了基于瑞芯微RV1126B芯片构建高性能智能安防摄像头的实战经验。文章深入剖析了其3Tops NPU与独立AI-ISP的协同优势,提供了从硬件选型、开发环境搭建、AI模型部署到系统调优的全流程配置指南,帮助开发者充分发挥芯片潜力,实现高效、稳定的智能视觉应用。 阅读详情

题意:

       一颗树,每条边权是1,两种操作,一种查询x到根的距离,一种把某边改为0

思路:

        对于一个边变了,那么影响的就是子树,所以dfs序+线段树就行了,这题对于时间要求很低,vector存边,每次暴力找答案也能A

错误及反思:

代码:

#include<bits/stdc++.h>
using namespace std;
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
const int N = 260000;
int segtree[N<<2],lazy[N<<2];
vector<int> e[N];
int id[N],to[N],len[N],fa[N];
int n,tid,w;

void dfs(int now,int f,int val){
    id[now]=++tid;
    fa[now]=f;
    len[tid]=val;
    for(int i=0;i<e[now].size();i++){
        if(e[now][i]!=f)
            dfs(e[now][i],now,val+1);
    }
    to[now]=tid;
}

void build(int l,int r,int rt){
    if(l==r){
        segtree[rt]=len[l];
        return ;
    }
    int m=l+r>>1;
    build(lson); build(rson);
}

void pushdown(int rt){
    if(lazy[rt]!=0){
        segtree[rt<<1|1]+=lazy[rt];
        segtree[rt<<1]+=lazy[rt];
        lazy[rt<<1]+=lazy[rt];
        lazy[rt<<1|1]+=lazy[rt];
        lazy[rt]=0;
    }
}
void update(int L,int R,int l,int r,int rt){
    if(L<=l&&R>=r){
        lazy[rt]--;
        segtree[rt]--;
        return ;
    }
    pushdown(rt);
    int m=l+r>>1;
    if(L<=m) update(L,R,lson);
    if(R>m) update(L,R,rson);
    return ;
}

int query(int x,int l,int r,int rt){
    if(l==r) return segtree[rt];
    pushdown(rt);
    int m=l+r>>1;
    if(x<=m) return query(x,lson);
    return query(x,rson);
}

int main(){
    scanf("%d",&n);
    for(int i=0,u,v;i<n-1;i++){
        scanf("%d%d",&u,&v);
        e[u].push_back(v);
        e[v].push_back(u);
    }
    dfs(1,1,0);
    build(1,n,1);
    scanf("%d",&w);
    while(w){
        char t[10]; scanf("%s",t);
        if(t[0]=='W'){
            w--;
            int x; scanf("%d",&x);
            printf("%d\n",query(id[x],1,n,1));
        }
        else{
            int x,y;
            scanf("%d%d",&x,&y);
            if(fa[y]==x) swap(x,y);
            update(id[x],to[x],1,n,1);
        }

    }
}
三维旋转详细解读(Rodrigues‘ Roatation Formula 罗德里格旋转公式) 三维旋转引言三维旋转1)欧拉角2)轴角式旋转分解1)V||的旋转2)V⊥的旋转3)V的整体旋转 引言 前面我们了解了 复数在二维旋转中的作用与联系 而四元数与三维旋转之间的关系与复数对二维旋转有很多类似的地方,下面我们就先来详细了解一下三维旋转的过程。 三维旋转 首先讨论一下三维旋转,我们了解到常用的三维旋转有两种方式: 1)欧拉角 即按照一定的顺序,分别对X, Y, Z三个轴进行旋转 θ 角。绕各旋转轴的旋转矩阵为: 然后任意的三维旋转可以分解成上述三种旋转方式的组合。(注意:三个旋转的顺序是非常重要的 阅读详情

相关推荐

从零做出可发布的2D冒险游戏!Unity全流程实战指南:从资源搭建到打包发布,新手也能跟着做

项目配置→资源导入→核心模块开发→关卡设计→调试→打包发布;玩家控制→敌人AI→道具系统→UI系统→游戏管理器→音效系统;新手开发重点:先实现核心玩法(移动、跳跃、攻击),再补充UI、音效、存档等辅助功能;调试是关键:每实现一个功能就测试,避免最后一堆bug难以定位。从零做一款完整的2D冒险游戏,能快速提升你的Unity综合能力——不仅能掌握C#编程、2D物理、UI系统,还能理解游戏开发的完整流程。先做出基础版,再慢慢迭代优化,你会发现游戏开发并没有想象中那么难。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1176

【BZOJ 入门oj】1103: 那些N位数(dfs)

1103: 那些N位数 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 581  Solved: 232 [Submit][Status][Web Board] Description 一个n位数,只由1,2,3,4...p这几个数字组成。 请编写程序输出这些n位数,先小后大,每行一个。   Input 两个整数n,p(n<9,p<=9,且...

reverie_mjp的博客 1148

中标麒麟,postgres报错invalid value for parameter "timeZone":"Asia/Beijing"

在中标麒麟服务器上,安装postgres,启动tomcat容器时,报invalid value for parameter "timeZone":"Asia/Beijing"。 查看postgres运行日志,也报同样的错误。 报错原因:服务器的时区,在Postgres支持的时区目录中找不到。当时在服务器上信息为Beijing 解决步骤: 1. cat /etc/sysconfig/cloc

u010213931的博客 7924

BZOJ1103

BZOJ 1103 题目 BZOJ1103 分析 考虑树链剖分 本题考虑边的个数,而不是点的个数。但是可以考虑用点权代替边权,nnn 个点会有 n−1n - 1n−1 条边,所以在操作时只考虑 n−1n - 1n−1 个点即可。 代码 const int N = 250005; int head[N], ver[N], Next[N]; int d[N], son[N], fa[N],...

strategist_614的博客 266

Unity WebGL项目如何实现画布透明,完美融入网页背景(附.jslib文件与完整配置)

本文详细解析了Unity WebGL项目实现画布透明化的技术原理与实战步骤,从.jslib文件配置到前端框架集成,帮助开发者解决默认背景色问题,实现3D内容与网页设计的无缝融合。重点介绍了透明化核心机制、常见误区及React/Vue等现代框架中的最佳实践方案。

weixin_31896061的博客 300

MT6816角度传感器SPI通信避坑指南:从数据手册到稳定读取的3个关键步骤

本文详细解析了MT6816角度传感器SPI通信中的常见问题与解决方案,包括寄存器地址计算、SPI时序配置和数据校验等关键步骤。通过实测波形和代码示例,帮助工程师避开数据手册中的隐藏陷阱,实现稳定可靠的角度数据读取,特别适用于高精度电机控制场景。

weixin_42520573的博客 516

8.3 bzoj1103 [POI2007]大都市meg

题目描述   在经济全球化浪潮的影响下,习惯于漫步在清晨的乡间小路的邮递员Blue Mary也开始骑着摩托车传递邮件了。 不过,她经常回忆起以前在乡间漫步的情景。昔日,乡下有依次编号为1..n的n个小村庄,某些村庄之间有一些双 向的土路。从每个村庄都恰好有一条路径到达村庄1(即比特堡)。并且,对于每个村庄,它到比特堡的路径恰好 只经过编号比它的编号小的村庄。另外,对于所有道路而言,它们

cx0627year的博客 896

2025年三级等保新规实战:从零开始搭建企业安全防护体系(附完整配置清单)

本文详细解析2025年三级等保新规的核心变化,提供从零开始搭建企业安全防护体系的实战指南。重点介绍动态防护能力、实战化攻防验证和全链路数据保护等关键要求,并附完整配置清单,帮助企业高效合规。

weixin_30836759的博客 468

bzoj1103

dfs序 dfs序真神奇 dfs求出入栈时刻和出栈时刻,然后在in和out分别打上1和-1就能统计路径和了。 其实这里dfs序能够让我们求一个点处于哪些节点的子树内,而一个节点只处于从自己到跟路径的节点的。 这里的dfs序有些像括号序列,如果一个点不在另一个点的子树内,那么也就不在另一个点的括号内,那么另一个点的括号也闭合了,+1-1抵消 #include<bit...

weixin_30847865的博客 171

反应动力学仿真软件:CHEMKIN_(12).CHEMKIN与其他软件的接口

通过上述介绍,我们详细探讨了如何将 CHEMKIN 与 MATLAB、Python、COMSOL、Aspen Plus 和 Ansys Fluent 等软件工具进行接口配置和数据交互。这些接口不仅能够显著提升 CHEMKIN 在反应动力学仿真中的应用效果,还能充分利用其他软件工具的强大功能,实现更复杂的数据处理和分析。希望这些内容对您在化学反应动力学仿真中的工作有所帮助。

kkchenjj的博客 1138

面向企业级应用的 SAP UI5 troubleshooting 全景指南:从日志与调试到性能与可测试性

本指南系统化介绍了SAP UI5应用排错的完整流程和工具链。从基础的浏览器开发者工具使用,到SAP UI5专用调试工具(Technical Information Dialog、Support Assistant、Diagnostics Window),再到性能优化和日志管理,提供了一套工程化的解决方案。重点推荐组合使用UI5 Inspector扩展、Test Recorder测试工具以及性能测量模块,并强调将常见问题整理成团队知识库。通过制度化的排错步骤和工具组合,开发者可以快速定位、复现和修复问题,将调

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 283

二叉树和最大的子树

给一个二叉树,每个节点都是正或负整数,如何找到一个子树,它所有节点的和最大? struct Node { int value; Node *left; Node *right; }; int result = 0; bool maxSet = false; void postOrderVisit(Node *root) { if (NULL == root) { ret

brucehb的专栏 3526

飞牛NAS打造成童年经典游戏机

这篇文章介绍如何使用飞牛NAS搭建经典游戏模拟器。首先需开启Docker并下载RetroArch-web镜像,随后创建容器并设置端口映射。启动后上传游戏ROM文件(如NES格式),在模拟器中加载即可游玩。文章以修改版坦克大战为例,详细说明按键配置方法。同时还提到公网访问需配置DDNS或使用ZeroTier内网穿透。通过这套方案,用户可以在NAS上重温红白机等经典游戏体验。

dgnankai的专栏 885

【BZOJ1103】[POI2007]大都市meg【树链剖分】【线段树】【或 树状数组 + dfs序】

【题目链接】 想都没想直接树剖去了...看了题解发现树状数组维护dfs序也可以做。 树剖: /* Pigonometry */ #include #include #include using namespace std; const int maxn = 250005; int n, head[maxn], cnt; struct _edge { int

BraketBN 983

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

【DFS序+线段树】BZOJ1103 [POI2007]大都市meg

题面在这里很显然可以用DFS序把树上问题转化为区间问题修改一条边只影响了下面那棵子树中所有点的答案线段树维护区间加,单点询问就好了示例程序:

linkfqy 770

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

BZOJ1103 [POI2007]大都市meg dfs序 线段树

欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1103 题意概括   一棵树上,一开始所有的边权值为1,我们要支持两种操作:   1. 修改某一条边的权值为0   2. 询问根节点到某一节点的路径权值和 题解   前置技能 - dfs序相关   然后差不多你就会了。   dfs序+线段树搞定了。 ...

weixin_30907935的博客 137

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

bzoj1103: [POI2007]大都市meg

bzoj1103: [POI2007]大都市meg Description   在经济全球化浪潮的影响下,习惯于漫步在清晨的乡间小路的邮递员Blue Mary也开始骑着摩托车传递邮件了。不过,她经常回忆起以前在乡间漫步的情景。昔日,乡下有依次编号为1..n的n个小村庄,某些村庄之间有一些双向的土路。从每个村庄都恰好有一条路径到达村庄1(即比特堡)。并且,对于每个村庄,它到比特堡的路径恰好只...

weixin_30657541的博客 95

BZOJ 1103 Poi2007 大都市meg

1103: [POI2007]大都市meg Time Limit:10 SecMemory Limit:162 MBSubmit:3012Solved:1581[Submit][Status][Discuss] Description   在经济全球化浪潮的影响下,习惯于漫步在清晨的乡间小路的邮递员Blue Mary也开始骑着摩托车传递邮件了。不过,她经常回...

148

BZOJ1103 [POI2007]大都市meg(DFS序)

题目:一颗树,单边修改,链上查询。。实际上链是根到结点的链。网上好像有其他做法,我的想法是这样的: 先不看修改,毫无疑问查询只是查询结点的深度;而修改一条边会有什么影响:影响是且只是以边上深度最深结点为根的子树。 所以就是DFS序了。把子树转化为区间,然后用区间修改、单点查询的线段树维护。 1 #include<cstdio> 2 #include<cs...

dengliugong3918的博客 92

【BZOJ 1103】[POI2007]大都市meg

【链接】 我是链接,点我呀:) 【题意】 在这里输入题意 【题解】 dfs序 进入的位置设为1出去的设为-1则某个点进去的位置的dfs序的前缀和就是这个点到根节点的路径数。 (可以巧妙的把那些分叉路径去掉。 修改成公路后。就把下面的那个点(深度高的)的进入和出去的值都设置为0 用线段树维护区间和。 (可以用树状数组. 【代码】 #include <bits/st...

AWCXV 118

【BZOJ1103 [POI2007]大都市meg】树链剖分

BZOJ1103 直接上树链剖分即可 注意题目是删一条路 之前以为删区间路 WA了 /* if you can't see the repay Why not just work step by step rubbish is relaxed to ljq */ #include <cstdio> #include <cstring> #in...

我是谁 --- 卡比兽 194

[bzoj1103]大都市meg

[bzoj1103]大都市meg 树剖板子 模板 #include&lt;bits/stdc++.h&gt; using namespace std; const int N=2.5e5+2; int cnt,hed[N],to[N*2],nxt[N*2]; void adde(int u,int v){ cnt++;to[cnt]=v,nxt[cnt]=hed[u];hed[u...

jerome_wei的博客 189

BZOJ1103(POI2007)[大都市meg]--DFS序+树状数组

bzoj1103

Greninja的博客 787

BZOJ1103【POI2007】大都市meg <树上差分+树状数组>

BZOJ1103【POI2007】大都市meg 【POI2007】大都市meg Description 在经济全球化浪潮的影响下,习惯于漫步在清晨的乡间小路的邮递员Blue Mary也开始骑着摩托车传递邮件了。不过,她经常回忆起以前在乡间漫步的情景。昔日,乡下有依次编号为1..n的n个小村庄,某些村庄之间有一些双向的土路。从每个村庄都恰好有一条路径到达村庄1(即比特

qq_30802053的博客 351

[bzoj1103][POI2007]大都市meg

题意:给定一棵n个点的树,一开始边权都是1,然后要支持修改一条边为0和查询一个点到点1的路上的边权和。n<=250000 题解:求出dfs序,然后每个点如果它和父亲的连边有权值就把它这个子树都+1. #include<cstdio> #include<iostream> #define INF 2000000000 #define N 262144 u...

weixin_30681615的博客 72

[bzoj1103][poi2007]大都市meg(DFS序)

题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1103 分析: 处理树的问题如果有边权,一般转化成点权,然后问题就等价于: 给你一个初始每个点的点权都为1的树,有2种操作: 1、将一个点的点权变为0 2、询问从根(1)到某个节点的路径上的所有点的点权和 如果某个点的点权边为了0,那么说明以这个点为根的子树所有的点到树...

weixin_30521649的博客 120
上一篇: Codeforces Round #104 (Div. 1) E. Lucky Queries (线段树)
下一篇: Codeforces 85D. Sum of Medians (线段树)
Roll_Keyboard
博客等级 码龄9年 10粉丝 128原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值