should handle m questions with it. Each question is one of three sorts: "+ u v c" — add curve from u to v with name c. It's dependable that there is no curve (u,v) in the diagram as of now; "− u v" — eradicate curve from u to v. It's reliable that the chart contains circular segment (u,v) right now; "? k" — find the succession of k vertices v1,v2,… ,vk to such an extent that there
Correct answer will be upvoted else downvoted. Computer science.
You should handle m questions with it. Each question is one of three sorts:
"+ u v c" — add curve from u to v with name c. It's dependable that there is no curve (u,v) in the diagram as of now;
"− u v" — eradicate curve from u to v. It's reliable that the chart contains circular segment (u,v) right now;
"? k" — find the succession of k vertices v1,v2,… ,vk to such an extent that there exist the two courses v1→v2→⋯→vk and vk→vk−1→⋯→v1 and if you record characters along the two courses you'll get a similar string. You can visit a similar vertices quite a few times.
Input
The main line contains two integers n and m (2≤n≤2⋅105; 1≤m≤2⋅105) — the number of vertices in the diagram and the number of questions.
The following m lines contain questions — one for each line. Each question is one of three kinds:
"+ u v c" (1≤u,v≤n; u≠v; c is a lowercase Latin letter);
"− u v" (1≤u,v≤n; u≠v);
"? k" (2≤k≤105).
It's reliable that you don't add various edges and delete just existing edges. Additionally, there is something like one inquiry of the third kind.
Output
For each inquiry of the third sort, print YES if there exist the arrangement v1,v2,… ,vk portrayed above, or NO in any case.
Step by step
Solved in 4 steps with 1 images