题解 CF919A 【Supermarket】

题意:

有m个超市,在第i个超市买b千克苹果需要花a元。也就是说,花a/b元可以买1kg苹果。每个超市都无限量供应苹果。你要买n千克苹果,问你最少花多少钱。

输入:

第一行两个正整数n和m(1<=n<=5000,1<=m<=100)

接下来m行,每行两个正整数a和b(1<=a,b<=100)

输出:

一行一个实数,表示你最少花的钱。与标准答案的误差不能超过10^(-6)


题解:

由于数据小,所以可以直接从头开始枚举b[i]/a[i]最大的,最后直接输出最大的就可以AC了。 上代码:


#include <bits/stdc++.h>
using namespace std; 
int main()
{

      long long n,m;
      cin>>n>>m;
      long long i,a[n+1],b[n+1];
      for (i=1;i<=n;i++)
      {
          cin>>a[i]>>b[i];
      }
      double yuan[n+1],ans;//yuan数组存储b[i]/a[i]的值
      for (i=1;i<=n;i++)
      {
          yuan[i]=b[i]*1.000000000/a[i];//强制转换为浮点类型
      }
      sort(yuan+1,yuan+n+1);//排序,找到b[i]/a[i]最大的
      ans=m/yuan[n];
      cout<<fixed<<setprecision(8)<<ans<<endl;//比赛时我是根据样例,打印到小数点后8位的
      return 0;
}

Supermarket

09-10

A supermarket has a set Prod of products on sale. It earns a profit px for each product x in Prod sold by a deadline dx that is measured as an integral number of time units starting from the moment the sale begins. Each product takes precisely one unit of time for being sold. A selling schedule is an ordered subset of products Sell (subset of Prod) such that the selling of each product x in Sell, according to the ordering of Sell, completes before the deadline dx or just when dx expires. The profit of the selling schedule is Profit(Sell)=sum of px (x in Sell). An optimal selling schedule is a schedule with a maximum profit.nnFor example, consider the products Prod=a,b,c,d with (pa,da)=(50,2), (pb,db)=(10,1), (pc,dc)=(20,2), and (pd,dd)=(30,1). The possible selling schedules are listed in table 1. For instance, the schedule Sell=d,a shows that the selling of product d starts at time 0 and ends at time 1, while the selling of product a starts at time 1 and ends at time 2. Each of these products is sold by its deadline. Sell is the optimal schedule and its profit is 80.nnschedulenprofitnan50nbn10ncn20ndn30nb,an60na,cn70nc,an70nb,cn30nd,an80nd,cn50nWrite a program that reads sets of products from an input text file and computes the profit of an optimal selling schedule for each set of products.nnA set of products starts with an integer 0 <= n <= 10000, which is the number of products in the set, and continues with n pairs pi di of integers, 1 <= pi <= 10000 and 1 <= di <= 10000, that designate the profit and the selling deadline of the i-th product. White spaces can occur freely in input. Input data terminate with an end of file and are guaranteed correct.nnFor each set of products, the program prints on the standard output the profit of an optimal selling schedule for the set. Each result is printed from the beginning of a separate line.nnThe sample input in contains two product sets. The first set encodes the products from table 1. The second set is for 7 products. The profit of an optimal schedule for these products is 185.nnnSample Inputnn4 50 2 10 1 20 2 30 1nn7 20 1 2 1 10 3 100 2 8 2n5 20 50 10nnSample Outputnn80n185

Supermarket 区间问题并查集

11-16

DescriptionnnA supermarket has a set Prod of products on sale. It earns a profit px for each product x∈Prod sold by a deadline dx that is measured as an integral number of time units starting from the moment the sale begins. Each product takes precisely one unit of time for being sold. A selling schedule is an ordered subset of products Sell ≤ Prod such that the selling of each product x∈Sell, according to the ordering of Sell, completes before the deadline dx or just when dx expires. The profit of the selling schedule is Profit(Sell)=Σ x∈Sellpx. An optimal selling schedule is a schedule with a maximum profit. nFor example, consider the products Prod=a,b,c,d with (pa,da)=(50,2), (pb,db)=(10,1), (pc,dc)=(20,2), and (pd,dd)=(30,1). The possible selling schedules are listed in table 1. For instance, the schedule Sell=d,a shows that the selling of product d starts at time 0 and ends at time 1, while the selling of product a starts at time 1 and ends at time 2. Each of these products is sold by its deadline. Sell is the optimal schedule and its profit is 80. nnnWrite a program that reads sets of products from an input text file and computes the profit of an optimal selling schedule for each set of products. nInputnnA set of products starts with an integer 0 <= n <= 10000, which is the number of products in the set, and continues with n pairs pi di of integers, 1 <= pi <= 10000 and 1 <= di <= 10000, that designate the profit and the selling deadline of the i-th product. White spaces can occur freely in input. Input data terminate with an end of file and are guaranteed correct.nOutputnnFor each set of products, the program prints on the standard output the profit of an optimal selling schedule for the set. Each result is printed from the beginning of a separate line.nSample Inputnn4 50 2 10 1 20 2 30 1nn7 20 1 2 1 10 3 100 2 8 2n 5 20 50 10nSample Outputnn80n185

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试

关闭