Discuz! Board

 找回密码
 立即注册
查看: 677|回复: 0

20220930课堂例题-有趣的排序

[复制链接]

574

主题

758

帖子

243万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2435189

烈空座 Lv:100
发表于 2022-9-30 21:56:38 | 显示全部楼层 |阅读模式
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int s=0;
  4. int a[10]={123,321,121,211,112,222,132,223,311,221};

  5. int qh(int n)
  6. {
  7.         s = 0;// 此处应清零
  8.     for(int i=0;n>0;i++)
  9.         {
  10.         s=s+n%10;
  11.         n=n/10;
  12.     }
  13.     return s;
  14. }

  15. bool cmp(int x,int y)
  16. {
  17.     if(qh(x)!=qh(y)) return qh(x)>qh(y);
  18.     else return x>y;
  19. }

  20. int main()
  21. {
  22.     sort(a,a+10,cmp);
  23.     for(int i=0;i<=9;i++)        cout<<a[i]<<" ";     
  24.     return 0;
  25. }
复制代码


回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|DiscuzX

GMT+8, 2025-2-12 19:18 , Processed in 0.050790 second(s), 28 queries .

Powered by Discuz! X3.4

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

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