Untitled
Never
#include <stdio.h> #include <stdlib.h> #include <string.h> int catamount, food; typedef struct _cat { char name[35]; int occu; int age; } cat; int cmp(const void *a, const void *b); int main(void) { cat cats[100100]; while (scanf("%d %d", &catamount, &food) != EOF) { char temp[50]; for (int i = 0; i < catamount; i++) { scanf("%s %s %d", cats[i].name, temp, &(cats[i].age)); switch (temp[0]) { case 'e': cats[i].occu = 1; break; case 'n': cats[i].occu = 2; break; case 'k': cats[i].occu = 3; break; case 'w': cats[i].occu = 4; break; case 'a': cats[i].occu = 5; break; case 'm': cats[i].occu = 6; break; case 'd': cats[i].occu = 7; break; case 'l': cats[i].occu = 8; break; } } qsort(cats, catamount, sizeof(cat), cmp); for (int j = 0; j < food && j < catamount; j++) printf("%s\n", cats[j].name); } return 0; } int cmp(const void *a, const void *b) { cat A = *(cat *)a; cat B = *(cat *)b; if (A.occu == B.occu) { if (A.age == B.age) return strcmp(A.name, B.name); else if (A.age < B.age) return A.occu == 5 ? -1 : 1; else if (A.age > B.age) return A.occu == 5 ? 1 : -1; } else if (A.occu < B.occu) return -1; else if (A.occu > B.occu) return 1; }
Raw Text
-
Body Boost Keto ACV Gummies (Scam Or Legit) Read All About Details!!
2 min ago
-
huoijijg
3 min ago
-
https://www.facebook.com/TimMcgrawWeightLossGummiesUS/
4 min ago
-
aswdefrgfthy
6 min ago
-
https://www.facebook.com/InchagrowMaleEnhancementInUS/
7 min ago
-
بالأوقات الصعبة مثل الموسم
8 min ago
-
Breaking news - Update 1 - 06/10/2023 09:18:30
8 min ago
-
https://www.outlookindia.com/outlook-spotlight/body-boost-keto-acv-gummies-shark-tank-cost-reviews-2
10 min ago
-
Lainey Wilson Keto Gummies
14 min ago
-
Untitled
15 min ago