摘要:
剑指Offer - 九度1362 - 左旋转字符串(Move!Move!!Move!!!)2013-11-23 03:05题目描述:汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定它!输入:多组测试数据,每个测试数据包含一个字符序列S和非负整数K。其中S的长度不超过1000。输出:对应每个测试案例,输出新序列。样例输入:UDBOJ 4abba 1样例输出:JU 阅读全文
摘要:
剑指Offer - 九度1361 - 翻转单词顺序2013-11-23 02:45题目描述:JOBDU最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?输入:每个测试案例为一行,表示一句英文句子。我们保证一个句子的单词数不会超过600,每个单词的长度也不会超过30。但是需要注意的是Fish 阅读全文
摘要:
剑指Offer - 九度1354 - 和为S的连续正数序列2013-11-23 02:02题目描述:小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列? Good Luck!输入:输入有多组数据。每组数据仅包括1个整数S(S= 1,2 * a + n - 1 >= n + 1 > n,于是n 4 #include 5 阅读全文
摘要:
剑指Offer - 九度1351 - 数组中只出现一次的数字2013-11-23 01:23题目描述:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。输入:每个测试案例包括两行:第一行包含一个整数n,表示数组大小。2 4 using namespace std; 5 6 int main() 7 { 8 int *a = NULL; 9 int n, i;10 int r1, r2;11 int r;12 int bit;13 14 while(scanf("%d", &n) == 1){15... 阅读全文
摘要:
剑指Offer - 九度1350 - 二叉树的深度2013-11-23 00:54题目描述:输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。输入:第一行输入有n,n表示结点数,结点号从1到n。根结点为1。 n left), max_depth(r->right)) + 1; 实际上由于树的节点个数一开始就指定了,所以直接用数组存数据,用下标当指针就行了,coding更方便。题目中节点数n的数据范围居然只有10,我都怀疑应该是10000或者1000错写成10了。 但有一点要注意,根节点如果不指定为1的话,是需要我们自己 阅读全文