最佳浏览路线问题 算法设计
2016-01-24 17:21
197 查看
#include<stdio.h> #include<stdlib.h> void findbestpath(int s[] , int n ,int &s1 ,int &s2); int main(void) { int a[3][5] = {-50 , -47 , 36 , -30 , -23 , 17 , -19 , -34 , -43 , -8 , -42 , -3 , -43 , 34 , -45 } ; int s[5] = {-100 , -100 , -100 , -100 , -100}; for(int j = 0 ; j < 5 ; j++) { for(int i = 0 ; i < 3 ;i++) { if(s[j] < a[i][j]) { s[j] = a[i][j]; } } } int s1 = 0 , s2 = 0; findbestpath( s , 5 , s1 ,s2 ); printf("the best path is :"); for(int i = s1 ; i <= s2 ; i++) { printf("%d\t",s[i]); } printf("\n"); return 0; } void findbestpath(int s[] , int n , int &s1 ,int &s2 ) { int value = 0 , sum = 0 ; for(int i = 0 ; i < n ; i++) { sum = sum + s[i]; if(sum > value) { value = sum ; s2 = i; } if(sum < 0) { sum = 0 ; } } int temp = value ; s1 = s2; while(temp) { temp = temp - s[s1]; s1--; } s1++; }
相关文章推荐
- 【JS复习笔记】07 复习感想
- 最大连续子序列(HDU_1231) 基础DP
- 正则表达式校验身份证号
- VirtualBox安装增强功能(Linux)
- 杨辉三角问题 算法编程
- VIM使用总结
- SlidingMenu开源库
- JavaEE Tutorials (19) - Web应用安全入门
- Android中View的事件分发机制
- C语言scanf函数详细解释
- 阶乘统计0个数 算法
- JavaEE Tutorials (18) - Java EE平台安全介绍
- cocos2d-x 3.2 之 2048 —— 第一篇
- 红帽 Red Hat Linux相关产品iso镜像下载
- nvidia显卡在Linux中安装
- CSS 布局 问题 及 解答
- 求数列的最大字段和 算法
- JavaEE Tutorials (17) - Java消息服务示例
- memset函数使用详解
- linux下find指令的用法