简单排序(sort)

1. K15773 简单排序(sort)

题目描述

给定一个字符串,请将字符串中的内容,按照字符出现次数从大到小排序,出现次数相同的字母,字典序小的排在前。请你帮忙计算并输出排序后的字符串。

输入格式

输入文件名:sort.in

输入只有一行:为一个只包含英文字母与数字的字符串,长度不超过10^5。

输出格式

输出文件名:sort.out

输出只有一行:为排序后的字符串。

输入输出样例

输入样例1:复制
复制代码
happy
输出样例1:复制
复制代码
ppahy
输入样例2:复制
复制代码
123cccaaabbddd
输出样例2:复制
复制代码
aaacccdddbb123

说明

数据范围:如题目所述。

【耗时限制】1000ms 【内存限制】256MB

代码:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
string s;
LL cnt[130];
bool cmp(const char &x,const char &y){
    if(cnt[x]!=cnt[y]) return cnt[x]>cnt[y];
    return x<y;
}
int main()
{
    freopen("sort.in","r",stdin);
    freopen("sort.out","w",stdout);
    cin>>s;
    for(LL i=0;i<s.size();i++) cnt[s[i]]++;
    sort(s.begin(),s.end(),cmp);
    cout<<s;
    return 0;
}
相关推荐
好好研究1 分钟前
学习栈和队列的插入和删除操作
数据结构·学习
彭祥.21 分钟前
Jetson边缘计算主板:Ubuntu 环境配置 CUDA 与 cudNN 推理环境 + OpenCV 与 C++ 进行目标分类
c++·opencv·分类
lzb_kkk38 分钟前
【C++】C++四种类型转换操作符详解
开发语言·c++·windows·1024程序员节
YuTaoShao1 小时前
【LeetCode 热题 100】48. 旋转图像——转置+水平翻转
java·算法·leetcode·职场和发展
生态遥感监测笔记1 小时前
GEE利用已有土地利用数据选取样本点并进行分类
人工智能·算法·机器学习·分类·数据挖掘
Tony沈哲2 小时前
macOS 上为 Compose Desktop 构建跨架构图像处理 dylib:OpenCV + libraw + libheif 实践指南
opencv·算法
刘海东刘海东2 小时前
结构型智能科技的关键可行性——信息型智能向结构型智能的转变(修改提纲)
人工智能·算法·机器学习
胖大和尚3 小时前
clang 编译器怎么查看在编译过程中做了哪些优化
c++·clang
pumpkin845143 小时前
Rust 调用 C 函数的 FFI
c语言·算法·rust
挺菜的3 小时前
【算法刷题记录(简单题)003】统计大写字母个数(java代码实现)
java·数据结构·算法