南邮 OJ 1024 01排序
来源:互联网 发布:淘宝开店协议点同意 编辑:程序博客网 时间:2024/05/29 02:08
01排序
时间限制(普通/Java) : 1000 MS/ 3000 MS 运行内存限制 : 65536 KByte
总提交 : 935 测试通过 : 351
总提交 : 935 测试通过 : 351
比赛描述
将01串首先按长度排序,长度相同时,按1的个数多少进行排序,1的个数相同时再按ASCII码值排序。
输入
输入数据中含有一些01串,01串的长度不大于256个字符。
输出
重新排列01串的顺序。使得串按基本描述的方式排序。
样例输入
10011111
00001101
1010101
1
0
1100
样例输出
0
1
1100
1010101
00001101
10011111
题目来源
ZJUT
#include <iostream>#include <string>#include <algorithm>#define MAXNUM 256using namespace std;bool compareBy1s(string str0,string str1){if(count(str0.begin(),str0.end(),'1')<count(str1.begin(),str1.end(),'1')){return 1;}else if(count(str0.begin(),str0.end(),'1')>count(str1.begin(),str1.end(),'1')){return 0;}else{return str0<str1;}}bool compare(string str0,string str1){if(str0.length()<str1.length()){return 1;}else if(str0.length()>str1.length()){return 0;}else{return compareBy1s(str0,str1);}}int main(void){string str[MAXNUM];int i=0,n=0;while(cin>>str[n++]);--n;stable_sort(str,str+n,compare);for(i=0;i<n;++i){cout<<str[i]<<endl;}}
0 0
- 南邮 OJ 1024 01排序
- 南邮 OJ 1023 字符串排序
- 南邮 OJ 1064 快速排序
- 南邮 OJ 1066 堆排序
- 南邮 OJ 1110 奇数排序
- 南邮 OJ 1181 字符排序
- 南邮 OJ 1736 排序问题
- 南邮 OJ 1061 简单选择排序
- 南邮 OJ 1062 直接插入排序
- 南邮 OJ 1115 路径图排序 【绿色】
- 南邮 OJ 1683 股价排序问题
- 南邮 OJ 1949 比赛成绩排序问题
- UVa OJ 152 排序?
- 华为OJ:分段排序
- hdu-oj 1106 排序
- OJ 1185 特殊排序
- OJ 1054 字符排序
- 华为OJ 字符串排序
- POJ 1035 Spell checker(暴力)
- 剑指offer_面试题9_斐波那契数列
- hdoj 1286找新朋友
- Children of the Candy Corn(POJ--3083
- 覆盖度统计及测试流程
- 南邮 OJ 1024 01排序
- COPY 构建亿级前端读服务
- cocos2dx3.0rc导出自定义类到lua的方法详细步骤
- 7. Document write() 方法
- HDU 1142(djstar+记忆化搜索)
- 程序员是否必须会算法
- C语言变长参数的认识以及宏实现
- windows 判断环境变量有无输入正确 echo %JAVA_HOME%
- [深入理解Android卷二 全文-第二章]深入理解Java Binder和MessageQueue