Advertisement
Malinovsky239

Untitled

Jan 18th, 2012
157
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.21 KB | None | 0 0
  1. #include<cstdio>
  2. #include<string>
  3. #include<algorithm>
  4.  
  5. using namespace std;
  6.  
  7. string avto[100];
  8. int spirit[100];
  9. char s[7];
  10. int shtraf[100];
  11. pair <int, string> a[100];
  12.  
  13. int main () {
  14.     freopen("input.txt", "r", stdin);
  15.     freopen("output.txt", "w", stdout);
  16.     int n, num;
  17.     scanf("%d", &n);
  18.     for (int i = 0; i<n; i++) {
  19.         scanf("%s %d", &s, &num);
  20.         avto[i] = s;
  21.         spirit[i] = num;
  22.     }
  23.     for (int i = 0; i<n; i++) {
  24.         if (spirit[i] <= 70 ) shtraf[i] = 0;
  25.         if ((spirit[i] > 70 ) && (spirit[i] <= 80 )) shtraf[i] = 100;
  26.         if ((spirit[i] > 80 ) && (spirit[i] <= 100 )) shtraf[i] = 300;
  27.         if ((spirit[i] > 100 ) && (spirit[i] <= 120 )) shtraf[i] = 1000;
  28.         if (spirit[i] > 120 ) shtraf[i] = 2000;
  29.     }
  30.  
  31.     for (int i = 0; i<n; i++) {
  32.         a[i].first = shtraf[i];
  33.         a[i].second = avto[i];
  34.     }
  35.  
  36.     for (int i = 0; i<n; i++) {
  37.         for (int j = 0; j<n; j++) {
  38.             if ((a[i].second == a[j].second) && (a[i].second != "0") && (i != j)) {
  39.                 a[j].second = "0";
  40.                 a[i].first = a[i].first + a[j].first;
  41.                 a[j].first = 0;
  42.             }
  43.         }
  44.     }
  45.     sort(a, a+n);
  46.     reverse(a, a + n);
  47.     for (int i = 0; i<n; i++) {
  48.         if (a[i].second != "0"){
  49.             printf("%s %d", a[i].second.c_str(), a[i].first);
  50.             printf("\n");
  51.         }
  52.     }
  53.     return 0;
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement