当前位置:网站首页>LeetCode 1374.生成每种字符都是奇数个的字符串
LeetCode 1374.生成每种字符都是奇数个的字符串
2022-08-01 18:11:00 【Tisfy】
【LetMeFly】1374.生成每种字符都是奇数个的字符串
力扣题目链接:https://leetcode.cn/problems/generate-a-string-with-characters-that-have-odd-counts/
给你一个整数 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
方法一:构造
- 如果字符串的长度为奇数,那么字符串中每个字符都是
a
就能满足题目要求; - 如果字符串的长度为偶数( n n n),那么 n − 1 n-1 n−1为奇数,返回 n − 1 n-1 n−1个
a
和 1 1 1个b
就能满足题目要求。
(PS: 可使用语法糖——三木运算符 一行代码解决)
- 时间复杂度 O ( n ) O(n) O(n)
- 空间复杂度 O ( 1 ) O(1) O(1)
AC代码
C++
class Solution {
public:
string generateTheString(int n) {
return n % 2 ? string(n, 'a') : string(n - 1, 'a') + 'b';
}
};
同步发文于CSDN,原创不易,转载请附上原文链接哦~
Tisfy:https://letmefly.blog.csdn.net/article/details/126093645
边栏推荐
猜你喜欢
随机推荐
AntDB数据库亮相24届高速展,助力智慧高速创新应用
【Day_08 0426】求最小公倍数
阿里云的域名和ip绑定
opencv如何实现图像倾斜校正
OpenCV安装、QT、VS配置项目设置
QT_Event class
What is the implementation principle of Go iota keyword and enumeration type
Leetcode73. 矩阵置零
国标GB28181协议EasyGBS平台兼容老版本收流端口的功能实现
opencv语法Mat类型总结
极化微波成像概述2
Leetcode75. 颜色分类
University of California | Inverse Reinforcement Learning from Different Third-Person Videos via Graph Abstraction
Solve the problem that MySQL cannot insert Chinese data
中信证券是国内十大券商吗?怎么开户安全?
QLineEdit learning and use
golang json 返回空值
QPalette palette, frame color fill
8月微软技术课程,欢迎参与
Leetcode74. Search 2D Matrix