CF1200B

解法:

贪心。当在第i列时,尽可能多的取走第i列的木块使得袋子里的木块尽可能多

CODE:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm> using namespace std; const int N = 1e3 + 5; int n,m,k,T,h[N]; int main() {
scanf("%d",&T);
while(T--) {
scanf("%d%d%d",&n,&m,&k);
for(int i = 1 ; i <= n ; i++)
scanf("%d",&h[i]);
if (n == 1) {
puts("YES");
continue;
}
int pos = 1;
for(int i = 2 ; i <= n ; i++) {
if(h[pos] > h[i]) {
int t = h[pos] - h[i] + k;
if (t > h[pos])
t = h[pos];
m += t;
pos++;
} else if (h[i] - h[pos] <= k) {
int t = k - h[i] + h[pos];
if (t > h[pos])
t = h[pos];
m += t;
pos++;
} else if (h[i] - h[pos] <= k + m) {
m -= h[i] - h[pos] - k;
pos++;
} else {
puts("NO");
break;
}
}
if (pos == n) puts("YES");
}
//system("pause");
return 0;
}

CF1200B的更多相关文章

随机推荐

  1. What's new in C# 7.0

    1.数字分隔符(Digit Separators ) 数字分隔符使代码更具可读性.在声明变量时,可以将_添加到单独的数字中.编译器只删除_.以下代码片段在C#7中看起来更具可读性: In C# 6 l ...

  2. Asp.Net Core 轻松学系列-3项目目录和文件作用介绍

    目录 前言 结语 前言     上一章介绍了 Asp.Net Core 的前世今生,并创建了一个控制台项目编译并运行成功,本章的内容介绍 .NETCore 的各种常用命令.Asp.Net Core M ...

  3. wstngfw中配置snort

    wstngfw中配置snort 概述 Snort是入侵检测和预防系统.它可以将检测到的网络事件记录到日志并阻止它们.Snort使用称为规则的检测签名进行操作. Snort规则可以由用户自定义创建,或者 ...

  4. vue、react中循环遍历为什么会有key,key有什么作用?

    先讲一下,vue和react都是在操作虚拟dom,并且根据diff算法进行新旧dom对比,从而更新dom,以vue举例: vue官方文档中写到有 key 的特殊属性主要用在 Vue 的虚拟 DOM 算 ...

  5. centos7安装google浏览器

    1. 配置yum源 在目录 /etc/yum.repos.d/ 下新建文件 google-chrome.repo cd /ect/yum.repos.d/ vim google-chrome.repo ...

  6. ASIHTTPRequest源码简单分析

      1.前言      ASIHttprequest 是基于CFNetwork的,由于CFNetwork是比较底层的http库,功能比较少,因此,在ASIHttprequest中实现了http协议中比 ...

  7. 页面使用element-tree

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Image Processing and Analysis_15_Image Registration:Mutual-Information-Based Registration of Medical Survey——2003

    此主要讨论图像处理与分析.虽然计算机视觉部分的有些内容比如特 征提取等也可以归结到图像分析中来,但鉴于它们与计算机视觉的紧密联系,以 及它们的出处,没有把它们纳入到图像处理与分析中来.同样,这里面也有 ...

  9. 带参数的动态sql

    CREATE PROC Procout(@input INT, @result INT output) AS BEGIN SET @result = @input END go DECLARE @in ...

  10. 2018/7/31-zznuoj-问题 A: A + B 普拉斯【二维字符串+暴力模拟+考虑瑕疵的题意-0的特例】

    问题 A: A + B 普拉斯 在计算机中,数字是通过像01像素矩阵来显示的,最终的显示效果如下:  现在我们用01来构成这些数字 当宝儿姐输入A + B 时(log10(A)<50,log10 ...