Advertisement
Guest User

Untitled

a guest
Jul 4th, 2017
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
IO 0.89 KB | None | 0 0
  1. #!/usr/local/bin/io
  2.  
  3. accusers := Map clone
  4. fname := System args second
  5. fd := File clone open(fname)
  6. for (i, 1, fd readLine asNumber,
  7.      accusations := fd readLine splitNoEmpties;
  8.      for (i, 1, accusations second asNumber,
  9.           accuser := accusations first;
  10.           accused := fd readLine;
  11.           if (accusers hasKey(accuser),
  12.               accusers at(accuser) append(accused),
  13.               accusers atPut(accuser, list(accused)))))
  14.  
  15. liars := list()
  16. nonliars := list()
  17.  
  18. accusers foreach(k, v,
  19.                  if(liars contains(k) or (nonliars intersect(v) size > 0),
  20.                     liars append(k); nonliars appendSeq(v),
  21.                     nonliars append(k); liars appendSeq(v)))
  22.  
  23. liar_num := liars unique size
  24. nonliar_num := nonliars unique size
  25.  
  26. if (liar_num > nonliar_num,
  27.     "#{liar_num} #{nonliar_num}",
  28.     "#{nonliar_num} #{liar_num}") interpolate println
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement