博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UVA10905: Children's Game(排序)
阅读量:7042 次
发布时间:2019-06-28

本文共 807 字,大约阅读时间需要 2 分钟。

题目:

题目需求:,给n个数字,将它们重新排序得到一个最大的数字,好像给出123 456 789 拼为 789456123 最大

这题可以算是一个排序题,不过排序的规则有讲究

如果想用字典序排序,显然错了,好像999123 999 , 按字典序排序999123在前面,得到的数字为999123999 , 显然没有不够999999123 大

 题目解析:冒泡排序,首先先按字典序排序,这样可以使冒泡排序的交换次数大大减小。

如果有两个数90 9,如果按字典序排序则90>9,此时比较strcat(“90”,“9”)与(“9”,”90“)的大小,使大的与小的位置交换。具体操作请看代码,一看就会明白什么意思的。

#include 
#include
#include
#include
#include
#include
#define eps 1e-9typedef long long ll;using namespace std;int n;char str[101];char a[60][101];char s2[202],s3[202];int cmp(const void *a,const void *b){ return strcmp((char *)b,(char *)a);}int main(){ while(scanf("%d",&n)!=EOF&&n!=0) { for(int i=0;i
0) { strcpy(str,a[j]); strcpy(a[j],a[j+1]); strcpy(a[j+1],str); //printf("%s %s\n",a[j],a[j+1]); } } } for(int i=0;i

 

转载地址:http://ztqal.baihongyu.com/

你可能感兴趣的文章
程序人生阶段性随笔
查看>>
《锦绣中华》发布会之苏州金鹰国际广场站
查看>>
Qtum量子链周报(4月22日-4月28日)
查看>>
【转】完全理解 redux(从零实现一个 redux)
查看>>
遇到的柯里化函数使用场景记录
查看>>
tomcat调优
查看>>
个人不足点总结
查看>>
BLS 签名和基于 BLS 签名的门限签名
查看>>
ubuntu 16.04安装LNMP环境
查看>>
用户表的演变过程
查看>>
前端须知的 Cookie 知识小结
查看>>
nodemon使用简介
查看>>
用 TypeScript 开发 Node.js 程序
查看>>
Html
查看>>
关于css层叠上下文,层叠顺序的一个案例分析
查看>>
java B2B2C 源码 多级分销springmvc mybatis多租户电子商城系统
查看>>
MySQL8.0.11的安装和Navicat连接mysql
查看>>
下载图片 复盘
查看>>
js跨站脚本
查看>>
如何从程序员到架构师?
查看>>