这个题目,筷子应该最好是非降序排列的(只要输入的时候处理一下即可),这样处理起来就比较方便,因为这样就可以保证在后来的计算中,每取两个筷子都有比他们两根长的筷子,就可以符合题意了。

下面贴代码:

View Code

 1 #include <iostream>
 2 using namespace std;
 3 int dp[5050][1010];
 4 #define maxn 1<<30
 5 int a[5050];
 6 int main()
 7 {
 8
 9     int ncase,guests,chopsticks,i,j;
10     cin>>ncase;
11     while(ncase--)
12     {
13         cin>>guests>>chopsticks;
14         for(i = chopsticks;i >= 1;i--)
15             cin>>a[i];
16         for(i = 1;i < 5050;i++)
17             for(j = 0;j < 1010;j++)
18             {
19                 if(j == 0)
20                     dp[i][j] = 0;
21                 else
22                     dp[i][j] = maxn;
23             }
24         for(j = 1;j <= guests + 8;j++)
25             for(i = 3;i <= chopsticks;i++)
26             {
27                 if(i >= j * 3)
28                 {
29                     dp[i][j] = dp[i - 1][j];
30                     int temp = dp[i - 2][j - 1] + (a[i - 1] - a[i]) * (a[i - 1] - a[i]);
31                     if(temp < dp[i][j])
32                         dp[i][j] = temp;
33                 }
34             }
35         cout<<dp[chopsticks][guests + 8]<<endl;
36     }
37     return 0;
38 }

转载于:https://www.cnblogs.com/zhexipinnong/archive/2012/04/19/2457217.html

ZOJ 1234 UVA 10271 Chopsticks相关推荐

  1. UVA 10271 Chopsticks

    UVA_10271 总的来讲,我们应该从大到小去安排筷子,因为如果从小到大去安排的话,最后剩下的不一定可以作为最长的那根. 我首先将筷子反过来存在了数组a[]里面,这样用f[i][j]表示一共有到第i ...

  2. uva 10271——Chopsticks

    题意:有n只筷子,然后选出来k+8套(一套有三只,分别ABC),一套筷子质量为最小的两只的平方,选出的使得总的质量和最小. 思路:01背包.dp[i][j]表示j套利选出来i套的最优解,每个都有选当前 ...

  3. ZOJ 1234 Chopsticks(动态规划)

    Chopsticks 题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=234 题目大意:给定n个筷子的长度,取k+8套筷 ...

  4. UVa在线比赛单题汇总-----DP专题

    动态规划基础 例题 LA 3882 UVa 3882 - And Then There Was One 递推------------无力orz UVa 10635 10635 - Prince and ...

  5. 紫书《算法竞赛入门经典》

    紫书<算法竞赛入门经典>题目一览 第3章 数组和字符串(例题) UVA 272 TEX Quotes UVA 10082 WERTYU UVA 401 Palindromes UVA 34 ...

  6. UVa Online Judge 工具網站

    UVa Online Judge 工具網站 转自http://www.csie.ntnu.edu.tw/~u91029/uva.html Lucky貓的ACM園地,Lucky貓的 ACM 中譯題目 M ...

  7. 神牛笔记:吉林大学ACM总结(fennec)

    其实在北京比赛完的时候,我就想写了,不过还是早了点,直到上海比赛结束,大家的心中都不是太好受.郭老师有句话:你们这样做也是对的,不成功就成仁.让我的心也能安慰了不少. 我是从大一下学期开始接触ACM的 ...

  8. 一位学长的ACM总结(感触颇深)

    发信人: fennec (fennec), 信区: Algorithm 标 题: acm 总结 by fennec 发信站: 吉林大学牡丹园站 (Wed Dec 8 16:27:55 2004) AC ...

  9. (Step1-500题)UVaOJ+算法竞赛入门经典+挑战编程+USACO

    下面给出的题目共计560道,去掉重复的也有近500题,作为ACMer Training Step1,用1年到1年半年时间完成.打牢基础,厚积薄发. 一.UVaOJ http://uva.onlinej ...

最新文章

  1. 网站服务器的ip地址会变吗,网站的服务器变了 IP地址变吗
  2. 怎么主动发起话题_谈恋爱怎样找话题聊天?
  3. c++ 异步下获取线程执行结果_【分享吧】C++11多线程库介绍
  4. 10周拿下数据分析师认证
  5. Java NIO系列教程(十一) Pipe
  6. cepl进程 Linux,Ubuntu下NS2-2.33安装过程
  7. zookeeper结构和命令详解
  8. 关于电商网站购物车功能如何与登录账号相关联的一点想法
  9. 【HNOI2017】影魔
  10. python自动化办公模块_Python 自动化办公之 Excel 模块 — openpyxl 的基本使用!
  11. ASP.NET MVC 3 Preview1发布
  12. 【航模】凤凰模拟器安装
  13. Multisim14.0的安装步骤
  14. 确定权重的方法-主成分分析
  15. 硬件算法与软件算法实现区别通俗易懂
  16. 淘宝开放平台接口接口,订单R2权限接口淘宝开放平台R2权限,淘宝开放平台进存销应用,top平台接口,淘宝应用市场接口,ERP软件订单接口,淘上淘接口,
  17. TSCH协议及WIA-PA系统芯片
  18. c++串口配置及DCB结构体
  19. VS2019下编译x264.dll
  20. python基础教程怎么看_python基础教程之看一篇,学一篇,今日份的pand

热门文章

  1. python怎么在字符串里加入变量数字_Python学习笔记(一)之基本元素:变量,数字和字符串...
  2. Day8_误差反向传播
  3. JSP页面之前传输 中文乱码
  4. netty : websocketx.WebSocketHandshakeException: not a WebSocket handshake request: missing upgrade
  5. 【Flink】Flink 1.13 Flink SQL 新特性 性能优化 时区 时间 纠正
  6. 【Kafka】Kafka WARN Failed to send SSL Close message
  7. 【Kafka】Kafka IllegalArgumentException: Could not find a ‘KafkaClient‘ entry in the JAAS configuratio
  8. 【Mac】setremotelogin: Turning Remote Login on or off requires Full Disk Access privileges.
  9. 女生学计算机好还是工业工程好,工业工程专业排名-工业工程考证我是学IE大三的,我想问一下,工业工程,有哪些与专业 爱问知识人...
  10. 宝塔linux配置php环境扩展,CentOS7下宝塔面板php安装mssql扩展