题解 | #最小花费爬楼梯#

最小花费爬楼梯

https://www.nowcoder.com/practice/9b969a3ec20149e3b870b256ad40844e

#include <stdio.h>
#include <stdlib.h>
int jump_cost(int a, int arr[]) {
	int i, b, c, num;
	if (a == 1) 
		num = arr[0];
	else if (a == 2)
		num = (arr[0] < arr[1] ? arr[0] : arr[1]);
	else {
		b = 0;
		c = 0;
		for (i = 2; i < a + 1; i++) {
			num = (arr[i - 2] + b < arr[i - 1] + c ? arr[i - 2] + b : arr[i - 1] + c);
			b = c;
			c = num;
		}
	}
	return num;
}

int main(int argc, char *argv[]) {
	int num,i;
	int *arr;
	while (scanf("%d", &num) == EOF)
		printf("input error, please input again\n");
	arr = malloc(num * sizeof(num));
	for (i = 0; i < num; i++) {	
		while (scanf("%d", &arr[i]) == EOF)
			printf("input error, please input again\n");
	}
	printf("%d\n", jump_cost(num, arr));
	return 0;
	
}


全部评论

相关推荐

08-23 20:17
四川大学 C++
xxxzsfa:技术栈可以参考我这个给写,把知识点写出来起码能让面试官知道你是知道这个点的,不会的知识点可以不写,简历上写了但又答不上来就很尴尬了,可以给技术栈中的知识点和项目中的难点亮点加粗,学历不错,肯定会有大厂面的,刚开始可以先投中小厂练手,拿个offer保底再去面大厂,秋招可以正式和实习一起找,找工作是个需要长期坚持的过程,加油查看图片
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务