codeforces C. Booking System
题意:有n组客人,分别告诉每一组的个数和花费,然后给你餐厅内k个桌子,每个桌子的最大容纳人数,如何安排使得餐厅最大收益并且容纳人数尽可能大;
思路:贪心,对花费排序,然后对每一组客人找桌子就可以。
#include <cstdio>
#include <cstring>
#include <algorithm>
#define maxn 2000
using namespace std;
struct node
{
int c,p,id;
bool operator <(const node &a)const
{
return (p>a.p)||(p==a.p&&c>a.c);
}
}q[maxn];
struct node1
{
int x,id;
bool operator <(const node1 &a)const
{
return x<a.x;
}
}p[maxn],pp[maxn];
bool vis[maxn];
int num[maxn]; int main()
{
int n,k;
scanf("%d",&n);
for(int i=; i<n; i++)
{
scanf("%d%d",&q[i].c,&q[i].p);
q[i].id=i+;
}
sort(q,q+n);
scanf("%d",&k);
for(int i=; i<=k; i++)
{
scanf("%d",&p[i].x);
p[i].id=i;
}
sort(p+,p+k+);
memset(vis,false,sizeof(vis));
int ans=,cnt=;
for(int i=; i<n; i++)
{
for(int j=; j<=k; j++)
{
if(p[j].x>=q[i].c&&!vis[p[j].id])
{
pp[cnt].x=q[i].id;
pp[cnt++].id=p[j].id;
ans+=q[i].p;
vis[p[j].id]=true;
break;
}
}
}
printf("%d %d\n",cnt,ans);
for(int i=; i<cnt; i++)
{
printf("%d %d\n",pp[i].x,pp[i].id);
}
return ;
}
codeforces C. Booking System的更多相关文章
- 会议室预订系统(meeting room booking system)
一.mrbs mrbs:(meeting room booking system) 二.效果 三.models from django.db import models # Create your ...
- (水题)Codeforces - 4C - Registration system
https://codeforces.com/problemset/problem/4/C 用来哈希的一道题目,用map也可以强行过,但是性能慢了6倍,说明是在字符串比较的时候花费了接近6倍的时间. ...
- 【codeforces 22C】 System Administrator
[题目链接]:http://codeforces.com/problemset/problem/22/C [题意] 给你n个点; 要求你构造一个含m条边的无向图; 使得任意两点之间都联通; 同时,要求 ...
- Codeforces 458A Golden System
经过计算两个字符串的大小对比 主要q^2=q+1 明明是斐波那契数 100000位肯定超LL 我在每一位仅仅取到两个以内 竟然ac了 #include<bits/stdc++.h> usi ...
- Codeforces 1321D Navigation System
题意 有个人要从\(s\)走到\(t\),经过的路径给定.导航系统每次会显示当前节点到\(t\)的最短路,有多条就显示其中之一.这个人如果按照导航走,那么啥都没变.如果没有按导航走导航就会重新导航.问 ...
- MRBS开源会议室预订系统安装
MRBS系统官方网址 https://mrbs.sourceforge.io/ 最近在找一份开源的会议室预订系统,找了很多种,ASP,PHP的,测试发现MRBS无疑是最好的.开源社区对其介绍如下:M ...
- mrbs - 初识
一.mrbs mrbs:(meeting room booking system)会议室预订系统 二.效果 三.models from django.db import models # Create ...
- Spring mvc解析
方案时间 ,写代码时间 ,解决技术难点时间 , 自测时间,解决bug时间 , 联调时间 ,数据库优化,代码走查1个接口:2个小时 把那个字段再复原回来,不然兼容性不强还有一个刷数据的接口 public ...
- python全栈开发之路
一.Python基础 python简介 python数据类型(数字\字符串\列表) python数据类型(元组\字典) python数据类型(集合) python占位符%s,%d,%r,%f prin ...
随机推荐
- [Reactive Programming] RxJS dynamic behavior
This lesson helps you think in Reactive programming by explaining why it is a beneficial paradigm fo ...
- android 53 ContentProvider内容提供者
ContentProvider内容提供者:像是一个中间件一样,一个媒介一样,可以以标准的增删改差操作对手机的文件.数据库进行增删改差.通过ContentProvider查找sd卡的音频文件,可以提供标 ...
- hadoop资料汇总(网上)
http://blog.csdn.net/fansy1990/article/list/3 全部是hadoop的,挺好. http://stackoverflow.com/ ...
- MySQL Error Handling in Stored Procedures---转载
This tutorial shows you how to use MySQL handler to handle exceptions or errors encountered in store ...
- switch-case参数类型
switch语句用法: 0. switch语句由一个控制表达式和多个case标签组成 1. switch控制表达式支持的类型有byte.short.char.int.enum(JDK5).String ...
- 45种Javascript技巧大全
JavaScript是一个绝冠全球的编程语言,可用于Web开发.移动应用开发(PhoneGap.Appcelerator).服务器端开发(Node.js和Wakanda)等等.JavaScript还是 ...
- TabHost理解与使用
一.继承关系 java.lang.Object ↳ android.view.View ↳ android.view.ViewGroup ↳ android.widget.FrameLayout ↳ ...
- HashMap HashTable HashSet
原文转载自 http://blog.csdn.net/wl_ldy/article/details/5941770 HashMap是新框架中用来代替HashTable的类 也就是说建议使用HashMa ...
- switch语法之PHP
$a = 100; switch ($a) { case 100: echo '满分'; break; case $a >=60: echo '及格'; break; }
- 写个接口的实现类,在方法的前面加了@Override居然报错
据说这是jdk的问题,@Override是JDK5就已经有了,但有个小小的Bug,就是不支持对接口的实现,认为这不是Override 而JDK6修正了这个Bug,无论是对父类的方法覆盖还是对接口的实现 ...