首页 > 其他分享 >「杂题乱刷」AT_abc308_f

「杂题乱刷」AT_abc308_f

时间:2024-01-26 22:57:30浏览次数:23  
标签:node abc308 forl cin long cmp 杂题 define

链接(at)

链接(luogu)

简单贪心。

又是一道出过很多次的板子题。

容易发现,我们可以将商品价格先从小到大排序,然后使用指针维护,将所有能取的优惠价格放入单调队列里,然后取最大值,因为后面的商品同样也能取此商品去过的同样优惠,故而取最大值即可,不会对最终答案产生影响。

代码:

点击查看代码
#include<bits/stdc++.h>
using namespace std;
#define map unordered_map
#define forl(i,a,b) for(register long long i=a;i<=b;i++)
#define forr(i,a,b) for(register long long i=a;i>=b;i--)
#define lc(x) x<<1
#define rc(x) x<<1|1
#define cin(x) scanf("%lld",&x)
#define cout(x) printf("%lld",x)
#define lowbit(x) x&-x
#define pb push_back
#define pf push_front
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define endl '\n'
#define QwQ return 0;
#define ll long long
ll a[1000010],n,m,ans,l=1;
priority_queue<ll>q;
struct node{
	ll x,y;
}b[1000010];
bool cmp(node x,node y){
	return x.x<y.x;
}
int main()
{
	IOS;
	cin>>n>>m;
	forl(i,1,n)
		cin>>a[i];
	forl(i,1,m)
		cin>>b[i].x;
	forl(i,1,m)
		cin>>b[i].y;
	sort(a+1,a+1+n),sort(b+1,b+1+m,cmp);
	forl(i,1,n)
	{
		while(l<=m && b[l].x<=a[i])
			q.push(b[l].y),l++;
		ans+=a[i];
		if(!q.empty())
			ans-=q.top(),q.pop();
	}
	cout<<ans;
	QwQ;
}

标签:node,abc308,forl,cin,long,cmp,杂题,define
From: https://www.cnblogs.com/wangmarui/p/17990893

相关文章

  • 240125 杂题选谈
    PKUSC2022Mahjonghttp://222.180.160.110:1024/contest/4813/problem/1https://www.bilibili.com/video/BV1JB4y1R7AP/这里是PKUSC当时的讲解视频。听说可以证明本题一定有\(\le5\)的解。好神奇。就比如说我们爆搜,\(9^4\times13^4\)这个显然干不动对吧,所以我们考虑......
  • Trie树学习笔记+杂题(进阶1 Trie)
    前言:回来上课吧,不然真的就没人了。现在也是没有脑子一、Trie树学习笔记+杂题(进阶1Trie)相关题单:戳我1.trie树简介字典树,英文名trie。顾名思义,就是一个像字典一样的树,核心原理就是用空间换时间,利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,所以它可以处......
  • Trie树学习笔记+杂题(进阶1 Trie)
    前言:回来上课吧,不然真的就没人了。现在也是没有脑子一、Trie树学习笔记+杂题(进阶1Trie)相关题单:戳我1.trie树简介字典树,英文名trie。顾名思义,就是一个像字典一样的树,核心原理就是用空间换时间,利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,所以它可以处......
  • 「杂题乱刷」P1558
    好久没写cnblog了,来写一下。做一下恢复训练。P1558(色板游戏)数据结构板子题?反正我一开始是不知道怎么去维护的。反正我代码分块写的跟线段树一样思路大致是把图的颜色化成二进制,然后就很好做了,注意更新时记得顺便维护答案。给大家几个样例来调代码:hack1in:100302C1......
  • 哈希学习笔记+杂题(进阶1 字符串哈希)
    哈希杂题前言:竟然下雪了,但是天是灰蒙蒙的。一、哈希学习笔记+杂题(进阶1字符串哈希)相关题单:戳我字符串哈希因为是一种玄学做法,所以具有极强的延展性。所以再碰到字符串的题时,抛开马拉车,kmp,字典树,AC自动机,SA&SAM,先想一下哈希的做法,如果时间复杂度允许,那就可以直接上哈希(虽然你......
  • 哈希学习笔记+杂题(进阶1 字符串哈希)
    哈希杂题前言:竟然下雪了,但是天是灰蒙蒙的。一、哈希学习笔记+杂题(进阶1字符串哈希)相关题单:戳我字符串哈希因为是一种玄学做法,所以具有极强的延展性。所以再碰到字符串的题时,抛开马拉车,kmp,字典树,AC自动机,SA&SAM,先想一下哈希的做法,如果时间复杂度允许,那就可以直接上哈希(虽然你......
  • 哈希学习笔记+杂题(基础2 字符串哈希)
    哈希杂题前言:骗分神器,我之前竟然没有学。一、哈希学习笔记+杂题(基础2字符串哈希)相关题单:戳我1.哈希(hash)简介哈希算法(HashAlgorithm),又称散列算法。有两种用法,第一种就是将一字符串转化成任意进制的数,目的是方便存储。第二种就是将大范围的数映射成小范围的数,目的也是方便存......
  • 寒假集训杂题选记 2
    目录写在前面CF1288EP3538[POI2012]OKR-AHorriblePoem写在最后写在前面寒假集训期间杂题选记。CF1288E知识点:数据结构,乱搞小清新数据结构。显然\(i\)最靠上的出现位置不是1就是\(i\);\(i\)最靠下的位置一定出现在\(i\)即将被扔到顶上前或者所有操作结束之后,且此......
  • 「杂题乱刷」AT_abc337_e
    题目链接题目传送门(at)题目传送门(luogu)题意简述有\(n\)瓶果汁,其中有一瓶坏的,你需要使用最少的小白鼠使得这些小白鼠能找出已经变质的果汁的编号,对于每只小白鼠,你可以给他们喝任意瓶不重复的果汁,每瓶果汁可以被平均分。解题思路妙妙构造题。思路一:拿\(n\)个小白鼠,每个小......
  • Petrozavodsk Summer 2019. Day 9. MEX Foundation Contest【杂题】
    比赛链接A.TheOnePolynomialMan给定模数\(p\)和\(0\simp-1\)的两个集合\(U,V\),求有多少个有序对\((a,b)\)满足:\(f(a,b)=\prod\limits_{z\inV}\left(\frac{(2a+3b)^2+5a^2}{(3a+b)^2}+\frac{(2a+5b)^2+3b^2}{(3a+2b)^2}-z\right)\equiv0\pmo......