题目 s1 = AABCD, s2 = CDAA Return : true 给定两个字符串 s1 和 s2,要求判定 s2 是否能够被 s1 做循环移位得到的字符串包含。 思路 以S1 = ABCD 为例,对其循环移位…
分类:编程之美
编程之美——数组循环移位
编程之美——数组循环移位 题目:设计一个算法,把一个含有N个元素的数组循环右移K位,要求时间复杂度为0(N),且只允许使用两个附加变量。 具体分析请见《编程之美》这本书,下面就直接给出代码。 // xunhuan.cpp…
编程之美4.1 扩展问题2
http://blog.csdn.net/houhouzhe/article/details/6556139 对于上述地址中的不同意见: 例如q(n-1)=N-n+1/N-n+2; 因为但金刚坐在n-1 个登机客人的位置…
试读【编程之美-微软面试】 的收获和心得
程序虽然很难写,却很美妙。要想把程序写好,需要学好一定的基础知识,包括编程语言、数据结构和算法。程序写得好的人通常都有缜密的逻辑思维能力和良好的数理基础,而且熟悉编程环境和编程工具。古人说“见文如见人”,我…
编程之美----俄罗斯方块
编程之美—-俄罗斯方块 问题: 让电脑自动下俄罗斯方块游戏。 解法: 对当前的积木块,枚举它旋转后的每一个形状从每一列落下的棋盘,将该棋盘和前一个棋盘进行对比,并打分,最后取得分最高的那个形状和那一列作为电脑…
poj 2411 & 编程之美 4.2 瓷砖覆盖地板
题目链接 题意:用 1 * 2 的瓷砖覆盖 n * m 的地板,问共有多少种覆盖方式? 思路:用2进制的01表示不放还是放,第i行只和i-1行有关,枚举i-1行的每个状态,推出由此状态能达到的i行状态:如果…
编程之美1.12——“拈”游戏分析
问题: 有N块石头和两个玩家A和B,玩家A先将石头随机分成若干堆,然后按照BABA…的顺序不断轮流取石头,能将剩下的石头一次取光的玩家获胜,每次取石头时,每个玩家只能从若干堆石头中任选一堆,取这一堆石头中任意…
编程之美-初赛第二场
a题: 过小数据网络流就可以过,方法:每加一条边进行找是否可以增加流量,如果可以则输出。 代码: #include<iostream> #include<algorithm> #include&l…
编程之美2014 热身赛 题目1 : 传话游戏
时间限制:2000ms 单点时限:1000ms 内存限制:256MB 描述 Alice和Bob还有其他几位好朋友在一起玩传话游戏。这个游戏是这样进行的:首先,所有游戏者按顺序站成一排,Alice站第一位,Bob站最后一位…
《编程之美》蛮有意思的
“快速找出机器故障”直接讨论这样的数学问题: 1、一个庞大的数据列表中,每个数据都有两个备份(两个ID相同),现在某份数据丢失了一个备份,请把这个丢失的ID找出来。 如果用一个数组保存每个ID…
《编程之美》和《无以言退》
《编程之美》是微软出版的一本书。 看到了昨天的一则博文《编程之美在精益求精之间》,很感兴趣,说实话,很少看到以一种审美…
《编程之美》简单算法小结
第一题: 1 的数目 给定一个十进制正整数N, 写下从1开始,到N的所有整数,然后数一下其中出现所有“1”的个数,即求f(N)。 例如: N=2, 写下1,2,。 出现1个1; N=13, 我们写下:1,2,3,4,5,…