• Source
    1. #include<bits/stdc++.h>
    2.  
    3. using namespace std;
    4.  
    5. struct data
    6. {
    7. string nam;
    8.  
    9. int att,def;
    10.  
    11. }arr[22];
    12.  
    13. bool cmp(data l,data r)
    14. {
    15. if(l.att==r.att)
    16. {
    17. if(l.def==r.def)
    18. {
    19. return l.nam<r.nam;
    20. }
    21. else
    22. {
    23. return l.def<r.def;
    24. }
    25. }
    26. else
    27. {
    28. return l.att>r.att;
    29. }
    30. }
    31.  
    32. int main()
    33. {
    34. int tc,test,i,att,def;
    35.  
    36. string s[12],nam;
    37.  
    38. scanf("%d",&test);
    39.  
    40. for(tc=1;tc<=test;tc++)
    41. {
    42. for(i=1;i<=10;i++)
    43. {
    44. cin>>nam>>att>>def;
    45.  
    46. arr[i].nam = nam;
    47.  
    48. arr[i].att = att;
    49.  
    50. arr[i].def = def;
    51. }
    52.  
    53. sort(arr+1,arr+11,cmp);
    54.  
    55. for(i=1;i<=10;i++)
    56. {
    57. s[i] = arr[i].nam;
    58. }
    59.  
    60. sort(s+1,s+6);
    61.  
    62. sort(s+6,s+11);
    63.  
    64. printf("Case %d:\n(%s",tc,s[1].c_str());
    65.  
    66. for(i=2;i<=5;i++)
    67. {
    68. printf(", %s",s[i].c_str());
    69. }
    70.  
    71. printf(")\n(%s",s[6].c_str());
    72.  
    73. for(i=7;i<=10;i++)
    74. {
    75. printf(", %s",s[i].c_str());
    76. }
    77.  
    78. puts(")");
    79. }
    80.  
    81. return 0;
    82. }