题目描述:

设有n个正整数,将他们连接成一排,组成一个最大的多位整数。
如:n=3时,3个整数13,312,343,连成的最大整数为34331213。
如:n=4时,4个整数7,13,4,246连接成的最大整数为7424613。

输入描述:

有多组测试样例,每组测试样例包含两行,第一行为一个整数N(N<=100),第二行包含N个数(每个数不超过1000,空格分开)。

输出描述:

每组数据输出一个表示最大的整数。

示例1
输入
2
12 123
4
7 13 4 246
输出
12312
7424613
解题思路:

我原本想的是用string类的方法compare(),将较大的那个放在拼接的前面,但是这个函数的结果并不符合预期,导致第一遍只有40的测试用例通过,因为对于12,123这两个数,compare()的结果是123较大,拼接起来为12312,结果是对的,但是对于93,936这两个数,compare()的结果是936大,拼接起来的结果是93693,而93936明显更大。于是我就自己写了一个int comp(string str1,string str2);函数,直接对拼接结果进行性比较,这样找出的最大值更有参考价值。

解题代码:
#include<iostream>
#include<string.h>
using namespace std;int comp(string str1,string str2){if((str1+str2)>(str2+str1))return 1;elsereturn -1;
}int main(){int N;int i;int count;int max_index;string str[100];string Output;cin>>N;for(i=0;i<N;i++)cin>>str[i];for(count=0;count<N;count++){max_index=0;for(i=0;i<N-count;i++){if(comp(str[max_index],str[i])<0)max_index=i;}Output.append(str[max_index]);str[max_index].clear();for(int k=max_index;k<N-count;k++)str[k]=str[k+1];}cout<<Output;return 0;
}

欢迎留言交流。。。

NewCode----数串相关推荐

  1. 【计算机组成原理】十进制数串

    表示方法 1.字符串形式(用于非数值计算) 一个字节存放一个十进制的数位或者是符号位 2.(重点)压缩的十进制数串形式(BCD码) 一个字节存放两个十进制数位,符号位和数位都各占半个字节,符号位放于最 ...

  2. JAVA数独解题(九):数链法(数串、垂直)

    JAVA数独解题(九):数链法(数串.垂直) 说明 图片 算法代码 CalcEnum SuLianVerticalCalc SudoUtil 测试数据 输出结果 总结 代码详情 说明 参考文章:数独高 ...

  3. java在线编程题_阿里笔试题(2017在线编程题)-- 数串分组 --Java实现

    看到有人写了阿里的面试题,心里痒痒,好久 没搞过这些了,写着实现一下 题目 2017年3月阿里在线编程题(实习内推) 给定一串数字 判断是否存在这三个元素,它们将数字串分为四个子串,其中每个子串的数字 ...

  4. 阿里笔试题(2017在线编程题)-- 数串分组 --Java实现

    看到有人写了阿里的面试题,心里痒痒,好久 没搞过这些了,写着实现一下 题目 2017年3月阿里在线编程题(实习内推) 给定一串数字 判断是否存在这三个元素,它们将数字串分为四个子串,其中每个子串的数字 ...

  5. Javscript 实现字符数串比对排序(包含数字及中文数字)

    主要代码: /** *@description: 比较两个字符串大小 *@author: JackieZheng *@date: 2020-12-03 19:59:39 */ function com ...

  6. 《信息学奥赛一本通》回文数(Noip 1999)

    问题描述 若一个数(首位不为零)从左往右读与从右往左读都是一样,,我们就将其称之为回文数.例如:给定一个10进制数56,将56加65(即把56从右往左读),得到121是一个回文数.又如,对于十进制数8 ...

  7. 计算机存储数字,数字串在计算机内的表示与存储

    数字串在计算机内的表示与存储 人们习惯使用10进制数,而在计算机内,采用二进制表示和处理数据更方便.因此,在计算机输入和输出数据时,要进行十→二和二→十的进制转换处理,这是多数应用环境中的实际情况.而 ...

  8. 邓俊辉 数据结构与算法C++版 第十三章 串 ADT

    邓公数据结构与算法 第十三章 串 ADT 定义和特点 术语 ADT接口实现 模式匹配 问题与需求 算法测试方法 蛮力匹配 构思 蛮力匹配:版本1 蛮力匹配:版本2 蛮力匹配:性能分析 KMP算法 ne ...

  9. 组合学:使用10个数字与52个字母生成1477万个不重复的4位串码V4衍生版本

     一.主要思想(进位制思想与移位思想): { "0", "1", "2", "3", "4", &q ...

  10. php对于给定的正整数k,删数

    [题目描述] 键盘输入一个高精度的正整数N(不超过250位),去掉其中任意k个数字后剩下的数字按原左右次 序将组成一个新的非负整数.编程对给定的N和k,寻找一种方案使得剩下的数字组成的新数最小. [输 ...

最新文章

  1. 解决jQuery和其它库的冲突
  2. Linux - 手册(manual)使用 详解
  3. [密码学] RSA同模攻击与选择密文攻击
  4. QT5.11 + VS2017 环境搭建
  5. mysql innodb flush method_对innodb_flush_method的一点解释
  6. javascript 保存原函数_前端工程师必须掌握的几个JavaScript设计模式及场景应用
  7. wms仓库管理系统选型要注意哪几点?
  8. 谦虚:让你备受人们的欢迎 — 《别输在不会表达上》
  9. python构建关键词共现矩阵
  10. apt-get update “the following signatures couldn’t be verified because the public key is not avail
  11. / ./ ../的区别
  12. Python pandas.DataFrame.expanding函数方法的使用
  13. csdn博客 代码块的显示设置以及图片的插入技巧
  14. StratifiedKFold实现分层抽样
  15. 芯片电源去耦电容为什么要靠近电源放置
  16. 2021新年算法小专题—2.股票买卖利润刷题(Java)
  17. 用python来玩科学计算
  18. 【雷达通信】阵列信号处理(Matlab代码实现)
  19. Nature子刊:自闭症患者非典型的功能连接梯度
  20. 用SpringBoot轻松实现发送邮件功能

热门文章

  1. oracle 启用闪回数据库,如何启用Oracle10g闪回数据库特性
  2. centos yum安装_centos7上yum安装碰到的坑
  3. 二阶偏微分方程组 龙格库塔法_牛顿法和拟牛顿法——(书中附录B)
  4. mysql 触发器示例_MySQL触发器示例
  5. extjs弹出窗口查看文本内容-new Ext.Window
  6. 手机端调试console.log,直接引入一个js文件
  7. bootstrap源码之滚动监听组件scrollspy.js详解
  8. 算法与数据结构基础 - 堆(Heap)和优先级队列(Priority Queue)
  9. break、continue、return的区别
  10. Codeforces 765F. Souvenirs