标签:2-2 exist correct ESS int str style runtime help
Given two integers A and B, return any string S such that:
S has length A + B and contains exactly A ‘a‘ letters, and exactly B ‘b‘ letters;‘aaa‘ does not occur in S;‘bbb‘ does not occur in S.
Example 1:
Input: A = 1, B = 2
Output: "abb"
Explanation: "abb", "bab" and "bba" are all correct answers.
Example 2:
Input: A = 4, B = 1
Output: "aabaa"
Note:
0 <= A <= 1000 <= B <= 100S exists for the given A and B.
class Solution { public: string strWithout3a3b(int A, int B) { if(A <= B) { return helper("b","a", B, A); } return helper("a","b", A, B); } string helper(string more, string less, int m, int l){ string ret = ""; if( m - l > l) { //assert(m - l <= 3); for(int i=0; i<l; i++){ ret += more + more + less; } for(int i=0; i< m - l - l; i++) { ret += more; } } else { for(int i=0; i<m-l; i++) { ret += more + more + less; } for(int i=0; i<2*l-m; i++){ ret += more + less; } } return ret; } };
LC 984. String Without AAA or BBB
标签:2-2 exist correct ESS int str style runtime help
原文地址:https://www.cnblogs.com/ethanhong/p/10352642.html