Advertisement
Guest User

Untitled

a guest
Oct 16th, 2019
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.00 KB | None | 0 0
  1. package com.company;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.HashMap;
  5. import java.util.Scanner;
  6. import java.util.TreeMap;
  7.  
  8. public class Main {
  9. public static TreeMap<Integer,ArrayList<Integer>> pairs = new TreeMap<>();
  10. public static void getBetter(ArrayList<Integer> better, int film)
  11. {
  12. if (pairs.containsKey(film)) {
  13. ArrayList<Integer> cur = pairs.get(film);
  14. for (int z:cur) {
  15. if (!better.contains(z))
  16. {
  17. better.add(z);
  18. getBetter(better,z);
  19. }
  20. }
  21. }
  22. }
  23.  
  24. public static void main(String[] args) {
  25. int n_girls, n_pairs;
  26. Scanner sc = new Scanner(System.in);
  27. n_girls = sc.nextInt();
  28. n_pairs = sc.nextInt();
  29. for (int i = 0; i < n_pairs; i++) {
  30. Integer[] tmp = new Integer[2];
  31. tmp[0] = sc.nextInt();
  32. tmp[1] = sc.nextInt();
  33. if (pairs.containsKey(tmp[1]))
  34. {
  35. pairs.get(tmp[1]).add(tmp[0]);
  36. }
  37. else {
  38. ArrayList<Integer> values = new ArrayList<>();
  39. values.add(tmp[0]);
  40. pairs.put(tmp[1], values);
  41. }
  42.  
  43. }
  44.  
  45. HashMap<Integer,ArrayList<Integer>> betterArray = new HashMap<>();
  46. ArrayList<String> answ = new ArrayList<>();
  47. Integer[] anceta= new Integer[3];
  48. for (int i = 0; i <n_girls ; i++) {
  49. anceta[0] = sc.nextInt();
  50. anceta[1] = sc.nextInt();
  51. anceta[2] = sc.nextInt();
  52. boolean algood = true;
  53. for (int c=0; c<anceta.length;c++) {
  54. ArrayList<Integer> b = new ArrayList<>();
  55. if (betterArray.containsKey(anceta[c]))
  56. {
  57. b = betterArray.get(anceta[c]);
  58. }
  59. else {
  60. getBetter(b, anceta[c]);
  61. betterArray.put(anceta[c],b);
  62. }
  63. if (b.size()>c) algood = false;
  64. else
  65. {
  66.  
  67. for (int d:b) {
  68. boolean exist = false;
  69. for (int j = c-1; j >=0 ; j--) {
  70. if (d==anceta[j])
  71. {
  72. exist = true;
  73. break;
  74. }
  75. }
  76. if (!exist)
  77. {
  78. algood = false;
  79. break;
  80. }
  81.  
  82. }
  83. }
  84. if (!algood) break;
  85.  
  86. }
  87. if (algood)
  88. {
  89. answ.add("honest");
  90. }
  91. else
  92. {
  93. answ.add("liar");
  94. }
  95. }
  96. for (String an:answ) {
  97. System.out.println(an);
  98. }
  99. }
  100. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement