A. Ilya and Diplomas 贪心小题

                      A. Ilya and Diplomas

题目抽象:min1<=a<=max1,   min2 <= b <= max2, min3 <= c <= max3;   a+b+c = n. min1 +min2 + min3 <= n <= max1 + max2 + max3;

在满足上面的条件下,第一比较规则a尽可能大,第二比较规则b尽可能大。求出a,b,c;

分析: 贪心即可。分两类, a能否取到最大值,   a取到最大值的话,b能否取到最大值。  见代码。

 1 import java.io.*;
 2 import java.util.*;
 3 import java.math.*;
 4
 5 public class Main
 6 {
 7     static Scanner cin = new Scanner(new BufferedInputStream(System.in));
 8     static PrintStream cout = System.out;
 9
10     public static void main(String[] args)
11     {
12         int n = cin.nextInt();
13         int min1 = cin.nextInt(), max1 = cin.nextInt();
14         int min2 = cin.nextInt(), max2 = cin.nextInt();
15         int min3 = cin.nextInt(), max3 = cin.nextInt();
16
17         if(max1 + min2 + min3 <= n)
18         {
19             if(max1 + max2 +min3 <= n)
20                 System.out.println(max1 + " " + max2 + " " +(n - max1 - max2));
21             else
22                 System.out.println(max1 + " " + (n - max1 - min3) + " " + min3);
23         }
24         else
25         {
26             System.out.println((n - min2 - min3) + " " + min2 + " " + min3);
27         }
28     }
29 }
时间: 2024-12-30 01:41:29

A. Ilya and Diplomas 贪心小题的相关文章

Ilya and Diplomas (贪心5)

Description Soon a school Olympiad in Informatics will be held in Berland, n schoolchildren will participate there. At a meeting of the jury of the Olympiad it was decided that each of the n participants, depending on the results, will get a diploma

关于js中全局变量和局部变量的寄到小题

往往最基本的也是最根本的. 这里有三道关于全局变量和局部变量的小题,供诸位一阅. 知识点: (1)在最外层声明的是全局变量 (2)在函数内声明的是局部变量 (3)在函数体内部,但是没有用var声明的变量也是全局变量 第一题: var a = 10;function fun(){var a = "global";}console.log(a); 第二题: var a ;function fun(){a = "global";} fun();console.log(a)

关于SQL的几道小题详解

关于SQL的几道小题详解 当我们拿到题目的时候,并不是急于作答,那样会得不偿失的,而是分析思路,采用什么方法,达到什么目的,还要思考有没有简单的方法或者通用的方法等等,这样才会达到以一当十的效果,这样的惯性思维其实早在我们度高中的时候就被领教了,所谓“万变不离其宗”吧.以下各题来自日常所见,或QQ群,或面试题,或博客园. 题目一:如下表所示,现需要按照收款员统计收款和退款合计金额. 实现结果需如下显示: 分析:想要的结果(记为表B)和源数据(记为表A)相比,有共同的列(收款员),不同的是表A的金

关于理解python类的小题

今天看了python部落翻译的一篇<一道python类的小题>文章,感觉挺有启发性,记录下来: 1 print('A') 2 class Person(object): 3 print('B') 4 def __int__(self,name): 5 print('C') 6 self.name = name 7 print('D') 8 print('E') 9 10 11 p1= Person('name1') 12 p2 = Person('name2') 输出结果: A B D E C

几个小题

1.从一个数值连续的数组中,抽调n个元素,查找抽调的是哪几个 #include "stdafx.h" #include <iostream> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { int a[100] = {0}; //抽掉3, 4, 57 int b[100] = {0}; //原始数组, [0, 99] for (int i = 0; i < sizeof(a) / sizeof(a

递归小题中的空间换时间思想

题目: 如数: 1  1  2  3   5   8   13   21  34  55 ...... 序号: 0  1  2  3   4   5   6     7    8    9 ...... 由用户输入序号,输出对应的数值. 效果: 实现代码: #include <stdio.h> int bian(int num); //static int shu[100]={1,1}; int main() { int num; while ( printf("请输入编号数:&qu

逛园子,看到个练习题,小试了一把(淘宝ued的两道小题)

闲来无事,逛园子,充充电.发现了一个挺有意思的博文,自己玩了一把. 第一题:使用 HTML+CSS 实现如图布局,border-widht 1px,一个格子大小是 60*60,hover时候边框变为橘红色(兼容IE6+,考虑语义化的结构) 效果图: 简单分析一下: 使用伪类 :hover的时候相对定位 改变z-index, 代码如下: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta c

贪心/思维题 Codeforces Round #310 (Div. 2) C. Case of Matryoshkas

题目传送门 1 /* 2 题意:套娃娃,可以套一个单独的娃娃,或者把最后面的娃娃取出,最后使得0-1-2-...-(n-1),问最少要几步 3 贪心/思维题:娃娃的状态:取出+套上(2),套上(1), 已套上(0),先从1开始找到已经套好的娃娃层数, 4 其他是2次操作,还要减去k-1个娃娃是只要套上就可以 5 详细解释:http://blog.csdn.net/firstlucker/article/details/46671251 6 */ 7 #include <cstdio> 8 #i

Linux 的面试小题 9

一.选择题(24分,每小题3分) 1. 操作系统是一组什么( C ) A.文件管理程序  B.中断处理程序 C.资源管理程序  D.设备管理程序   解释:在一个计算机操作系统中,通常含有多种硬件和软件资源.归纳起来可将这些资源分为四类:处理机.存储器.I/O设备以及文件(数据和程序).相应的,OS的主要功能也正是对这四类资源进行有效的管理.处理机管理是用于分配和控制处理机:存储器管理主要负责内存的分配与回收:I/O设备管理是负责I/O设备的分配(回收)与操纵:文件管理是用于实现对文件的存取.共