栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > C/C++/C#

【每日一题】2019 ICPC Malaysia National E - Optimal Slots

C/C++/C# 更新时间:发布时间: 百科书网 趣学号

 不无聊的一道题,可以试试,明天做f题

Problem - E - Codeforceshttps://codeforces.com/gym/102219/problem/E题目:您住所的主厅向当地社区和公众开放。 由于它是建立在公众捐赠的基础上的,因此使用它是免费的。 每个周末,尤其是公共假期,最多可预订 50 次,用于不同持续时间的多个活动。 您已被居民指派制定一项选择活动的计划,以最大限度地利用每个周末的分配时间,并尽可能缩短未使用的时间。 程序应该找到最能填满分配时间的事件,并按照预订列表中出现的相同顺序打印它。

思路,用前一种状态更新,用队列存状态的下标,当下标排列小于遍历的情况时,更新状态。

mle了一次,数据需加强,看起来体积不超过1e5

ac代码

#include
using namespace std;
const int N=1e5+1;
queue  l[N];
queuell;
int a[1006];
int main(){
	int s,n;
	while(cin>>s){
		memset(a,0,sizeof(a));
		for(int i=1;i<=s;i++){
			while(!l[i].empty()){
				l[i].pop();
			}
		}
	    if(!s)return 0;
		cin>>n;
		for(int i=1;i<=n;i++){
			cin>>a[i];
			for(int j=s-a[i];j>=0;j--){
				if(l[j+a[i]].empty()&&j==0){
					//cout<=l[j+a[i]].back())continue;
					}
				//	cout<=0;i--){
			if(!l[i].empty()){
				while(!l[i].empty()){
					cout<

孩子又要上课了,作业好多555555

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/296380.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号