CCC '14 S2 - Assigning Partners

View as PDF

Submit solution

Points: 5
Time limit: 2.0s
Memory limit: 64M

Problem type
Allowed languages
Ada, Assembly, Awk, Brain****, C, C#, C++, COBOL, CommonLisp, D, Dart, F#, Forth, Fortran, Go, Groovy, Haskell, Intercal, Java, JS, Kotlin, Lisp, Lua, Nim, ObjC, OCaml, Octave, Pascal, Perl, PHP, Pike, Prolog, Python, Racket, Ruby, Rust, Scala, Scheme, Sed, Swift, TCL, Text, Turing, VB, Zig
Canadian Computing Competition: 2014 Stage 1, Junior #5, Senior #2

The CEMC is organizing a workshop with an activity involving pairs of students. They decided to assign partners ahead of time. You need to determine if they did this consistently. That is, whenever A is a partner of B, then B is also a partner of A, and no one is a partner of themselves.

Input Specification

The input consists of three lines. The first line consists of an integer N (1 < N \le 30), which is the number of students in the class. The second line contains the first names of the N students separated by single spaces. (Names contain only uppercase or lowercase letters, and no two students have the same first name). The third line contains the same N names in some order, separated by single spaces.

The positions of the names in the last two lines indicate the assignment of partners: the ith name on the second line is the assigned partner of the ith name on the third line.

Output Specification

The output will be good if the two lists of names are arranged consistently, and bad if the arrangement of partners is not consistent.

Sample Input 1

Ada Alan Grace John
John Grace Alan Ada

Output for Sample Input 1


Explanation for Output for Sample Input 1

Ada and John are partners, and Alan and Grace are partners. This arrangement is consistent.

Sample Input 2

Rich Graeme Michelle Sandy Vlado Ron Jacob
Ron Vlado Sandy Michelle Rich Graeme Jacob

Output for Sample Input 2


Explanation for Output for Sample Input 2

Graeme is partnered with Vlado, but Vlado is partnered with Rich. This is not consistent. It is also inconsistent because Jacob is partnered with himself.


  • -2
    Orion222  commented on July 4, 2020, 3:37 p.m.

    bro how am i getting it wrong im comparing it to a reversed list of the first list of names

    • 1
      AlanL  commented on July 4, 2020, 5:19 p.m.

      That's not what the problem is asking you to do. I'm surprised you got that many test cases right. You're supposed to be checking if each of the two names are being matched consistently, and the two partners are always partnered up with each other.

    • -1
      maxcruickshanks  commented on July 4, 2020, 5:15 p.m. edit 4

      Your solution is incorrect: you should try thinking of another solution to verify the partners are valid. If you're still stumped, try looking at the test cases you get wrong (namely, 2a, 2b, and 5a).

  • -17
    Adib234  commented on July 13, 2019, 10:37 p.m.

    This comment is hidden due to too much negative feedback. Click here to view it.

    • -4
      cyopotatoe  commented on July 24, 2020, 8:57 p.m.


  • 13
    2rpy  commented on Jan. 6, 2019, 8:17 p.m. edited

    Many ways to do it.