#1003. 基础设施 (road)

内存限制:256 MiB 时间限制:1000 ms 输入文件:road.in 输出文件:road.out
题目类型:传统 评测方式:文本比较
上传者: root

题目描述

「夫地方之有铁路,譬如人身血脉流通,手足灵捷… 其未建铁路者,则如风痹之人,半体不遂,举动不灵,横逆之来,无可相助,亦唯任其侮辱而莫之御。」
—— 郑观应《盛世危言》

中国的第一条铁路建成于 1881 年,长约二十里。而在 1919 年,孙中山博士公布了他的二十万里铁路图,虽然不切实际,但精神可嘉。光阴荏苒,百年后的今天,全国铁路运营里程已经超过了二十五万华里,这一伟大成就,充分说明了中国特色社会主义制度的巨大优越性。

让我们回到当年的情境,假设全国有 座城市,一开始任何城市之间都没有铁路。随着时代的发展,某两个城市之间可能会有铁路修建。为了节省起见,保证被连接的两个城市在这条铁路修建之前不被铁路组成的路径所联通(当然,铁路是无向的)。

在规划铁路的过程中,有时还需要评估某条铁路的客流压力。在这里,我们用通过一条铁路的简单路径的条数来衡量该铁路的客流压力。
像这样修建铁路和询问压力的事件共有 个,你的任务则是回答所有对于客流压力的询问(假定你从一开始就预先知道了历史上所有修建和询问的事件,换句话说,你可以离线地处理这些事件)。

注意:可能到了最后这 个城市仍然是不都连通的。

输入格式

从文件 road.in 中读入数据。

第一行两个正整数 ,含义如题。
接下来 行,每行第一个大写字母 表示事件类型。
若 ,则在该行另有两个整数 表示一条铁路的修建。
若 ,则在该行另有两个整数 表示询问该铁路的客流压力。

输出格式

输出到文件 road.out 中。

对于每个询问事件输出一行一个整数,表示被询问铁路的客流压力。

样例

样例输入

5 6
A 3 4
Q 4 3
Q 3 4
A 5 3
A 5 1
Q 5 3

样例输出

1
1
4

数据范围与提示

对于 的数据,,。
另有 的数据,保证最终形成树,其深度不超过 。(以某一个点为根)
对于 的数据,。