http://acm.hust.edu.cn/vjudge/contest/view.action?cid=93241#problem/B (654123)

http://codeforces.com/problemset/problem/4/B

Before an Exam

Time Limit:500MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u

Description

   明天,彼得就将要参加生物考试了。但是他不喜欢这个科目,但是d天前,彼得严厉的父母让他立即准备考试,为此,在第i天的时候,他要学习不少于minTimei的时间,并且不多于maxTimei的时间。此外,他父母警告彼得说考试前一天,他们会检查他是否按照他们的指示在复习。
 
   今天,彼得的父母来检查了,要求他出示每天复习的时间表。但是彼得只记得花的总时间sumtime了,现在为了应付父母的检查,请你帮助他创造一张每天学习的时间表,使得满足每天学习时间的要求,并且总时间等于sumtime。

Input

第一行输入包含两个整数d和sumtime(1≤d≤30,0≤sumtime≤240)分别表示复习的总天数和总时间。以下d行包含两个整数minTimei和maxTimei(0≤minTimei≤maxTimei≤8),用空格隔开,表示每天复习的最少时间和最多时间。

Output

如果没有解决方案,就输出NO,如果有解决方案,就先第一行输出YES,然后第二行输出每天学习的时间,中间用一个空格隔开(输出任何一个解决方法都可以)。

Sample Input

输入样例1:
1 48
5 7
 
输入样例2:
2 5
0 1
3 5

Sample Output

输出样例1:
NO
 
输出样例2:
YES
1 4 
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <iostream>
#include <algorithm>
using namespace std; #define N 210 struct node
{
int MinTime, MaxTime;
}a[N]; int main()
{
int d, sumtime; while(scanf("%d%d", &d, &sumtime)!=EOF)
{
int i, MaxSumTime=, MinSumTime=; memset(a, , sizeof(a));
for(i=; i<d; i++)
{
scanf("%d%d", &a[i].MinTime, &a[i].MaxTime);
MinSumTime += a[i].MinTime;
MaxSumTime += a[i].MaxTime;
} if(sumtime>=MinSumTime && sumtime<=MaxSumTime)
{
int flag=;
printf("YES\n"); sumtime -= MinSumTime; for(i=; i<d; i++)
{
if(flag)
printf(" ");
if(sumtime>)
{
if(sumtime>(a[i].MaxTime-a[i].MinTime))
{
printf("%d", a[i].MaxTime);
sumtime -= (a[i].MaxTime-a[i].MinTime);
}
else
{
printf("%d", sumtime+a[i].MinTime);
sumtime = ;
}
}
else
printf("%d", a[i].MinTime); flag = ;
} printf("\n"); }
else
printf("NO\n");
}
return ;
}

Before an Exam的更多相关文章

  1. Linux学习之Exam系统发布

    配置时间:2015年11月27日 配置人:撰写人:微冷的雨   Happy 01.Linux安装图 欢迎页面 桌面 02.Linux命令之文件目录操作 给北大青鸟五道口校区创建三个机房(L4,L5,L ...

  2. CF534A Exam 构造

    An exam for n students will take place in a long and narrow room, so the students will sit in a line ...

  3. CF Exam (数学)

     Exam time limit per test 1 second memory limit per test 256 megabytes input standard input output s ...

  4. Exam 70-462 Administering Microsoft SQL Server 2012 Databases 复习帖

    好吧最近堕落没怎么看书,估计这个月前是考不过了,还是拖到国庆之后考试吧.想着自己复习考试顺便也写点自己的复习的概要,这样一方面的给不准备背题库的童鞋有简便的复习方法(好吧不被题库的同学和我一样看MSD ...

  5. Final Exam Arrangement(ZOJ)

    In Zhejiang University, there are N different courses labeled from 1 to N. Each course has its own t ...

  6. 有感PMI Exam Dev Workshop

    有幸參加了PMI协会在上海举办的PMI Exam Development Workshop活动.这是PMI协会第二次在中国举办此活动,上一次是2009年北京. 我第一次參加,感觉收获非常多. 我们知道 ...

  7. Exam(贪心)

    Exam Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  8. B题 Before an Exam

    Description Tomorrow Peter has a Biology exam. He does not like this subject much, but d days ago he ...

  9. HDU 5240 Exam

    The 2015 ACM-ICPC China Shanghai Metropolitan Programming Contest 2015ACM-ICPC上海大都会赛 签到题 #include< ...

  10. 考分鄙视(exam)

    考分鄙视(exam) 题目描述 Whence这个学期考了n次试,每一次都有一个0-20000之间的整数分数.Whence本来的状态应该是每一次考试都比前一次多一分(除第一次),但由于他很不稳定,偏差可 ...

随机推荐

  1. 迷你MVVM框架 avalonjs 学习教程22、avalon性能大揭密

    avalon之所以能在页面处理1W个绑定(angular对应的数字是2000),出于两个重要设计--基于事件驱动的双向绑定链及智能CG回收机制. avalon的双向绑定链是通过Object.defin ...

  2. docker问题

    Docker报错 WARNING: IPv4 forwarding is disabled. Networking will not work. 解决办法: # vim /usr/lib/sysctl ...

  3. SQL dialect is not configured

    在Idea中,xml配置文件报错:SQL dialect is not configured 解决方法如下: 在Idea中,在报错的地方按alt+enter,然后点击Generic配置dialect即 ...

  4. 使用jQuery可能出现的错误

  5. mongo通信协议

    先是一个包头: struct MsgHeader { int32 messageLength; // total message size, including this int32 requestI ...

  6. 给出一个十六进制的数0xFF 0x80 (只有2“位”) 将其转换成有符号的一字节的十进制整数

    #include <stdio.h>#include<iostream>#include <stdlib.h>#include<string.h>usi ...

  7. python单线程下实现多个socket并发

    先看服务端的代码 import sys # import socket import time import gevent from gevent import socket from gevent ...

  8. VS Access DataSet 插入

    在使用vs2008+access数据库,然后又使用了数据集,这时候插入操作遇到了问题,各种乱七八糟.各种头疼的问题就不说了,现在说找到的解决方法: 在xsd文件中插入TableAdapter后,会自动 ...

  9. ADF 入门帮助

    本文是由英文帮助翻译所得: 1>task flows “任务流 task flows”可以包括非可视化的组件,比如方法调用.“页片段 page fragment”可以运行在一个页面的某个局部区域 ...

  10. Paxos Made Simple

    Paxos一致性算法——分布式系统中的经典算法,论文本身也有一段有趣的故事.一致性问题是分布式系统的根本问题之一,在论文中,作者一步步的加强最初一致性问题(2.1节提出的问题)的约束条件,最终导出了一 ...