CSES - Critical Cities | Các thành phố quan trọng

View as PDF



Author:
Problem types
Points: 1900 (p) Time limit: 1.0s Memory limit: 512M Input: stdin Output: stdout

There are \(n\) cities and \(m\) flight connections between them. A city is called a critical city if it appears on every route from a city to another city.

Your task is to find all critical cities from Syrjälä to Lehmälä.

Input

  • The first input line has two integers n and m: the number of cities and flights. The cities are numbered \(1,2,…,n\). City \(1\) is Syrjälä, and city \(n\) is Lehmälä.
  • Then, there are m lines describing the connections. Each line has two integers \(a\) and \(b\): there is a flight from city \(a\) to city \(b\). All flights are one-way.
  • You may assume that there is a route from Syrjälä to Lehmälä.

Output

  • First print an integer \(k\): the number of critical cities. After this, print \(k\) integers: the critical cities in increasing order.

Constraints

  • \(1\leq n \leq 10^5\)
  • \(1\leq m \leq 2 ⋅ 10^5\)
  • \(1\leq a, b \leq n\)

Example

Sample input

5 5  
1 2  
2 3  
2 4  
3 5  
4 5

Sample output

3  
1 2 5

Comments (1)

Most recent
Loading comments...