038 - Count and Say

原创 2015年11月19日 17:05:32

The count-and-say sequence is the sequence of integers beginning as follows:
1, 11, 21, 1211, 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, generate the nth sequence.

Note: The sequence of integers will be represented as a string.



数和说,这题目够无聊的

比如1211 我们会说1个1, 1个2, 2个1 既转换车概念111221


char* countAndSay(int n) 
{
	char *ret = (char *)calloc(sizeof(char), 8192);
	char *tmp = (char *)calloc(sizeof(char), 8192);
	char buff[8];
	ret[0] = '1';
	if (n == 1) return ret;
	n--;
	while (n--) {
		char *p = ret;
		char *move;
		char *pp = tmp;
		while (*p) {
			char say = p[0];
			int count = 0;
			move = p;
			while (move[count] == *p) {
				count++;
			}
			snprintf(buff, 8, "%d%c", count, say);
			strcat(tmp, buff);
			p += count;
		}
		memcpy(ret, tmp, strlen(tmp));
		tmp[0] = 0;
	}
	free(tmp);
	return ret;
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

[LeetCode] 038. Count and Say (Easy) (C++/Python)

[LeetCode] 038. Count and Say (Easy) (C++/Python)
  • hcbbt
  • hcbbt
  • 2015年07月30日 10:04
  • 1823

LeetCode 038 Count and Say

题目 Given n, generate all structurally unique BST's (binary search trees)...
  • seawade
  • seawade
  • 2014年08月19日 08:52
  • 492

leetcode 038 Count and Say

leetcode 038 Count and Say
  • hahenla2015
  • hahenla2015
  • 2015年10月09日 11:34
  • 64

leetcode_c++:Count and Say(038)

The count-and-say sequence is the sequence of integers beginning as follows: 1, 11, 21, 1211, 11122...
  • mijian1207mijian
  • mijian1207mijian
  • 2016年08月06日 14:28
  • 79

LeetCode 038 Count and Say

1, 11, 21, 1211, 111221, ... 意思为第一个为1,那么第二个就表示为第一个为1个1,所有为11,第三个就是来描述第二个的,有2个1,那么就是21,第四个来描述第三个,为1个...
  • a605907914
  • a605907914
  • 2015年12月24日 14:21
  • 114

leetcode 038 —— Count and Say

The count-and-say sequence is the sequence of integers beginning as follows: 1, 11, 21, 1211, 11122...
  • ziquanbang
  • ziquanbang
  • 2015年07月15日 21:45
  • 94

【LeetCode-面试算法经典-Java实现】【038-Count and Say(计数和表述)】

【038-Count and Say(计数和表述)】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题  The count-and-say sequence is the se...
  • DERRANTCM
  • DERRANTCM
  • 2015年07月28日 05:59
  • 2441

LeetCode --- 38. Count and Say

题目链接:Count and Say The count-and-say sequence is the sequence of integers beginning as follows: ...
  • makuiyu
  • makuiyu
  • 2015年02月05日 23:33
  • 2371

LeetCode 38 : Count and Say (Java)

解题思路:我表示这道题对我来说关键就是理解题意。。。真的没理解题意,网上查了才恍然大悟。首先说一下题意。n=1时输出字符串1;n=2时,数上次字符串中的数值个数,因为上次字符串有1个1,所以输出11;...
  • changetocs
  • changetocs
  • 2015年12月02日 22:50
  • 1104

leetcode 38 Count and Say C++

三个循环,总感觉很慢。。。 string countAndSay(int n) { if(!n) return ""; string str = "1"; ...
  • a2331046
  • a2331046
  • 2016年06月08日 10:28
  • 350
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:038 - Count and Say
举报原因:
原因补充:

(最多只允许输入30个字)