http://poj.org/problem?id=1260

题意 :这个题大概是讲,给你几种等级不同的珠宝,然后告诉你它的数量和价值,等级是升序排列的,且随等级的升高价值也随之升高,但为了防止有的客户只购买一个珍珠,所以无论买哪一种的珍珠必须额外付这个等级珍珠的10倍的价钱,要求买够它给定的珍珠的种数中每一种珍珠的数量的总和,要求花费最小,等级低的可以用等级高的代替掉。

思路 : 典型的动态规划,就是求一个最优解嘛,这个题倒不什么难,就是思路对很重要,看了大神的解题报告,0MS,挺好的 。

样例解释 : 样例中最开始的2代表的是测试样例的组数,然后是珍珠的种数,等级按升序排列,然后第一组样例中按照题意可以求出两个结果,一个是(100+10)*1+(100+10)*2 = 330,另一个是(100+100+10)*20 = 4200,显然第一种方法比较优,所以输出330,同理,第二种样例中,(1+10)*10+(1+10)*10+(100+10)*12 =1561,(1+1+10)*11+(100+10)*12=1452,(1+1+100+10)*12 =1344,所以最优解是1344

2
2
100 1
100 2
3
1 10
1 11
100 12
#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std ;
const int maxn = ;
int main()
{
int n,m ;
cin>>m;
int ai[maxn],pi[maxn],ans[maxn],sum[maxn] ;
for(int k = ; k < m ; k++)
{
memset(ans,,sizeof(ans)) ;//ans数组最优状态记录
sum[] = ;
cin>>n ;
for(int i = ; i <= n ; i++)
{
cin>>ai[i]>>pi[i] ;
sum[i] = sum[i-]+ai[i] ;//sum数组存的是前i的珠宝总数
ans[i] = (sum[i] +)*pi[i] ;//先将可能最优解存入
}
for(int i = ; i <= n ; i++)
for(int j = ; j <= i ; j++)
ans[i] = min(ans[i],(sum[i]-sum[j]+)*pi[i]+ans[j]) ;
cout<<ans[n]<<endl ;
}
return ;
}

POJ1260Pearls的更多相关文章

随机推荐

  1. .net 下载图片

    最近boss让写一个二维码的生成器,但是二维码生成后用户如果想下载二维码,这就促使我写l了 下载功能,小弟自认为技术不咋样,是个彻头彻尾的码农,本先是想用js来实现功能,但是查找了好多资料也没能实现, ...

  2. IOS 下拉菜单

    由于之前曾经用到过下拉菜单,所以现在花一些时间回过头来细细整理了一下,逐步完善这个下拉菜单,并提供一些比较基本的功能,以便日后如果有需要的话可以进行复用,并提供给需要的人参考.下拉菜单同样分为数据源和 ...

  3. CentOS 7 下Docker的安装

    笔者是刚入行1年的新鸟,近期公司开始推Docker技术.这个系列的文章都是基于CentOS7系统下进行讲解的. Docker简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及 ...

  4. Illegal pattern character 'i' 解决问题

    java.lang.IllegalArgumentException: Illegal pattern character 'i' at java.text.SimpleDateFormat.comp ...

  5. Linux 文件系统 相关

    鸟个讲得很详细啦:http://vbird.dic.ksu.edu.tw/linux_basic/0230filesystem_1.php 重要知识点:磁盘,文件系统,超级区块 (superblock ...

  6. 【转】VS2012发布网站详细步骤

    1.打开你的VS2012网站项目,右键点击项目>菜单中 重新生成一下网站项目:再次点击右键>发布: 2.弹出网站发布设置面板,点击<新建..>,创建新的发布配置文件: 输入你自 ...

  7. iOS 非ARC基本内存管理系列 2-多对象内存管理(1)

    单个对象的内存管理非常简单无非就是alloc对应release,retain对应release.但是如果涉及到很多对象,而且对象与对象有联系的时候该怎么去管理对象的内存呢. 比如同样一本书有好3个人购 ...

  8. php程序备份还原mysql数据库

    <?php $link = mysql_connect("localhost", "root",""); mysql_query(&q ...

  9. discuz论坛X3升级时 文件下载出现问题,请查看您的服务器网络以及data目录是否有写权限

    discuz论坛2.5升级X3时候, 在线升级一半提示: 文件 static/image/postbg/3.jpg 下载出现问题,请查看您的服务器网络以及data目录是否有写权限,请确认无误后点击确定 ...

  10. php语法检查方法——命令行模式和代码形式

    1. 命令行形式 php -l /path/to/file.php 2. php代码形式 function php_syntax_check($file){ $code = file_get_cont ...