标签:str size end The seq ret ping mes iss
The count-and-say sequence is the sequence of integers with the first five terms as following:
1. 1 2. 11 3. 21 4. 1211 5. 111221
1 is read off as "one 1" or 11.11 is read off as "two 1s" or 21.21 is read off as "one 2, then one 1" or 1211.
Given an integer n where 1 ≤ n ≤ 30, generate the nth term of the count-and-say sequence.
Note: Each term of the sequence of integers will be represented as a string.
Example 1:
Input: 1 Output: "1"
Example 2:
Input: 4 Output: "1211"
AC code:
class Solution {
public:
string countAndSay(int n) {
vector<string> v;
init(v, n);
return v[n-1];
}
void init(vector<string>& v, int n) {
v.push_back("1");
for (int i = 1; i <= n; ++i) {
string res = v[i-1];
char c = res[0];
string ans = "";
int num = 1;
for (int i = 1; i < res.length(); ++i) {
if (res[i] == c) {
num++;
continue;
} else {
ans = ans + to_string(num) + c;
c = res[i];
num = 1;
}
}
ans = ans + to_string(num) + c;
v.push_back(ans);
}
}
};
标签:str size end The seq ret ping mes iss
原文地址:https://www.cnblogs.com/ruruozhenhao/p/9787086.html