由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - leetcode的count and say
相关主题
请教一道Leetcode 题PIE题: Phone number to words iterative 解法
Permutation leetcode-请问一个java的问题(leetcode subsets一题)
问一个题目Leetcode Timeout
leetcode里, backtracking的time complexity怎么算,比如permutations这题目leetcode上的populate next node I and II
请教leetcode上的count and say请教下leetcode Permutations II
请教 怎样存下这个stringLeetcode书中missing range一题的答案是不是错的?
问下LeetCode上的题目:count and say这两道leetcode题有更好的答案吗?
leetcode 4sum N^3解法有时Time Limit Exceeded有时又能通过有没有人和我一样觉得leetcode不如以前了?
相关话题的讨论汇总
话题: string话题: int话题: previous话题: ret话题: return
进入JobHunting版参与讨论
1 (共1页)
r****7
发帖数: 2282
1
有类似nth permutation的数学解法么?还是说必须要从头开始推?
w*****t
发帖数: 485
2
貌似还没有这种解法
wiki上有其它的推论和公式
http://en.wikipedia.org/wiki/Look-and-say_sequence
a***e
发帖数: 413
3
我把我前后写过的代码贴一下,看有没有大牛有更好的分享下。看soulmachine的答案
看得头大,因为平时不怎么用那些STL。
而且这道题我半年前几下写好了,最近反而花了好久才写对,真是很郁闷。
class Solution {
public:
string countAndSay(int n) {
if (n==0) return "";
string res="1";
if(n==1) return res;
int c;
for (int i=2; i<=n; i++)
{
char num=res[0];
string prev;
int j=0;
while ( j {
c=0;
while (res[j]==num&&j {
c++;
j++;
}

prev=prev+to_string(c)+num;
num=res[j];

}

res=prev;
}

return res;
}
};
5个多月前写的。
class Solution {
public:
string countAndSay(int n) {
string previous;
if (n==0)
return previous;
previous = "1";
if (n==1)
return previous;
string cur;
for (int i=1;i {
int j=previous.size();
for (int k=0;k {
int c=1;
if (k+1 {
while(previous[k]==previous[k+1]&&k+1 {
c++;
k++;
}

}

cur += to_string(c)+previous[k];
}
previous = cur;
cur.clear();
}
return previous;
}
};
r****7
发帖数: 2282
4
你这三层循环看着真别捏,应该两层循环然后最后再处理一下尾巴就行了

【在 a***e 的大作中提到】
: 我把我前后写过的代码贴一下,看有没有大牛有更好的分享下。看soulmachine的答案
: 看得头大,因为平时不怎么用那些STL。
: 而且这道题我半年前几下写好了,最近反而花了好久才写对,真是很郁闷。
: class Solution {
: public:
: string countAndSay(int n) {
: if (n==0) return "";
: string res="1";
: if(n==1) return res;
: int c;

r****7
发帖数: 2282
5
这玩意原来还有一个专门的数学问题!

【在 w*****t 的大作中提到】
: 貌似还没有这种解法
: wiki上有其它的推论和公式
: http://en.wikipedia.org/wiki/Look-and-say_sequence

w*****t
发帖数: 485
6
我这有个简单点的供参考:
class Solution {
public:
string countAndSay(int n) {
string ret = "1";
for (; n > 1; --n) {
ostringstream oss;
for (int i = 0, j = 0; i < ret.size(); ) {
for (j = i; j < ret.size() && ret[i] == ret[j]; ++j);
oss << j - i << ret[i];
i = j;
}
ret = oss.str();
}
return ret;
}
};
H******i
发帖数: 5
7
class Solution:
# @return a string
def countAndSay(self, n):
if n==1:
return '1'
pre=self.countAndSay(n-1)
start=0
next=''
while start count=0
cur=pre[start]
while start count+=1
start+=1
next=next+str(count)+cur
return next
1 (共1页)
进入JobHunting版参与讨论
相关主题
有没有人和我一样觉得leetcode不如以前了?请教leetcode上的count and say
求Leetcode 3Sum 能过大数据的python解法……请教 怎样存下这个string
问一道题目问下LeetCode上的题目:count and say
LeetCode Solutions in Swift 2.1 已更新至第88题leetcode 4sum N^3解法有时Time Limit Exceeded有时又能通过
请教一道Leetcode 题PIE题: Phone number to words iterative 解法
Permutation leetcode-请问一个java的问题(leetcode subsets一题)
问一个题目Leetcode Timeout
leetcode里, backtracking的time complexity怎么算,比如permutations这题目leetcode上的populate next node I and II
相关话题的讨论汇总
话题: string话题: int话题: previous话题: ret话题: return