本文最后更新于:2020年4月11日 下午

题意简述

  • 给定两个变量$N$和$K$

  • 给定一个长度为$N$的字符串

  • 将这个字符串的前$K$项按照字典序排序


题目分析

我们可以定义一个$char$型的字符数组去存放这个字符串,剩下的问题就是怎么按照字典序排序。

这个时候,C++ STL库里面的sort函数就起到作用了,他的格式是:

sort(容器名称+起始下标,容器名称+终止下标,自定义排序函数(可有可无))

如果没有自定义排序函数,那么就是默认的升序排列。我们这道题就是这样。


$Code$

#include<bits/stdc++.h>	//万能头
using namespace std;
int n,k;
char a[1000];	//一个字符数组用于存储 
int main(){
	scanf("%d%d",&n,&k);	//输入
	for(int i=0;i<=n;i++){
		scanf("%c",&a[i]);
	}
	sort(a,a+k);	//sort排序
	for(int i=0;i<=n;i++){
		printf("%c",a[i]);
	} 
}

本文在 CC BY-NC-ND 4.0( https://creativecommons.org/licenses/by-nc-nd/4.0/deed.zh )协议 的前提下,禁止超过文章30%字数的摘录(对于不超过文章30%字数的摘录,要求在醒目位置注明原文作者与原文链接),同时,在未经作者本人手写签名许可的情况下,禁止任何形式的全文转载,禁止发布任何基于本文的再创作。

题解 AT3861 【ファイティング・タカハシ】 上一篇
题解 AT888 【ウサギとカメ】 下一篇
本博客采用 xCss 的 Valine 评论系统,搭配了 Valine-Admin,垃圾评论将会被过滤。所以在评论的时候,请注意您的语言。如果您的评论被过滤但并非垃圾评论,请发邮件到 luosiweimail@gmail.com 进行申诉。