首页 > 其他分享 >1729D解题报告

1729D解题报告

时间:2022-09-22 16:00:04浏览次数:57  
标签:消费 return 报告 1729D ++ int 解题 ans 100050

这是一题开错的题

想法

每次两个人去最优(莫名悲伤),其中一个预算大于实际花费,另一个随意

理由如下

如果两个人去花费超过了预算,此时添加第三个人(他的花费小于预算),那么那个要别人钱的人可以润了

为了保证能去的次数尽量多,一个可以额外消费的人劲量把另一个超出消费的人拉上

只需要一个是为了保证后面额外消费的人能选到一个超出消费的人

而当超出消费的人不能进入餐厅时,只需要将剩下没去过餐厅的能额外消费的人两两分配即可

代码如下

#include <bits/stdc++.h>
using namespace std;
int a[100050],g[100050],f[100050];
bool cmp(int x,int y){return x>y;}
bool cmp1(int x,int y){return x<y;}
int main()
{
	int t;
	scanf("%d",&t);
	while(t--)
	{
		int n,l(0),r(0);
		scanf("%d",&n);
		for (int i=1;i<=n;i++) scanf("%d",&a[i]);
		for (int i=1;i<=n;i++) 
		{
			int x;
			scanf("%d",&x);
			a[i]=x-a[i];
			if (a[i]>=0) l++,f[l]=a[i];
			else r++,g[r]=a[i];
		}
		sort(f+1,f+1+l,cmp);
		sort(g+1,g+1+r,cmp1);
		int j(1),ans(0);
		for (int i=1;i<=l;i++)
		{
			
			while (g[j]+f[i]<0&&j<=r) j++;
			if (j > r) ans=ans+((l-i+1)/2),i=l+1;
			else j++,ans++;
		}
		printf("%d\n",ans);
	}
	return 0;
 } 

标签:消费,return,报告,1729D,++,int,解题,ans,100050
From: https://www.cnblogs.com/by-w/p/16719563.html

相关文章

  • 报告分享|交易银行产业数字生态下的客户经营之战
    全文链接:http://tecdat.cn/?p=28657对公业务一直是中国银行业的半壁江山。但在过去的5年间,传统的抓大户、重投放、重息差的粗放发展模式,面对复杂的宏观经济形势和趋严的监......
  • 报告分享|2022虚拟数字人综合评估指数报告
    报告链接:http://tecdat.cn/?p=28655报告指出,随着互联网软硬件技术发展逐步成熟,在“元宇宙”概念成为热点的同时,虚拟数字人产业也进入“爆发期”。但无论从技术整合、场景......
  • 报告分享|2021年5G融媒体应用研究报告
    全文链接:http://tecdat.cn/?p=28711《研究报告》是在2021年我国5G建设发展与媒体融合纵深发展同步推进的背景下,对新一代信息技术在传媒行业和社会传播活动中应用实践进行......
  • python实验报告(第三周)
    实例01:判断输入的是不是黄蓉所说的数代码如下: 结果: 实例02:验证瑛姑给出的答案是否正确代码如下: 结果: 实例03:输出玫瑰花语代码如下: 结果:  实例......
  • 【SQLServer 】SQLServer健康报告
    使用:1.创建存储过程:usp_SQLhealthcheck_report2.执行存储过程executeusp_SQLhealthcheck_report3.输入mail地址(可选项)4.保存结果输出格式:HTML(支持将html以邮件附件的......
  • Python实验报告
                                                         ......
  • Python实验报告第三章——实例&实战
                                   python第三章——流程控制语句实验报告 一、实验目的和要求1、了解程......
  • Python语言课程实验报告 (第三周)
    Python语言基础实验(第三周)一、实验目的和要求1、了解流程控制语句的结构与类型;2、学习语句的使用;3、掌握流程控制语句的实际应用。二、实验环境软件版本:Python3.......
  • Python实验报告(第三周)
    一、实验目的与要求1.学会控制程序如何执行2.学会使用选择、循环、跳转等语句二、实验环境python版本:3.10(64-bit)三、实验过程1.实例一结果如下:  2.实例二 ......
  • 1733D1&D2解题报告
    1733D1题目大意:给出两个长度为n的01串,每次能选择两个位置进行取反,相邻的位置取反代价为x,不相邻则为y,问让其中一串变成另一串的最小代价初遇想法对于两个串上01不同的......