石子合并问题
来源:互联网 发布:nokia5233软件下载 编辑:程序博客网 时间:2024/06/05 02:38
问题描述
在一个圆形操场的四周摆放着n堆石子。现要将石子有次序地合并成一堆。
规定每次只能选择相邻的两堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。
试设计一个算法,计算出将n堆石子合并成一堆的最小得分和最大得分。
测试用例:
4(石子的堆数)
4 4 5 9(每一堆的石子数目)
输出: 43 54
这里只写了最大,最小思路相同#include<stdio.h>#define n 4int a[]={4,4,5,9};int main(){ int i,j,max=0,sum=0,temp=0; for(i=0;i<n;i++) { sum=a[i]; temp=0; for(j=1;j<n;j++) { sum+=a[(i+j)%4]; temp+=sum; } max=max>temp?max:temp; } printf("%d\n",max);}
0 0
- 石子合并问题
- 石子合并问题
- 【dp】石子合并问题
- 石子合并问题
- 石子合并问题
- 经典石子合并问题
- NK1137 石子合并问题
- 经典石子合并问题
- 石子合并问题
- 石子合并问题
- 【FJOI2014】石子合并问题
- DP_石子合并问题
- 石子合并问题
- 石子合并问题
- 石子合并问题
- 石子合并问题
- 石子合并问题
- 石子合并问题
- MyDay01Java基础
- 一个小傻逼写的python爬取图片
- SpringMVC学习总结(三).SpringMVC处理静态资源和数据处理
- HTML_表格实例
- 回首2016,展望2017
- 石子合并问题
- Java 强引用、弱引用、软引用、虚引用
- [ZJOI2007]矩阵游戏 二分图匈牙利算法
- log4j简单分析
- linux正则表达式的学习
- 1.14 aerospike的设计与实现
- shell的case esac
- socket实现TCP数据传输
- 死锁以及如何避免死锁