题解 | #单词倒排#

单词倒排

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')
}

全部评论

相关推荐

喜欢疯狂星期四的猫头鹰在研究求职打法:短作业优先
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务