prometheus800

ООП: Скијачки центар

Apr 6th, 2022
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.71 KB | None | 0 0
  1. // Скијачки центар Problem 1 (1 / 1)
  2. //STARTER
  3. /*
  4. #include<stdio.h>
  5. #include<string.h>
  6.  
  7.  
  8. int main()
  9. {
  10.     scanf("%d", &n);
  11.     for (i = 0; i < n; i++){
  12.         //vnesi ime
  13.         //vnesi drzava
  14.         //vnesi broj na liftovi
  15.        
  16.        
  17.         //za sekoj ski lift vnesi:
  18.             //vnesi ime
  19.             //vnesi maksimalen broj korisnici
  20.             //vnesi dali e pusten vo funkcija
  21.     }
  22.    
  23.     //povik na funkcijata najgolemKapacitet
  24.    
  25.     return 0;
  26. }
  27. */
  28. //RESENIE
  29. #include<stdio.h>
  30. #include<string.h>
  31.  
  32. typedef struct SkiLift{
  33.     char ime[20];
  34.     int max_skijaci;
  35.     int voUpotreba;
  36. }skiLift;
  37.  
  38. typedef struct SkiCenter {
  39.     char ime[20];
  40.     char drzava[20];
  41.     skiLift niza[20];
  42.     int br_lifts;
  43. }skiCenter;
  44.  
  45. int kapacitet(skiCenter sc)
  46. {
  47.     int i;
  48.     int tmp = 0;
  49.     for (i = 0; i < sc.br_lifts; i++)
  50.     {
  51.         if (sc.niza[i].voUpotreba == 1)
  52.         {
  53.             tmp += sc.niza[i].max_skijaci;
  54.         }
  55.     }
  56.     return tmp;
  57.  
  58. }
  59. void najgolemKapacitet(skiCenter *sc, int n)
  60. {
  61.     int tmp, i, j, max, max_ind;
  62.     max = 0;
  63.     max_ind = 0;
  64.     for (i = 0; i < n; i++)
  65.     {
  66.         tmp = kapacitet(sc[i]);
  67.         if ((tmp > max) || (tmp == max&&sc[i].br_lifts > sc[max_ind].br_lifts)) { max = tmp; max_ind = i; }
  68.     }
  69.     printf("%s\n%s\n%d\n", sc[max_ind].ime, sc[max_ind].drzava, max);
  70. }
  71.  
  72. int main()
  73. {
  74.     int i, j, n, broj;
  75.     skiCenter sc[20];
  76.     scanf("%d", &n);
  77.     for (i = 0; i < n; i++){
  78.         //printf("Ime:");
  79.         scanf("%s", sc[i].ime);
  80.         //printf("\nDrzava:");
  81.         scanf("%s", sc[i].drzava);
  82.         scanf("%d", &sc[i].br_lifts);
  83.        
  84.         for (j = 0; j < sc[i].br_lifts; j++){
  85.             scanf("%s", sc[i].niza[j].ime);
  86.             scanf("%d", &sc[i].niza[j].max_skijaci);
  87.             scanf("%d", &sc[i].niza[j].voUpotreba);
  88.         }
  89.     }
  90.     najgolemKapacitet(sc, n);
  91.    
  92.     return 0;
  93. }
  94.  
Add Comment
Please, Sign In to add comment