01串排序
01串排序
今天写了一道水题,很水,却用一早上时间。
写这篇博客主要是对如今网上的copy现象做以鄙视,搜题点进去各种答案,一看全tm一模一样,还tm不对!!!
好了,看题
将 01 串首先按长度排序,长度相同时,按 11 的个数多少进行排序,11 的个数相同时再按 ASCII 码值排序(字典序)。
输入格式
第一行输入一个整数 n (1≤n≤100),表示字符串的个数。
输入数据中含有一些 01 串,01 串的长度不大于 256 个字符。
输出格式
重新排列 01 串的顺序,使得串按基本描述的方式排序,然后依次输出。
不多说 上代码,我刚开始没写出来的原因是字符串长度定义写错了,还写了对拍程序一直找不到错误,唉~所以记得是大于等于256哦,别忘了。
#include <bits/stdc++.h>
int N;
typedef struct {char str[300];int len = 0;int one = 0;
} Ss;
int main() {scanf("%d", &N);Ss sss[500];//输入for (int i = 0; i < N; i++) {scanf("%s", sss[i].str);sss[i].len = strlen(sss[i].str);int t = 0;fo
更多推荐
01串排序
发布评论