题解 | #单词倒排#

单词倒排

https://www.nowcoder.com/practice/81544a4989df4109b33c2d65037c5836

package main

import (
	"bufio"
	"fmt"
	"os"
	"strings"
)

func main() {
	r := bufio.NewReader(os.Stdin)
	b, _, _ := r.ReadLine()
	s := string(b)

	var flag bool
	var result []rune
	for _, v := range s {
		if !isWord(v) {
			if !flag {
				result = append(result, ' ')
			}
			flag = true
		} else {
			flag = false
			result = append(result, v)
		}

		// a###b -> a#b
	}

	s = string(result)
	ls := strings.Split(s, " ")
	for i := len(ls) - 1; i >= 0; i-- {
		fmt.Printf("%s ", ls[i])
	}
}

func isWord(w rune) bool {
	return (w >= 'A' && w <= 'Z') || (w >= 'a' && w <= 'z')
}

全部评论

相关推荐

淬月星辉:专利是什么?至少描述一下吧,然后把什么计算机二级、普通话这种拉低格调的证书删掉,不然hr以为你没东西写
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务