LeetCode --- ---各直列ストリングの文字が文字列の奇数のある生成

各文字の文字列が奇数の生成します

タイトル

あなたの整数を与える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"

出典:滞在ボタン(LeetCode)

リンクhttps://leetcode-cn.com/problems/generate-a-string-with-characters-that-have-odd-counts

すべてのネットワークからの控除が著作権を保有。商業転載は、ソースを明記してください許可公式、非商用の転載をご連絡ください。


問題解決のためのアイデア

1、先循环 n - 1, 对 字母 a 进行拼接
2、判断 n 是否是奇数
    2、1 如果是奇数,再拼接一个 a 即可
    2、2 若不是奇数,再拼接一个其他字母即可

若しくは

問題へのより良いバックル力ソリューション

1、判断 n 是否是奇数
1、1、如果是奇数,直接对字母 a 使用 repeat 方法复制 n 次
1、2、如果是不是奇数,直接对字母 a 使用 repeat 方法复制 n - 1 次
再拼接一个其他字母即可

問題の解決策

let generateTheString = function(n) {
    let str = ''
    // 先循环 n - 1, 对 字母 a 进行拼接
    for (let i = 0; i < n - 1; i++) {
        str += 'a'   
    }
    // 判断 n 是否是奇数
    if (n % 2) {
        // 如果是奇数,再拼接一个 a 即可
        return str += 'a'
    }
    // 若不是奇数,再拼接一个其他字母即可
    return str += 'b'
    
}

若しくは

問題へのより良いバックル力ソリューション

let generateTheString = function(n) {
    let str = ''
    // 先循环 n - 1, 对 字母 a 进行拼接
    for (let i = 0; i < n - 1; i++) {
        str += 'a'   
    }
    // 判断 n 是否是奇数
    if (n % 2) {
        // 如果是奇数,再拼接一个 a 即可
        return str += 'a'
    }
    // 若不是奇数,再拼接一个其他字母即可
    return str += 'b'
    
}

おすすめ

転載: www.cnblogs.com/linjunfu/p/12652658.html