蓝桥杯OJ 算法训练 文章翻转 多种语言解法 C/C++/Python/Java

蓝桥杯OJ 算法训练 文章翻转 多种语言解法 C/C++/Python/Java

  大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博客地址为:亓官劼的博客亓官劼的博客2

本文原创为亓官劼,请大家支持原创,部分平台一直在盗取博主的文章!!!

博主目前仅在CSDN中写博客,唯一博客更新的地址为:亓官劼的博客亓官劼的博客2
博主更多优质文章可以查看文章目录:博客文章内容导航(实时更新)

题目

资源限制

时间限制:1.0s 内存限制:128.0MB

问题描述

输入一段英文,不含标点,将这一段英文以单词为单位倒序输出

输入格式

一段英文(段内不含换行),以换行符结尾。

输出格式

一段英文(段内不含换行),以换行符结尾。

样例输入

aab TTR bbc loV DDE Znr CCD

样例输出

CCD Znr DDE loV bbc TTR aab

数据规模和约定

60%的数据保证单词长度不超过20,字符长度不超过10^3
  100%的数据保证单词长度不超过105,字符长度不超过106

题解一:C/C++解法

  这题的话题目给的需求很明确,并不复杂的要求。给我们一行字符串,以换行符结束,让我们将这段字符串以单词为单位进行倒序输出。这里面不包含标点,所以就只有以空格来分割我们的单词,但是我们的C++中并没有split函数可以使用,所以我们就得自己进行处理了。对于输入的字符串进行遍历,如果不是空格,则收集起来,如果是空格,且收集的字符串的长度大于0,则我们把收集的字符串就是一个单词,我们把这个单词存放在vector中。全部获取完之后,我们把我们存储单词的vectord倒序输出即可。

完整的题解代码为:

#include <iostream>
#include <vector>
using namespace std;

int main(){
    string store = "";
    getline(cin,store);
    vector<string> word;
    int length = store.length();
    string temp = "";
//    cout<<temp.length();
    for(int i = 0; i < length; i++){
        if(store[i] != ' '){
            temp += store[i];
        } else{
            if(temp.length() > 0){
                word.push_back(temp);
                temp = "";
            }
        }
    }
    if(temp.length() > 0){
        word.push_back(temp);
        temp = "";
    }
    int num = word.size();
    for(int i = num-1; i >= 0; i--){
        cout<<word[i]<<" ";
    }
    return 0;
}

题解二:Python解法

  这题如果我们使用Python来进行解题就非常的简单了,因为Python有自带的split,我们只需要将它拆分,倒序输出即可,不需要我们手动的进行拆分了,所以我们的Python解法非常的简单,仅需4行代码。

完整的代码为:

store = input()
words = store.split(' ')
for word in words[::-1]:
    print(word,end=' ')

题解三:Java解法

  想了想,既然Python都写了,那么Java也顺便写一下解法吧!java也是有split函数的,所以我们时间将字符串以空格为分隔符进行拆开,然后输出即可。

完整代码如下:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String store = scanner.nextLine();
        String words[] = store.split(" ");
        int length = words.length;
        for(int i = length-1; i >= 0; i--)
            System.out.print(words[i]+" ");
    }
}


  大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博客地址为:亓官劼的博客亓官劼的博客2

本文原创为亓官劼,请大家支持原创,部分平台一直在盗取博主的文章!!!

博主目前仅在CSDN中写博客,唯一博客更新的地址为:亓官劼的博客亓官劼的博客2
博主更多优质文章可以查看文章目录:博客文章内容导航(实时更新)

亓官劼 CSDN认证博客专家 Python 全栈 数据结构与算法
大家好,我是亓官劼(qí guān jié),在博客中分享数据结构与算法、Python全栈开发、Java后端开发、前端、OJ题解及各类报错信息解决方案等经验。一起加油,用知识改变命运,未来可期。
若有事项需联系博主,可通过微信:qiguanjie2015 进行联系,有空会回复。
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页
实付 99.00元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值