JSK-16016 单词排序排序

Posted 新海岛Blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSK-16016 单词排序排序相关的知识,希望对你有一定的参考价值。

单词排序
小红学会了很多英文单词,妈妈为了帮小红加强记忆,拿出纸、笔,把 N 个单词写在纸上的一行里,小红看了几秒钟后,将这张纸扣在桌子上。妈妈问小红:“你能否将这 N 个单词按照字典排列的顺序,从小到大写出来?”小红按照妈妈的要求写出了答案。现在请你编写程序帮助妈妈检查小红的答案是否正确。注意:所有单词都由小写字母组成,开头字母全都不相同,单词两两之间用一个空格分隔。
输入格式
输入包含两行。
第一行仅包括一个正整数 N(0<N≤26)。
第二行包含 N 个单词,表示妈妈写出的单词,两两之间用一个空格分隔。单个单词长度不超过 10。
输出格式
输出仅有一行——针对妈妈写出的单词,按照字典排列的顺序从小到大排列成一行的结果,单词两两之间用一个空格分隔。
样例输入
4
city boy tree student
样例输出
boy city student tree
题目来源
2016 年海淀区中小学生信息学奥林匹克竞赛

问题链接JSK-16016 单词排序
问题描述:(略)
问题分析
????这是一个排序问题,还是用C++语言来实现比较方便。
程序说明
????题面很坑,说好的“输出,单词两两之间用一个空格分隔”,结果让俺格式错误一次,为什么输出的每个单词后面需要一个空格?
参考链接:(略)
题记:能不用数组就不用数组,存储要能省则省。

AC的C语言程序如下:

/* JSK-16016 单词排序 */

#include <bits/stdc++.h>

using namespace std;

const int N = 26;
string s[N];

int main()
{
    int n;
    cin >> n;
    for(int i = 0; i < n; i++)
        cin >> s[i];

    sort(s, s + n);

    // 输出结果
    for(int i = 0; i < n; i++)
            cout << s[i] << " ";
    cout << endl;

    return 0;
}

以上是关于JSK-16016 单词排序排序的主要内容,如果未能解决你的问题,请参考以下文章

第五周 英文单词排序

从搜索文档中查找最小片段的算法?

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

对输入的单词进行排序

第十六周 项目4--英语单词的基数排序