{"trustable":false,"prependHtml":"\u003cscript\u003e window.katexOptions \u003d { disable: true }; \u003c/script\u003e\n\u003cscript type\u003d\"text/x-mathjax-config\"\u003e\n MathJax.Hub.Config({\n tex2jax: {\n inlineMath: [[\u0027$$$\u0027,\u0027$$$\u0027], [\u0027$\u0027,\u0027$\u0027]],\n displayMath: [[\u0027$$$$$$\u0027,\u0027$$$$$$\u0027], [\u0027$$\u0027,\u0027$$\u0027]]\n }\n });\n\u003c/script\u003e\n\u003cscript async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS-MML_HTMLorMML\" type\u003d\"text/javascript\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"PLAIN","content":"在抗日战争期间,华北平原广大地区进行了大规模的隧道战。 一般来说,通过隧道连接的村庄排成一列。 除了两端,每个村庄都与两个相邻的村庄直接相连。\n入侵者经常对一些村庄发动袭击并摧毁其中的部分隧道。 八路军指挥官要求最新的隧道和村庄连接状态。 如果某些村庄严重隔离,必须立即恢复连接!"}},{"title":"Input","value":{"format":"PLAIN","content":"输入的第一行包含两个正整数n和m(n,m≤50,000),表示村庄和事件的数量。 接下来的m行中的每一行描述一个事件。\n以下所示的不同格式描述了三种不同的事件:\nD x:第x个村庄被毁。\nQ x:指挥官询问第x个村庄与其直接或间接相关的村庄数量。\nR:最后毁坏的村庄被重建了。"}},{"title":"Output","value":{"format":"PLAIN","content":"按顺序输出每个指挥官询问的答案。"}},{"title":"Sample Input","value":{"format":"PLAIN","content":"7 9\nD 3\nD 6\nD 5\nQ 4\nQ 5\nR\nQ 4\nR\nQ 4"}},{"title":"Sample Output","value":{"format":"PLAIN","content":"1\n0\n2\n4"}}]}