1. Job Roadmap
  2. Home
  3. Problem Set
  4. codenotelist
  5. Forum
  6. course
  7. Shore Share Sessions
  8. Record
  1. Login
  2. Sign Up
  3. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
    ZhContent TextSol AI分析

解题思路

先观察操作本质:

  • 初始时每个点 iii 的权值为 ai=ia_i=iai​=i。
  • 第 jjj 次操作会把某个点的权值改成 n+jn+jn+j。

因此每次新赋的值都严格大于所有初始权值,而且也严格大于之前修改过的值。 所以每次在子树中找“当前权值最小的点”,就是在这个子树里找当前权值最小的位置,然后做一次单点修改。

P4682.第3题-递增

    1000ms Tried: 51 Accepted: 11 Difficulty: 7 所属公司 : 阿里
    算法与标签>线段树

题目内容

给定一棵由 nnn 个节点(编号为111∼nnn)和n−1 n−1n−1 条边构成的、根节点为 111 的树。

初始时,每个节点 i 的权值为 ai=ia_i=iai​=i。

接下来共有m mm 次修改操作。第 jjj 次操作(jjj 从1 1 1开始)给出一个节点 xxx:

  • 找出以 xxx 为根的子树中当前权值最小的节点,并将该节点的权值修改为j+n j+nj+n。

请输出所有节点在所有操作完成后的最终权值。

输入描述

第一行输入两个整数 nnn 和m(2≤n,m≤105) m(2≤n,m≤10^5)m(2≤n,m≤105),分别表示树的节点数量和操作次数;

此后n−1 n−1n−1 行,每行输入两个整数ui u_i ui​和vi(1≤ui,vi≤n;ui≠vi) v_i(1≤u_i,v_i≤n;u_i≠v_i)vi​(1≤ui​,vi​≤n;ui​=vi​),表示树上第iii 条边;保证构成一棵以节点 111 为根的树;

随后 mm m行,每行输入一个整数x(1≤x≤n) x(1≤x≤n)x(1≤x≤n),表示第 jjj 次操作的节点编号。

输出描述

在一行上输出n nn 个整数,分别表示节点 11 1到节点n n n的最终权值;整数之间用空格分隔

样例1

输入

3 2
1 2
1 3
1 
2

输出

4 5 3

说明

在这个样例中:

  • 初始时a= a=a={1,2,31,2,31,2,3};
  • 第 11 1次操作x=1 x=1x=1,子树为所有节点,最小权值节点为 111,更新其权值为 1+3=41+3=41+3=4;
  • 第 222 次操作 x=2x=2x=2,子树仅含节点 222,更新其权值为2+3=5 2+3=52+3=5;
  • 最终权值为 {4,5,34,5,34,5,3}。

登录后即可使用 AI 分析。

模式
倒计时时长
:

最长 10 小时 59 分;应用后按此时长重新开始。

提示:点击提交记录在左侧题面区域查看详情
题库
AI分析设置
留空使用官方API Key,每天有次数限制(自定义API Key仅限会员和管理员使用,不限次数)
会员和管理员可切换模型;切到 Kimi/智谱/通义/豆包时需填写对应供应商 API Key
升级会员,可将运行与提交冷却时间缩短至 1 秒起

Status

  • Judging Queue
  • Service Status

Development

  • Open Source

Support

  • Help
  • Contact Us

About

  • About
  • Privacy
  • Terms of Service
  • Copyright Complaint
  1. Language
    1. English
    2. 한국어
    3. 简体中文
    4. 正體中文
  2. Legacy mode
  3. Theme
    1. Light
    2. Dark
  1. 京ICP备2025123107号-1
  2. Worker 0, 80ms
  3. Powered by Hydro v5.0.0-beta.18 Community
CLOSE


ScanQRCodePrompt

请使用微信扫描下方二维码完成注册

Forgot password or username?