CCC '13 S4 - Who is Taller?

View as PDF

Submit solution

Points: 7
Time limit: 1.0s
Memory limit: 512M

Problem type
Canadian Computing Competition: 2013 Stage 1, Senior #4

You have a few minutes before your class starts, and you decide to compare the heights of your classmates. You don't have an accurate measuring device, so you just compare relative heights between two people: you stand two people back-to-back, and determine which one of the two is taller. Conveniently, none of your classmates are the same height, and you always compare correctly (i.e., you never make a mistake in your comparisons).

After you have done all of your comparisons, you would like to determine who the tallest person is between two particular classmates.

Input Specification

The first line contains two integers N and M separated by one space. N, the number of people in the class, is an integer with 1 \le N \le 100\,000. M, the number of comparisons that have already been done, is an integer with 1 \le M \le 1\,000\,000. Each of the next M lines contains two distinct integers x and y (1 \le x, y \le N) separated by a space, indicating that person number x was determined to be taller than person number y. Finally, the last line contains two distinct integers p and q (1 \le p, q \le N) separated by one space: your goal is to determine, if possible, whether person p is taller than person q. Note that it may be the case that neither p nor q occur in the input concerning measurements between classmates, and each measurement between any two particular people will be recorded exactly once.

An additional subtask worth 33% of the points have been added to break incorrect solutions which AC on official test data. Data provided by Tzak and Nils_Emmenegger.

Output Specification

The output is one line, containing one of three possible strings:

  • yes (if p is taller than q),
  • no (if q is taller than p),
  • unknown (if there is not enough information to determine the relative heights of p and q).

Sample Input 1

10 3
8 4
3 8
4 2
3 2

Output for Sample Input 1

yes

Sample Input 2

10 3
3 8
2 8
3 4
3 2

Output for Sample Input 2

unknown

Comments


  • 0
    rjamieson100  commented on Feb. 19, 2024, 1:57 a.m.

    TLE... Where can I learn how to get better at these problems? I understand basics of graph theory but clearly don't know how to make good choices when applying it


  • 2
    Frrrank  commented on Jan. 2, 2024, 2:33 p.m.

    Notes for Python speakers: If you found TLE, please try Pypy, which speeds up your program by compiling


  • -6
    maxcruickshanks  commented on Jan. 22, 2023, 5:33 a.m.

    This comment is hidden due to too much negative feedback. Show it anyway.