zoukankan      html  css  js  c++  java
  • 1269 小B的任务Ⅶ

    1269 小B的任务Ⅶ

    题目描述

    钱终于收齐了(但是小B似乎把奖励忘了),小B总算可以清静的过一天了,于是便跑去图书馆看书.但是由于还未专业分流,而且对钱途很迷茫,所以他决定只要是书就看,但是呢图书馆的书那么多,所以他决定挑几个书架看(小B能一目万行),但是她又想看很多的书,请帮她算算最多能看多少书(最后一本书不一定要看完)。假设有n(0<n<=16)个书架,看同一个书架上的书,耗时相等。

    输入要求

    小B看书的时间T. 书架数n. 接下来n行,每行两个正整数,在看一本书花费的时间t和该书架的书的总数m.

    输出要求

    小B最多能看的书的数量.

    测试数据

    100
    5
    1 10
    2 10
    3 10
    4 10
    5 10
    
    40
    

    AC代码

    过的人比较少,所以我记录下

    #include <bits/stdc++.h>
    using namespace std;
    struct Book
    {
    	int cost,num;
    }book[10005];
    bool cmp(Book a,Book b)
    {
    	return a.cost<b.cost;
    }
    int main() {
    	int t,sum=0,n;
    	cin>>t>>n;
    	for(int i=0;i<n;i++) cin>>book[i].cost>>book[i].num;
    	sort(book,book+n,cmp);
    	for(int i=0;i<n;i++)
    	{
    		if(t<=0) break;
    		if(book[i].cost*book[i].num<=t) 
    		{
    			t-=book[i].cost*book[i].num;
    			sum+=book[i].num;
    		 } 
    		else 
    		{
    			if(t%book[i].cost==0)  sum+=t/book[i].cost;
    			else sum+=t/book[i].cost+1;
    			t=0;
    		}
    	}
    	cout<<sum<<endl;
    	return 0;
    }
    
  • 相关阅读:
    pyspark创建RDD数据、RDD转DataFrame以及保存
    pyspark将DataFrame转成table以及操作sql语句
    pyspark读取textfile形成DataFrame以及查询表的属性信息
    sql-lab闯关之20-22
    sql-lib闯关之lesson17-19
    sql-lab闯关之13-16
    sql-lab闯关之11-12
    sql-lib闯关之lesson8-10
    sql-lab闯关之7
    sql-lib闯关之5-6
  • 原文地址:https://www.cnblogs.com/xxhao/p/14317118.html
Copyright © 2011-2022 走看看