1374. 生成每种字符都是奇数个的字符串
文章目录
- 1374. 生成每种字符都是奇数个的字符串
- 解题思路
- Go代码
1374. 生成每种字符都是奇数个的字符串
1374. 生成每种字符都是奇数个的字符串
给你一个整数 n
,请你返回一个含n
个字符的字符串,其中每种字符在该字符串中都恰好出现 奇数次
。
返回的字符串必须只含小写英文字母。如果存在多个满足题目要求的字符串,则返回其中任意一个即可。
示例 1:
输入:n = 4
输出:“pppz”
解释:“pppz” 是一个满足题目要求的字符串,因为 ‘p’ 出现 3 次,且 ‘z’ 出现 1
次。当然,还有很多其他字符串也满足题目要求,比如:“ohhh” 和 “love”。
示例 2:
输入:n = 2
输出:“xy”
解释:“xy” 是一个满足题目要求的字符串,因为 ‘x’ 和 ‘y’ 各出现 1
次。当然,还有很多其他字符串也满足题目要求,比如:“ag” 和 “ur”。
示例 3:
输入:n = 7
输出:“holasss”
提示:
- 1 <= n <= 500
解题思路
该题没有要求返回的字符有什么限制,只要求字符出现是奇数次就行,那么返回两个不同字符即可
如果n
是奇数,直接全部返回n
个a
就符合题意了,如果n
是偶数,则返回n-1
个a
和1
个b
即可
Go代码
func generateTheString(n int) string {// 该题没有要求返回的字符有什么限制,只要求字符出现是奇数次就行,那么返回两个不同字符即可// 如果n是奇数,直接全部返回n个a就符合题意了,如果n是偶数,则返回n-1个a和1个b即可if n < 1 {return ""}if n % 2 == 0 {return buildString(n-1) + "b"} else {return buildString(n)}
}func buildString(n int) string {res := ""for i := 0 ; i < n ;i++ {res += "a"}return res
}