ZOJ1524
题意:给定需要购买物品的顺序以及总物品对应的价格,求解按顺序购买物品时最小花费。
输入:
m,n(m代表需要购买物品的清单,n代表总的物品数)
Xi...(代表对应物品的序号以及价格)
输出:
cost(最小花费,有精度要求)
思路:对于商品j,有购买和不购买两种选择,并且如果j序号正好和i匹配,说明是符合条件的,那么此时最小花费应是不买(dp[1][j])和购买(dp[0][j-1]+price[j])中最小值,注意之前dp每次循环时需要初始化第一个下标。
#include<iostream>
#include<fstream>
#include<memory.h>
#define MAX 100001
#define N 1e10
using namespace std;
int a[101];
int Index[MAX];
double price[MAX];
double dp[2][MAX];
int n,m,i,j;
void ss()
{
for(i=1; i<=n; i++)
cin>>a[i];
for(i=1; i<=m; i++)
cin>>Index[i]>>price[i];
dp[1][0]=N;
for(j=0; j<=m; j++)
dp[0][j]=0; for(i=1; i<=n; i++)
{
for(j=i; j<=m; j++)
{
if(j!=i)
dp[1][j]=dp[1][j-1];
else dp[1][j]=N;
if(a[i]==Index[j])
dp[1][j]=min(dp[1][j],dp[0][j-1]+price[j]);
}
for(j=0; j<=m; j++)
dp[0][j]=dp[1][j]; }
}
int main()
{
while(cin>>n>>m,n&&m)
{
ss();
double ans=dp[1][m];
if(ans==N)
cout<<"Impossible"<<endl;
else
printf("%.2lf\n",ans);
}
return 0;
}
ZOJ1524的更多相关文章
- OJ题目分类
POJ题目分类 | POJ题目分类 | HDU题目分类 | ZOJ题目分类 | SOJ题目分类 | HOJ题目分类 | FOJ题目分类 | 模拟题: POJ1006 POJ1008 POJ1013 P ...
随机推荐
- 在Linux-0.11中实现基于内核栈切换的进程切换
原有的基于TSS的任务切换的不足 进程切换的六段论 1 中断进入内核 2 找到当前进程的PCB和新进程的PCB 3 完成PCB的切换 4 根据PCB完成内核栈的切换 5 切换运行资源LDT 6 利用I ...
- 二分查找里的upper bound与lower bound的实现与分析
1. 问题引入 最近参选了学堂在线的课程数据结构(2015秋).课程由清华大学的邓俊辉老师主讲,在完成课后作业时,遇到了这样一个题目范围查询.在这个题目中,我需要解决这样一个子问题:给定了一组已经排好 ...
- Java简介(1)
起源 略. 组成 Java由四方面组成: 1.Java编程语言 2.Java文件格式 3.Java虚拟机(JVM) 4.Java应用程序接口(Java api) 体系 JavaSE , JavaEE, ...
- jQuery 知识积累
1.select下拉框设置选中项 //设置下拉框第一项为选中项$("#selectId option:first").prop("selected", 'sel ...
- grails通过findBy或findBy查找的结果集进行排序
原文:http://grails.org/doc/2.3.x/ref/Domain%20Classes/list.html list Purpose Lists instances of the do ...
- js与jquery获取父元素,删除子元素的不同方法
var obj=document.getElementById("id");得到的是dom对象,对该对象进行操作的时候使用js方法 var obj=$("#id" ...
- Nginx源码研究七:nginx的location指令分析
在nginx的配置文件nginx.conf中,我们在配置server的时候,会配置一下location指令,这个location指令是提供给用户来配置对于符合指令的http请求,采用该指令内部的处理方 ...
- Day5 双层装饰器、字符串格式化、生成器、迭代器、递归
双层装饰器实现用户登录和权限认证 #!/usr/bin/env python# -*- coding: utf-8 -*-# Author: WangHuafeng USER_INFO = {} de ...
- Azure IoT
微软Azure IoT 国外物联网平台初探(二)——微软Azure IoT 马智 平台定位 连接设备.其它 M2M 资产和人员,以便在业务和操作中更好地利用数据. 连接 IoT 设备 将所有设备连 ...
- STM32f103------ADC(DMA)
STM32F10x ADC 技术指标: 分辨率: 12位分辨率 LSB=Vref+ / 2^(12) 转换时间: 采样一次至少14个ADC时钟周期 ,而ADC最高时钟周期为14MHz 选用采样 ...