Discuz! Board

 找回密码
 立即注册
查看: 765|回复: 1

无聊的排序

[复制链接]

49

主题

70

帖子

23万

积分

论坛元老

Rank: 8Rank: 8

积分
232976

大王燕 Lv:51
发表于 2022-9-30 20:04:23 | 显示全部楼层 |阅读模式
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int s,sum=0,i,n;
  4. int b[10]={123,321,121,211,112,222,132,223,311,221};
  5. int szh(int s)
  6. {
  7.         while(s!=0)
  8.         {
  9.                 sum+=s%10;
  10.                 s=s/10;
  11.         }
  12.         return sum;
  13. }
  14. bool cmp(int a,int b)
  15. {
  16.         if(szh(a)!=szh(b))
  17.         {
  18.                 return szh(a)>szh(b);
  19.         }
  20.         else
  21.         {
  22.                 return a>b;
  23.         }
  24. }
  25. int main()
  26. {
  27.         sort(b,b+10,cmp);
  28.         for(int i=0;i<10;i++)
  29.         {
  30.                 cout<<b[i]<<" ";
  31.          }
  32. }
复制代码


回复

使用道具 举报

49

主题

70

帖子

23万

积分

论坛元老

Rank: 8Rank: 8

积分
232976

大王燕 Lv:51
 楼主| 发表于 2022-9-30 20:07:23 | 显示全部楼层
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int a[10],j,i,t;
  4. bool cmp(int a,int b)
  5. {
  6.         if(a%10!=b%10)
  7.         {
  8.                 return a%10>b%10;
  9.         }
  10.         else
  11.         {
  12.                 return a<b;
  13.         }
  14. }
  15. int main()
  16. {
  17.     for(i=0;i<10;i++)
  18.     {
  19.         cin>>a[i];
  20.     }
  21.     sort(a,a+10,cmp);
  22.         for(i=0;i<10;i++)
  23.     {
  24.         cout<<a[i]<<" ";
  25.     }
  26.     return 0;
  27. }
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|DiscuzX

GMT+8, 2025-2-13 05:03 , Processed in 0.050108 second(s), 28 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.. 技术支持 by 巅峰设计

快速回复 返回顶部 返回列表