考试题目“笨笨的西瓜种植”
【题目描述】
笨笨种了一块西瓜地,但这块西瓜地的种植范围是一条直线的…… 笨笨在一番研究过后,得出了m个结论,这m个结论可以使他收获的西瓜最多。 笨笨的结论是这样的: 从西瓜地B处到E处至少要种植T个西瓜,这个范围的收获就可以最大化。 笨笨不想那么辛苦,所以他想种植的西瓜尽量少,而又满足每一个所得的结论。
【输入】
第一行两个数n,m(0<n<=5000,0<=m<=3000),表示笨笨的西瓜地长n,笨笨得出m个结论。
接下来m行表示笨笨的m个结论,每行三个数b,e,t(1<=b<=e<=n,0<=t<=e-b+1)
【输出】
输出笨笨最少需种植多少西瓜。
【输入样例】
9 4
1 4 2
4 6 2
8 9 2
3 5 2
【输出样例】
5
这道题必须做到“贪”!
尽量一个西瓜种的地方满足尽量多的条件
先sort
先以右边越小越好,再以左边越小越好
西瓜尽量种右边
问题就解决啦
代码如下:
<span style="font-size:12px;"><span style="BACKGROUND-COLOR: #ffff99">#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<stack>
#include<queue>
using namespace std;
struct ill{
int l,r,g;
}a[3001];
bool fuu(ill x,ill y)
{
if(x.r<y.r)
return 1;
if(x.r==y.r&&x.l<y.l)
return 1;
return 0;
}
int v[5001],k;
int main()
{
freopen("watermelon.in","r",stdin);
freopen("watermelon.out","w",stdout);
int n,m,i,j;
scanf("%d%d",&n,&m);
for(i=0;i<m;i++)
scanf("%d%d%d",&a[i].l,&a[i].r,&a[i].g);
sort(a,a+m,fuu);
for(i=0;i<m;i++)
{
for(j=a[i].l;j<=a[i].r;j++)
if(v[j])
a[i].g--;
if(a[i].g>0)
{
for(j=a[i].r ; j>=a[i].l&&a[i].g>0 ; j--)
{
if(!v[j])
{
v[j]=1;
a[i].g--;
}
}
}
}
for(i=0;i<=n;i++)
if(v[i])
k++;
printf("%d",k);
}</span><span style="font-size:14px;"></span></span>
贪得好开心,一次AC!!(^-^)
考试题目“笨笨的西瓜种植”相关推荐
- 考试题目“笨笨玩游戏”
[题目描述] 一天,笨笨和妈妈玩游戏,妈妈 给笨笨出N个正整数,让笨笨把这N个正整数连接生成一个"大"的整数,每个正整数只使用一次,让笨笨告诉妈妈这样生成的大整数的最大值. 例如, ...
- NKOI 1385 笨笨种西瓜
笨笨种西瓜 Time Limit:10000MS Memory Limit:165536K Total Submit:163 Accepted:82 Case Time Limit:1000MS D ...
- NKOJ——P1385——笨笨种西瓜
时间限制 : 10000 MS 空间限制 : 165536 KB 原题 问题描述 输入格式 输出格式 样例输入 样例输出 题解 原题 问题描述 笨笨种了一块西瓜地,但这块西瓜地的种植范围是一条直线的- ...
- 模拟考试9.3-笨笨连线游戏(route.cpp)
[题目描述] 一天,妈妈在黑板上画了一个大大的圆,然后又在圆弧上标上1,2,3,...,,2N个数.然后让笨笨任意选取一对数(两个不同的数)上连一条直线.然后再任意选取一对数,再边一条直线,但这条直线 ...
- 题目:[NOIP2008]笨小猴
题目描述 笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼.但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大! 这种方法的具体描述如下:假设maxn是单词中出现次数最 ...
- 2014华为编程大赛题目2:笨笨熊搬家打包篇
注:2014华为编程大赛题目2 下面贴出我的代码,经过多次测试后,无问题, 所以想共享下,也看看大家的思路. 笨笨熊搬家打包篇 描述:森林里的笨笨熊今天可开心啦--他买了新房子,乔迁新禧要搬新家了.因 ...
- 2014华为编程大赛题目:笨笨熊搬家打包篇
题目:笨笨熊搬家打包篇 森林里的笨笨熊今天可开心啦--他买了新房子,乔迁新喜要搬家了. 因此,笨笨熊请了许多好朋友来帮忙搬家,并准备了很多小纸盒用来装需要搬的物品, 不过,这些纸盒的容积都是相同的,并 ...
- 【模考3】笨笨连线游戏
[题目描述] 一天,妈妈在黑板上画了一个大大的圆,然后又在圆弧上标上1,2,3,...,,2N个数.然后让笨笨任意选取一对数(两个不同的数)上连一条直线.然后再任意选取一对数,再边一条直线,但这条直线 ...
- 笨笨工作室告别十月模拟赛
笨笨工作室告别十月模拟赛 为了大家适应今年复赛电子版题目特意整理了一份电子版题目: /Files/hhdllhflower/笨笨工作室告别十月模拟赛.rar Chess Background 笨笨:& ...
最新文章
- 学历案与深度学习电子书
- delphi编码规范文档
- infor wms 项目启动_全一,企业物流定制专家——企业客户项目管理流程解析
- poj 2342 树形DP
- MATLAB GPU编程基础
- dev c++ 代码补全_zsh配置与代码自动补全+tmux配置
- windows和linux命令的区别,linux和windows命令区别
- linux6无法启动iscsi服务,RHEL6下安装配置ISCSI服务器
- day4 终止条件continue和break和return的区别
- libjpeg php,libjpeg62_turbo
- js+html空间数据编码问题--以姓名为例(代码设涉及文件读取,文本数字提取,特别是文本x,y坐标的提取)
- c语言二fseek从文件头移动_C语言fseek函数
- 图的遍历之DSF深度优先算法6.2.1(网络整理)
- cad2019菜单栏怎么调出来_cad怎样调出菜单栏(cad2016工具栏怎么调出来)
- 自动对焦模式与af区域模式_什么是自动对焦,不同模式意味着什么?
- simulink中不能改名_王者荣耀:万格改名教学,空白名、重复名、个性符号名改法技巧!...
- Html文本域介绍,html文本域标签属性有哪些?html文本域标签属性用法介绍
- 窗口函数 OVER(PARTITION BY ...)
- 清华、南京大学计算机系女神非常敬佩的IT公众号
- VBA 连接Oracle 数据库
热门文章
- a33 linux 硬解码_全志A33 lichee 开发板 Linux中断编程原理说明
- 喝啤酒喝出的数学问题
- 使用rpmbuild制作jdk的包_Centos下使用rpmbuild以及checkinstall制作RPM包
- 女程序员、女设计师、女运营……原来女生也能活成这样!
- IE11浏览器js加载数据不显示问题的解决
- MATLAB GUI 停止运行程序,Matlab gui教程0x4-GUI程序打开、运行和发布
- Typescript快速上手(js转ts必备)
- sqlzoo刷题记录
- [转]终于有人说出来了——Java不适合于作为主要编程教学语言
- 白盒测试-六种基本方法