题目名称 | 1832. 苹果树 |
---|---|
输入输出 | apple.in/out |
难度等级 | ★★☆ |
时间限制 | 1000 ms (1 s) |
内存限制 | 256 MiB |
测试数据 | 10 |
题目来源 |
|
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:1, 提交:1, 通过率:100% | ||||
|
100 | 0.512 s | 6.13 MiB | C++ |
关于 苹果树 的近10条评论(全部评论) |
---|
卡卡的房子外面有一颗苹果树,树上有$n$个叉(编号为$1\sim n$),它们通过分支连接。苹果在叉上生长,两个苹果不会在同一叉上生长。一个新的苹果可能会在一个空叉上长出来,卡卡还可能会从树上摘一个苹果作为它的甜点。
第一行一个正整数 $n(n\leq 10^5)$,表示树中叉的数量。
接下来$n-1$行,每行两个整数$x,y$,表示叉$x$和叉$y$通过分支连接。
接下一行一个整数$m(m\leq 10^5)$,表示苹果的变化和查询。
接下来$m$行,有如下两种情况:
C x
表示改变$x$叉上的苹果状态。若叉上有苹果,则卡卡会选择摘掉它,否则一个新的苹果在这个叉长大。
Q x
表示查询$x$叉上方子树中的苹果数量,包括$x$叉上的苹果。
注意:开始时树上长满了苹果。
对于每个查询操作,输出一行一个整数表示查询结果。
3 1 2 1 3 3 Q 1 C 2 Q 1
3 2