The Bucket List

The Bucket List
题面

题意
给出n头牛的开始结束时间及占有的桶数量。每个开始结束时间不重复。求用最少的桶满足需求。
分析
题目告诉我们n的范围是不超过100即1e2,所以我们可以知道三次循环对于这题也是绰绰有余的,那么我们就可以利用最简单的暴力模拟所有情况。
模拟题一般有两种做法,一个是从头开始模拟到结束。另外一个是从结束的结果出发发现一些奇特的东西然后会让模拟变得简单。比如之前我博客上有一道back and force,如果从前往后模拟的话,就会发现有很多障碍。但是我们从结果出发的话,我们就可以发现这个题目只有3种结果,从而水到渠成地模拟出来。
但是这题,我们可以直接从开始到结束模拟。具体怎么模拟呢?
首先我们要排序,也就是取奶的顺序。当我们用sort排好顺序之后,我们就可以开始模拟了。
从第一头开始遍历到第n头牛,在开始决策第一头牛要多少桶前需要扫一遍第一头牛到这一头年之前的一头牛,看是否有些桶可以收回来。通过这样遍历就可以知道最后的答案是什么了。
AC代码

#include <cstdio>
#include <cstring>
#include <queue>
#include <algorithm>
#include <iostream>
using namespace std;
struct T{
int s;
int t;
int b;
}a[102];
bool cmp(struct T a,struct T b){
return a.s<b.s;
}
int vis[102];//用完就标记1
int main()
{
	int n,i,q,sum=0,left=0,j;
	cin>>n;
	for(i=1;i<=n;i++)
	cin>>a[i].s>>a[i].t>>a[i].b;
	sort(a+1,a+n+1,cmp);
	sum+=a[1].b;
	for(i=2;i<=n;i++){
		for(j=1;j<=i;j++){
			if(vis[j]==1)
				continue;
			if(j==i){if(left<a[i].b){
				sum+=(a[i].b-left);
				left=0;
			}
			else{
				left-=a[i].b;
			}
	                    break;
			}
			if(a[i].s>=a[j].t){
				vis[j]=1;
				left+=a[j].b;//每放一个i的时候就看前面有没有可以收的
			}

			/*if(left<a[i].b){ sum+=(a[i].b-left); left=0; } else{ left-=a[i].b; } break;*/
		}
	}
	cout<<sum<<endl;
   return 0;
}
全部评论

相关推荐

钱嘛数字而已:辅导员肯定不能同意,不然你出事了,他要承担责任。但是,脚和脑子都长在你自己身上,使用它还需要向辅导员报告么? 辅导员必须按流程拒绝你,然后你拿出成年人的态度,做自己的选择。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
正在热议
更多
# 长得好看会提高面试通过率吗? #
4609次浏览 48人参与
# 离家近房租贵VS离家远但房租低,怎么选 #
16917次浏览 137人参与
# MiniMax求职进展汇总 #
25286次浏览 322人参与
# 沪漂/北漂你觉得哪个更苦? #
1646次浏览 41人参与
# 你的实习产出是真实的还是包装的? #
3261次浏览 54人参与
# 春招至今,你的战绩如何? #
16231次浏览 147人参与
# 米连集团26产品管培生项目 #
7414次浏览 228人参与
# HR最不可信的一句话是__ #
1118次浏览 33人参与
# AI面会问哪些问题? #
976次浏览 24人参与
# 你做过最难的笔试是哪家公司 #
1319次浏览 23人参与
# AI时代,哪个岗位还有“活路” #
2956次浏览 53人参与
# 不考虑薪资和职业,你最想做什么工作呢? #
152954次浏览 889人参与
# 简历第一个项目做什么 #
32195次浏览 363人参与
# 军工所铁饭碗 vs 互联网高薪资,你会选谁 #
8032次浏览 43人参与
# XX请雇我工作 #
51165次浏览 171人参与
# 简历中的项目经历要怎么写? #
311149次浏览 4272人参与
# 投格力的你,拿到offer了吗? #
178395次浏览 891人参与
# 你最满意的offer薪资是哪家公司? #
77017次浏览 375人参与
# AI时代,哪些岗位最容易被淘汰 #
64881次浏览 895人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
187643次浏览 1123人参与
# 你怎么看待AI面试 #
180898次浏览 1320人参与
# 正在春招的你,也参与了去年秋招吗? #
364423次浏览 2642人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务