|
||||||||||
Trip AdvisorTime Limit: 12000/6000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Total Submission(s): 796 Accepted Submission(s): 219 Problem Description There is a strange country somewhere which its transportation network was built following some weird rules: Consider the transportation network as a connected undirected graph G with N nodes and M edges(nodes indicate cities,and people can travel from cities to cities by roads connecting them),the condition that every node in G is in at most one simple cycle holds. One day Q people of the country want to make a travel, i_th people is located at city Ui, wants to move to city Vi(Ui can be equal to Vi),and he especially loves city Pi,so he wonders if there is a path that: 1. starts at Ui; 2. ends at Vi; 3. for every pair of adjacent cities in path,there is a road connecting them. 4. visits every city at most once. 5. visits city Pi; As a trip advisor,your task is to tell everybody whether there is a path satsifying all his requirements. Input The input contains several test cases, terminated by EOF. Most of test cases are rather small. Each testcase contains M + Q + 2 lines. first line contains two integers N, M (1 <= N <= 100000, 1 <= M <= 150000), the number of cities and roads; next M lines each contains two integer b, e indicates that there is a bidirectional-road connecting city b and city e;next line an integer Q (1 ¡Ü Q ¡Ü 100000) indicating number of people in that country that want to make a travel, next Q lines each contains three integers Ui, Vi, Pi, denotes the query as we mentioned above. Output For each test case output Q lines, for i-th query, if there exists such path, output one line "Yes" without quotes, otherwise output one line "No" without quotes. Sample Input
Sample Output
Source | ||||||||||
|