首页 > 试题广场 >

单词倒排

[编程题]单词倒排
  • 热度指数:365722 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解

对字符串中的所有单词进行倒排。

说明:

1、构成单词的字符只有26个大写或小写英文字母;

2、非构成单词的字符均视为单词间隔符;

3、要求倒排后的单词间隔符以一个空格表示;如果原字符串中相邻单词间有多个间隔符时,倒排转换后也只允许出现一个空格间隔符;

4、每个单词最长20个字母;

数据范围:字符串长度满足

输入描述:

输入一行,表示用来倒排的句子



输出描述:

输出句子的倒排结果

示例1

输入

I am a student

输出

student a am I
示例2

输入

$bo*y gi!r#l

输出

l r gi y bo
s = input()
for i in s:
    if not i.isalnum():
        s = s.replace(i, ' ')
l = s.split()
print(' '.join(l[::-1]))

编辑于 2024-04-15 16:24:58 回复(0)
s=input()
processed_s = ''.join(c if c.isalpha() else ' ' for c in s)
print(' '.join(processed_s.split()[::-1]))

编辑于 2024-03-05 21:26:09 回复(0)
inputStr = input()
inputStr = inputStr+' '
s = ''
allList = []
for i in inputStr:
    if i.isalpha():
        s += i
    else:
        allList.append(s)
        s = ''

print(' '.join(allList[::-1]))

发表于 2024-02-19 11:46:18 回复(0)
a = input().strip()
b, c = "", ""
for i in a:
    if i.isalpha():
        c += i
    else:
        b = c + " " + b
        c = ""
b = c + " " + b
print(b.strip())

编辑于 2023-12-15 20:46:42 回复(0)
A = list(input())
B = []
temp = ''
for i in range(len(A)):
   

    if 'A'<=A[i]<='Z' or 'a'<=A[i]<='z':
        temp += str(A[i])
        if (i == (len(A) -1) and temp != ''):
            B.append(temp)
    else:
        if temp != '':
            B.append(temp)
        if (i>=1 and A[i-1] != ' '):   #判断前一个不为空格时,再增加空格
            B.append(' ')

        temp = ''

strC = ''
length = len(B)
for j in range(length):
   
    strC += str(B[length-j-1])
 

print(strC)
发表于 2023-11-17 10:53:55 回复(0)
import re

string = input().strip()
a = re.sub("[^a-zA-Z]+"," ",string).split()[::-1]
print(" ".join(a))
发表于 2023-10-17 21:12:19 回复(0)
只能到百分之九十不过简单
str1 = input().split()
num = 0
for i in str1:
    num+=1
print(" ".join(str1[num::-1]))
发表于 2023-10-17 20:27:24 回复(0)
string = input()
reversed_string = ''
for alpha in string:
    if alpha.isalpha():
        reversed_string = reversed_string + alpha
    else:
        reversed_string = reversed_string + ' '
reversed_string = reversed_string.split()
print(' '.join(reversed_string[::-1]))

发表于 2023-09-17 14:39:39 回复(0)
import sys

for line in sys.stdin:
    a = line.split()
    b=[]
    sta=''
    for i in a:
        st=''
        for j in i:
            if 'A'<=j<='Z' or 'a'<=j<='z':
                st+=j
            else:
                st+=' '
        sta+=' '
        sta+=st
    b=list(sta.split(' '))
    print(' '.join(b[::-1]))
发表于 2023-08-29 09:31:00 回复(0)
s = input()

for i in range(len(s)):#非字母处理成空格
    if s[i].isalpha():
        pass
    else:
        s = s.replace(s[i], ' ')
s=s.strip()
for i in range(0,len(s)):#多个连续空格替换成1个空格
    if s[i]==' ' and s[i+1]==' ':
        s=s.replace(s[i+1],'')
l_s =s.split(' ')#去除首位空格
l_s = l_s[::-1]#单词顺序反转
resp = ' '.join(l_s)#单词用空格拼接
print(resp)
发表于 2023-07-30 16:36:28 回复(0)
正则,强行一行(不会其它算法
print(' '.join(re.findall('[a-zA-Z]+',input())[::-1]))


发表于 2023-07-25 17:39:16 回复(0)
正则表达式秒杀
import re
fd = re.findall('\w+',input())
while(fd): print(fd.pop(),end = " ")


发表于 2023-07-20 21:28:22 回复(0)
import re

input_str = input()
new_str = ''
for i in input_str:
    if i.isalpha():
        new_str += i
    else:
        new_str += ' '

new_str = re.sub(' +', ' ', new_str)
str_list = new_str.split(' ')[::-1]
print(' '.join(str_list))

发表于 2023-07-05 17:13:35 回复(0)
ji = input()
i = 0
for i in range(i, len(ji)):
    if ji[i].isalpha():
        continue
    else:
        ji = ji.replace(ji[i]," ")
ji = ji.strip().split(' ')
print(' '.join(ji[::-1]))
发表于 2023-07-01 19:47:37 回复(0)
a = input()
for z in a:
    if z.isalpha() == False:
        a = a.strip().replace(z, " ")
b = a.split()
b.reverse()
for i in b:
    print(i, end=" ")

发表于 2023-06-10 17:08:34 回复(0)
s =input()
for i in s:
    if ord(i) not in range(65, 91) and ord(i) not in range(97, 123):
        s = ' '.join(s.split(i))
s = ' '.join(s.split(' ')[::-1])
print(s)

发表于 2023-05-30 16:25:00 回复(0)
text=input()

res=''
nextletter=0
for i in text:
    if i.isalpha():
        res+=i
        nextletter=1
    else:
        res+=' '*nextletter
        nextletter=0
for i in res.split(' ')[::-1]:
    print(i,end=' ')

发表于 2023-04-19 14:31:41 回复(0)
print(' '.join(''.join(map(lambda x:x if x.isalpha() else ' ', input())).split()[::-1]))
发表于 2023-04-14 22:42:05 回复(0)

问题信息

难度:
47条回答 63692浏览

热门推荐

通过挑战的用户

查看代码