#P3459. [POI2007] MEG-Megalopolis

    ID: 2519 Type: RemoteJudge 1000ms 125MiB Tried: 0 Accepted: 0 Difficulty: 5 Uploaded By: Tags>2007线段树树状数组POI深度优先搜索,DFS

[POI2007] MEG-Megalopolis

题目描述

Byteotia has been eventually touched by globalisation, and so has Byteasar the Postman, who once roamedthe country lanes amidst sleepy hamlets and who now dashes down the motorways. But it is those strolls inthe days of yore that he reminisces about with a touch of tenderness.

In the olden days nn Byteotian villages (numbered from 11 to nn) were connected by bidirectional dirt roadsin such a way, that one could reach the village number 11 (called Bitburg) from any other village in exactlyone way. This unique route passed only through villages with number less or equal to that of the startingvillage. Furthermore, each road connected exactly two distinct villages without passing through any othervillage. The roads did not intersect outside the villages, but tunnels and viaducts were not unheard of.

Time passing by, successive roads were being transformed into motorways. Byteasar remembers distinctly, when each of the country roads so disappeared. Nowadays, there is not a single country lane left in Byteotia - all of them have been replaced with motorways, which connect the villages into Byteotian Megalopolis.

Byteasar recalls his trips with post to those villages. Each time he was beginning his journey with letters to some distinct village in Bitburg. He asks you to calculate, for each such journey (which took place in a specific moment of time and led from Bitburg to a specified village), how many country roads it led through.

TaskWrite a programme which:

reads from the standard input:

descriptions of roads that once connected Byteotian villages, sequence of events: Byteasar's trips and the moments when respective roads were transformed into motorways, for each trip, calculates how many country roads Byteasar has had to walk, writes the outcome to the standard output.

有一棵节点数为 nn 的树,给定 m+n1m + n - 1 组询问,每组询问有两种操作。

  1. A x y,将 xx 节点和 yy 节点间的边权改为 00,每条边会被修改恰好一次。

  2. W x,求 11 号点到 xx 号点路径上的边权和。

初始所有边权值都为 11

输入格式

In the first line of the standard input there is a single integer nn (1n250 0001\le n\le 250\ 000),denoting the number of villages in Byteotia. The following n1n-1 lines contain descriptions of the roads, in the form of two integers aa,bb (1a<bn1\le a<b\le n)separated by a single space, denoting the numbers of villages connected with a road. Inthe next line there is a single integer mm(1m250 0001\le m\le 250\ 000),denoting the number of trips Byteasar has made.

The following n+m1n+m-1 lines contain descriptions of the events, in chronological order:

A description of the form "A aa bb"(for a<ba<b) denotes a country road between villages aa and bb beingtransformed into a motorway in that particular moment.

A description of the from "W aa" denotes Byteasar's trip from Bitburg to village aa.

输出格式

Your programme should write out exactly mm integers to the standard output, one a line, denoting the numberof country roads Byteasar has travelled during his successive trips.

5
1 2
1 3
1 4
4 5
4
W 5
A 1 4
W 5
A 4 5
W 5
W 2
A 1 2
A 1 3
2
1
0
1