LC 1374.Generate a String With Characters That Have Odd Counts

题目描述

这是 LeetCode 上的 1374. 生成每种字符都是奇数个的字符串 ,难度为简单

给你一个整数 n,请你返回一个含 n 个字符的字符串,其中每种字符在该字符串中都恰好出现 奇数次

返回的字符串必须只含小写英文字母。如果存在多个满足题目要求的字符串,则返回其中任意一个即可。

示例 1:

1
2
3
输入:n = 4
输出:"pppz"
解释:"pppz" 是一个满足题目要求的字符串,因为 'p' 出现 3 次,且 'z' 出现 1 次。当然,还有很多其他字符串也满足题目要求,比如:"ohhh" 和 "love"。

示例 2:

1
2
3
输入:n = 2
输出:"xy"
解释:"xy" 是一个满足题目要求的字符串,因为 'x' 和 'y' 各出现 1 次。当然,还有很多其他字符串也满足题目要求,比如:"ag" 和 "ur"。

示例 3:

1
2
输入:n = 7
输出:"holasss"

提示:

  • 1 <= n <= 500

解答

方法一:模拟

题目没有规定说单个字符最大出现的次数,所以直接根据 n 的奇偶性来构造相应的字符串即可。

1
2
3
4
5
6
7
8
9
10
class Solution {
public String generateTheString(int n) {
var sb = new StringBuilder();
sb.append(((n & 1) == 1) ? 'a' : 'b');
while(--n > 0) {
sb.append('a');
}
return sb.toString();
}
}
  • 时间复杂度\(O(N)\),其中 N 为要返回的字符串的长度。

  • 空间复杂度\(O(1)\)

每题一图


LC 1374.Generate a String With Characters That Have Odd Counts
https://chen-huaneng.github.io/2023/12/13/2023-12-13-2023-12-13-lc-1374/
作者
Abel
发布于
2023年12月13日
更新于
2023年12月13日
许可协议