简单排序(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;
}
相关推荐
All for pursuit.3 分钟前
【矩阵-2】240.搜索二维矩阵 II
数据结构·c++·算法·leetcode
程序猿阿森8 分钟前
C语言预处理完全指南:宏定义、条件编译与头文件规范,一篇搞懂工程化编程
c语言·c++·编译
艾莉丝努力练剑12 分钟前
【AI大模型接入SDK】LLMManager类架构与智能指针选型
网络·c++·人工智能·学习·面试·架构
6Hzlia19 分钟前
【Classic 150 刷题计划】 LeetCode 209. 长度最小的子数组 | C++ 滑动窗口(毛毛虫算法)经典模板
c++·算法·leetcode
6Hzlia34 分钟前
【Classic 150 刷题计划】 LeetCode 28. 找出字符串中第一个匹配项的下标 | C++ 滑动窗口与子串比对
c++·算法·leetcode
wuminyu8 小时前
Kafka中sendfile与mmap实现机制解析
java·linux·c语言·jvm·c++
GreenTea9 小时前
vLLM 与 SGLang KV Cache 底层实现机制深度调研报告
前端·后端·算法
Bode_20029 小时前
多资源规划(含生产调度、库存管理及产能规划)的创新优化算法
算法·调度
Logic10110 小时前
C语言/数据结构位运算题解:异或XOR找出蛋糕订单中的“VIP独特口味“——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质
土司大王10 小时前
LeetCode hot100——35.搜索插入位置:Java 二分模板、左闭右开区间与插入点分析
java·算法·leetcode