fork(1) download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. struct student{
  4. int yu,shu,ying,id,zong;
  5. }arr[100000];
  6. void cmp(student x,student y){
  7. if(x.zong<y.zong){
  8. x.id--;
  9. y.id++;
  10. }else if(x.zong>y.zong){
  11. x.id++;
  12. y.id--;
  13. }else{
  14. if(x.yu<y.yu){
  15. x.id--;
  16. y.id++;
  17. }else if(x.yu>y.yu){
  18. x.id++;
  19. y.id--;
  20. }else{
  21. if(x.shu<y.shu){
  22. x.id--;
  23. y.id++;
  24. }else if(x.shu>y.shu){
  25. x.id++;
  26. y.id--;
  27. }else{
  28. if(x.ying<y.ying){
  29. x.id--;
  30. y.id++;
  31. }else if(x.ying>y.ying){
  32. x.id++;
  33. y.id--;
  34. }else{
  35. y.id=x.id;
  36. }
  37. }
  38. }
  39. }
  40. }
  41. long long n,brr[50000];
  42. int main(){
  43. ios::sync_with_stdio(false);
  44. cin.tie(0);
  45. cout.tie(0);
  46. cin>>n;
  47. for(int i=1;i<=n;i++){
  48. cin>>arr[i].yu>>arr[i].shu>>arr[i].ying;
  49. arr[i].zong=arr[i].yu+arr[i].shu+arr[i].ying;
  50. cout<<arr[i].zong<<endl;
  51. }
  52. for(int i=1;i<=2;i++) brr[i]=1;
  53. int o=1,l=2;
  54. do{
  55. for(int i=1;i<=n;i++){
  56. if(brr[i]==1){
  57. cmp(arr[i],arr[o]);
  58. if(o==n){
  59. o=l;
  60. l++;
  61. }
  62. o++;
  63. }
  64. }
  65. }while(prev_permutation(brr+1,brr+1+n));
  66.  
  67. return 0;
  68. }
Success #stdin #stdout 0.01s 5612KB
stdin
6
140 140 150
140 149 140
148 141 140
141 148 140
145 145 139
0 0 0
stdout
430
429
429
429
429
0