Source code for submission s872

fr.cpp

  1. #include <cstdio>
  2. #include <iostream>
  3. #include <sstream>
  4. #include <vector>
  5.  
  6. //MYDELKO TYM!!!
  7. using namespace std;
  8.  
  9. int delka = 0;
  10. vector <int> maslo;
  11.  
  12. int rekurzivni(int pole[][3], int x,int node)
  13. {
  14. bool nalezeno = false;
  15. for(int i=0;i<node-1;i++){
  16. cout << "A" << endl;
  17. if(pole[i][0] == x)
  18. {
  19.  
  20. cout << "B" << endl;
  21.  
  22. if(rekurzivni(pole, pole[i][1], node) == 1)
  23. {
  24. cout << "C" << endl;
  25. delka = pole[i][2];
  26. cout << "D" << endl;
  27. }
  28.  
  29. }
  30. if(pole[i][1] == x)
  31. {
  32.  
  33. cout << "B" << endl;
  34.  
  35. if(rekurzivni(pole, pole[i][1], node) == 1)
  36. {
  37. cout << "C" << endl;
  38. delka = pole[i][2];
  39. cout << "D" << endl;
  40. }
  41.  
  42. }
  43.  
  44. }
  45. cout << "F" << endl;
  46. if (nalezeno == false)
  47. {
  48. return 1;
  49. }
  50. else return 0;
  51. }
  52.  
  53. int main(){
  54.  
  55.  
  56.  
  57.  
  58.  
  59. string test;
  60. int node=0;
  61. int central;
  62.  
  63. while(cin >> node >> central){
  64. delka = 0;
  65. int pole[node][3];
  66.  
  67.  
  68. for(int i=0;i<node-1;i++){
  69. cin >> pole[i][0];
  70. cin >> pole[i][1];
  71. cin >> pole[i][2];
  72.  
  73. }
  74. /*
  75. for(int i=0;i<node-1;i++){
  76. cout << pole[i][0] << pole[i][1] << pole[i][2] << endl;
  77. }
  78.  
  79.  
  80. */
  81.  
  82. int pole_pocitadlo[node+5];
  83.  
  84. for(int i =0;i<node+1;i++){
  85. pole_pocitadlo[i]=0;
  86. }
  87.  
  88. for(int i =0;i<node-1;i++){
  89. pole_pocitadlo[pole[i][0]] ++;
  90. pole_pocitadlo[pole[i][1]] ++;
  91. }
  92. /*
  93. for(int i =0;i<node+1;i++){
  94. cout << i <<" " << pole_pocitadlo[i] << endl;
  95. }
  96. */
  97.  
  98. for(int i =0;i<node-1;i++){
  99. if(pole_pocitadlo[pole[i][0]] == 1 || pole_pocitadlo[pole[i][1]] == 1 ) delka += pole[i][2];
  100. }
  101.  
  102.  
  103.  
  104.  
  105. /*
  106. for(int i=0;i<node-1;i++){
  107. for(int q=0;q<node-1;q++){
  108. if(pole[i][0] != pole[q][0])
  109. delka += pole[q][2];
  110. else if(pole[i][0] != pole[q][1])
  111. delka += pole[q][2];
  112. else if(pole[i][1] != pole[q][0])
  113. delka += pole[q][2];
  114. else if(pole[i][1] != pole[q][1])
  115. delka += pole[q][2];
  116. }
  117. }
  118. */
  119. cout << delka << endl;
  120. }
  121.  
  122. return 0;
  123. }
  124.