题解 | 字符串加密

字符串加密

https://www.nowcoder.com/practice/e4af1fe682b54459b2a211df91a91cf3

package main

import (
	"fmt"
	"strings"
)

func main() {
	s, t := "", ""
	fmt.Scan(&s, &t)
	//统计s中已经出现的字母
	strMap := make(map[int32]bool)
	var newStr strings.Builder
	for _, ch := range s {
		if !strMap[ch] {
			//没出现过的拼接
			newStr.WriteRune(ch)
			strMap[ch] = true
		}
	}

	ch_26 := "abcdefghijklmnopqrstuvwxyz"
	tempMap := strMap
	for _, ch := range ch_26 {
		//没出现过的拼接
		if !tempMap[ch] {
			newStr.WriteRune(ch)
		}
	}
	newMap := make(map[int32]int32)
	// 保存映射关系
	for i, ch := range ch_26 {
		newMap[ch] = int32(newStr.String()[i])
	}
	// 生成密文
	var ans strings.Builder
	for _, ch := range t {
		ans.WriteRune(newMap[ch])
	}
	fmt.Println(ans.String())
}

全部评论

相关推荐

点赞 评论 收藏
分享
09-01 11:31
门头沟学院 Java
buul:七牛云的吧,感觉想法是好的,但是大家没那么多时间弄他这个啊。。。不知道的还以为他是顶尖大厂呢还搞比赛抢hc,只能说应试者的痛苦考察方是无法理解的,他们只会想一出是一出
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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