Guest User

Untitled

a guest
Dec 6th, 2019
91
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <iostream>
  2. #include <map>
  3. #include <vector>
  4. using namespace std;
  5.  
  6. struct Osoba
  7. {
  8. vector < string > v_Sasiedzi;
  9. int l_sasiadow;
  10.  
  11. Osoba() : l_sasiadow( 0 ) {}
  12.  
  13. };
  14.  
  15. int main()
  16. {
  17. ios_base::sync_with_stdio(false);
  18.  
  19. unsigned short t;
  20. unsigned int n, m;
  21.  
  22. string nazwiskoTemp;
  23. string nazwiskoTemp2;
  24.  
  25. bool odpowiedz = 0;
  26.  
  27. cin >> t;
  28.  
  29. for ( unsigned short i=0 ; i<t ; i++ )
  30. {
  31. map < string, Osoba > mapa;
  32. cin >> n >> m;
  33.  
  34. for ( unsigned int j=0 ; j<n ; j++ )
  35. {
  36. cin >> nazwiskoTemp;
  37. mapa[nazwiskoTemp] = Osoba();
  38. }
  39.  
  40. for ( unsigned int k=0 ; k<m ; k++ )
  41. {
  42. cin >> nazwiskoTemp >> nazwiskoTemp2;
  43. mapa[nazwiskoTemp].v_Sasiedzi.push_back( nazwiskoTemp2 );
  44. mapa[nazwiskoTemp2].l_sasiadow++;
  45. }
  46.  
  47. for( unsigned int l=0 ; l<n ; l++ )
  48. {
  49. cin >> nazwiskoTemp;
  50.  
  51. if ( odpowiedz == 1 )
  52. continue;
  53.  
  54. if ( mapa[nazwiskoTemp].l_sasiadow-- == 0 )
  55. {
  56.  
  57. for ( string x : mapa[nazwiskoTemp].v_Sasiedzi )
  58. {
  59. mapa[x].l_sasiadow--;
  60. }
  61.  
  62. }
  63. else
  64. odpowiedz = 1;
  65. }
  66.  
  67. if ( odpowiedz == 0 )
  68. cout << "TAK" << endl;
  69.  
  70. else
  71. cout << "NIE" << endl;
  72.  
  73. }
  74. return 0;
  75. }
RAW Paste Data