计蒜客
xdfu
这个作者很懒,什么都没留下…
展开
-
计蒜客第16题---爬楼梯
假设你现在正在爬楼梯,楼梯有n级。每次你只能爬1级或者2级,那么你有多少种方法爬到楼梯的顶部? 格式: 第一行输入一个数n(n<=50),代表楼梯的级数。 接下来一行输出你的方法总数。 样例1 输入: 5 输出: 8 很容易想到这道题可以用递归的方法: 分析:假设从底走到第n级的走法有f(n)种,走到第n级有两个方法,一个是从(n-1)级走一步,另一个是从第(n-转载 2015-07-27 10:22:01 · 835 阅读 · 0 评论 -
计蒜客第6题---泥塑课
小米是一个幼儿园老师,每学期的泥塑课上,她都会给每个学生发不超过250立方厘米的等量橡皮泥,教大家做泥塑。在上课过程中,她发现每个班都恰好有一个小朋友会去抢另一个小朋友的橡皮泥,于是她决定,在正式开始做泥塑前,让大家把手里的橡皮泥都捏成一个立方体,并且测量手里捏好的橡皮泥的长、宽和高。这样,她就可以知道谁被谁抢了橡皮泥了。 小米老师在不同的学期可能会带一个班或者同时带多个班,因此输入数据可能有一组原创 2015-07-23 19:54:23 · 723 阅读 · 0 评论 -
计蒜客第12题---最后一个单词的长度
给定由大写,小写字母和空格组成的字符串,返回最后一个单词的长度。如果不存在最后一个单词,返回0注意: “单词”是指不包含空格符号的字符串例如: s = “hello World”, 那么返回的结果是5格式: 第一行输入字符串s,然后输出s中最后一个单词的长度。样例1输入:Today is a nice day输出:3原创 2015-07-21 19:10:18 · 1875 阅读 · 0 评论 -
计蒜客第15题---单独的数字
给定一个数组,除了一个数出现1次之外,其余数都出现3次。找出出现一次的数。如:{1, 2, 1, 2, 1, 2, 7}, 找出7.格式: 第一行输入一个数n,代表数组的长度,接下来一行输入数组A[n],(输入的数组必须满足问题描述的要求),最后输出只出现一次的数。要求: 你的算法只能是线性时间的复杂度,并且不能使用额外的空间哦~样例1输入:4原创 2015-07-21 19:05:04 · 1360 阅读 · 0 评论 -
计蒜客第17题---X的平方根
设计函数int sqrt(int x),计算x的平方根。格式: 输入一个数x,输出它的平方根。直到碰到结束符号为止。 千万注意:是int类型哦~ 输入可以如下操作:while(cin>>x)或者while(scanf("%d", &x) != EOF)样例1输入:123456789输出:1原创 2015-07-21 19:19:03 · 2279 阅读 · 0 评论 -
计蒜客第22题---排序后的数组删除重复数字
给定升序排序的数组,如果数组有2个或2个以上相同的数字,去掉他们,直到剩下2个为止。 例如: 数组A[] = [1,1,1,2,2,3] 你的算法需要返回新数组的长度5, 此时A为[1,1,2,2,3]. 格式:第一行输入一个数字n,第二行输入A[n], 最后输出新数组的长度。 样例1输入: 6 1 1 1 1 3 3 输出: 4#include <iostream>usin原创 2015-07-22 20:21:25 · 1070 阅读 · 0 评论 -
计蒜客第25题---两数之和
给定一个数组,找到两个数,使得他们的和为一个给定的数值target。 函数twoSum返回两个数字index1,index2, 其中:number[index1] + number[index2]==target; 注意:index1必须小于index2且不能为0假设每一组输入只有唯一的一组解。 格式:第一行输入一个数n,接下来的两行分别输入数组number[n]和target,返回inde原创 2015-07-22 19:40:39 · 1612 阅读 · 0 评论 -
计蒜客第18题---跳跃游戏
给定一个非负整数数组,假定你的初始位置为数组第一个下标。数组中的每个元素代表你在那个位置能够跳跃的最大长度。请确认你是否能够跳跃到数组的最后一个下标。例如:A = [2,3,1,1,4],return true.A = [3,2,1,0,4],return false.格式:第一行输入一个正整数n,接下来的一行,输入数组A[n]。如果能跳到最后一个下标,输出“t原创 2015-07-22 09:54:52 · 1890 阅读 · 0 评论 -
建立一个长度未知的数组
#includeusing namespace std;int main(){ int i,n; cin>>n; int *arr= new int[n]; //以下代码对一个数组第一位进行了赋值 arr[0]=1; //以下代码对一个长度为n的数组第二位开始依次做计算,并输出最后一个值得结果 for(i=1;i<n;i++){ arr[i]=arr[i-1]+i; }原创 2015-07-21 21:17:15 · 13128 阅读 · 0 评论 -
计蒜客第11题---移除数组中的重复元素
给定一个升序排列的数组,去掉重复的数,并返回新的数组的长度。 例如: 数组A = {1, 1, 2},你的函数应该返回长度2,新数组为{1, 2} 要求: 不能新开数组分配额外的空间。即常数空间限制。 提示: 输入一个整数n,以及其对应的数组A[n],输出新数组长度 样例1 输入: 5 0 0 1 1 2 输出: 3# include <iostream>原创 2015-07-22 19:47:35 · 1190 阅读 · 0 评论 -
计蒜客第21题---最大子阵列
在一个数组中找出和最大的连续几个数。(至少包含一个数)例如:数组A[] = [−2, 1, −3, 4, −1, 2, 1, −5, 4],则连续的子序列[4,−1,2,1]有最大的和6.格式:第一行输入一个数字n,第二行输入A[n],最后输出最大的和。样例1输入:31 1 -2输出:2#include using nam原创 2015-07-22 11:03:09 · 588 阅读 · 0 评论 -
计蒜客第10题---寻找插入位置
给定一个已经升序排好序的数组,以及一个数target,如果target在数组中,返回它在数组中的位置。否则,返回target插入数组后它应该在的位置。 假设数组中没有重复的数。以下是简单的示例: [1,3,5,6], 5 → 2 [1,3,5,6], 2 → 1 [1,3,5,6], 7 → 4 [1,3,5,6], 0 → 0 提示:输入一个整数n,以及其对应的数组A[n],最后输入t原创 2015-07-22 19:50:04 · 384 阅读 · 0 评论 -
计蒜客第19题---加一
动态数组存放了一些个位数字(正数),组成一个大数。将这个数加1。例如:A = [2,3,1,1,4],return [2,3,1,1,5]A = [7,8,9],return [7,9,0].格式:第一行输入一个正整数n,接下来的一行,输入数组A[n](每一位都是正数且为个位数)。最后输出新的数组。样例1输入:58 9 9 9 9原创 2015-07-21 23:13:56 · 600 阅读 · 0 评论 -
计蒜客第28题---等和的分割子集
晓萌希望将1到N的连续整数组成的集合划分成两个子集合,且保证每个集合的数字和是相等。例如,对于N=3,对应的集合{1,2,3}能被划分成{3} 和 {1,2}两个子集合. 这两个子集合中元素分别的和是相等的。 对于N=3,我们只有一种划分方法,而对于N=7时,我们将有4种划分的方案。 输入包括一行,仅一个整数,表示N的值(1≤N≤39)。 输出包括一行,仅一个整数,晓萌可以划分对应N的集合的原创 2015-07-24 16:36:04 · 1648 阅读 · 1 评论