zoukankan      html  css  js  c++  java
  • H

    杂货店出售一种由N(3<=N<=12)种不同颜色的颜料,每种一瓶(50ML),组成的颜料套装。你现在需要使用这N种颜料;不但如此,你还需要一定数量的灰色颜料。杂货店从来不出售灰色颜料——也就是它不属于这N种之一。幸运的是,灰色颜料是比较好配置的,如果你取出三种不同颜色的颜料各x ml,混合起来就可以得到x ml的灰色颜料(注意不是3x)。
    现在,你知道每种颜料各需要多少ml。你决定买尽可能少的“颜料套装”,来满足你需要的这N+1种颜料。那么你最少需要买多少个套装呢?

    Input

    输入包含若干组测试数据。每组数据一行:第一个数N, 3<=N<=12, 含义如上;接下来N+1个数,分别表示你需要的N+1种颜料的毫升数。最后一种是灰色。所有输入的毫升数<=1000.
    注意:输入中不存在每个颜料套装的毫升数。由题意可知,每种各50ml,即一共50N ml

    Output

    每组数据输出一行,最少需要的套装数。

    Sample Input

    3 40 95 21 0
    7 25 60 400 250 0 60 0 500
    4 90 95 75 95 10
    5 0 0 0 0 0 333
    0

    Sample Output

    2
    8
    2
    4

    先算出要多少瓶满足基本颜色,在把所有剩下的排序,前三个-1,然后一直排序,循环,不够在加一套,直到满足;

    #include<iostream>
    #include<stdio.h>
    #include<stdlib.h>
    #include<cmath>
    #include<string.h>
    #include<algorithm>
    #define sf scanf
    #define pf printf
    #define cl clear()
    #define pb push_back
    #define mm(a,b) memset((a),(b),sizeof(a))
    #include<vector>
    const double pi=acos(-1.0);
    typedef __int64 ll;
    typedef long double ld;
    const ll mod=1e9+7;
    using namespace std;
    bool com(int a,int b)
    {
    	return a>b;
    }
    int main()
    {
    	int n,a[20],d[20];
    	while(1)
    	{
    		cin>>n;
    		if(n==0)return 0;
    		mm(a,0);mm(d,0);
    		int max=0,num=0;
    		for(int i=0;i<n;i++)
    		{
    			cin>>a[i];
    			if(max<a[i]) max=a[i];
    		}
    		cin>>a[n];
    		num=max/50;
    		if(max%50) num++;
    		for(int i=0;i<n;i++)
    		{
    			d[i]=num*50-a[i];
    		}
    		sort(d,d+n,com);
    		int sum=0;
    		while(sum<a[n])
    		{
    			sum++;
    			if(d[0]==0||d[1]==0||d[2]==0)
    			{
    				num++;
    				for(int i=0;i<n;i++)
    				d[i]+=50;	
    			}
    			d[0]--;d[1]--;d[2]--;
    			sort(d,d+n,com);
    		}
    		pf("%d
    ",num);
    	} 
    }
    
  • 相关阅读:
    单细胞测序 RNA velocity | RNA速率
    单细胞测序的应用
    Centos7.4升级到Centos7.7
    K8S部署Redis Cluster集群(三主三从模式)
    K8S部署Nacos集群
    K8S部署Kafka界面管理工具(kafkamanager)
    K8S部署Kafka集群
    K8S部署RocketMQ集群(双主双从+同步模式)
    Android Studio/IDEA Gradle wrapper/tools/plugins config errors
    Android API Level对应Android版本一览表
  • 原文地址:https://www.cnblogs.com/wzl19981116/p/9351197.html
Copyright © 2011-2022 走看看