Atcoder ABC297 E-G

E - Kth Takoyaki Set

链接:

E - Kth Takoyaki Set

简要题意:

问题陈述

有 \(N\) 种章鱼烧出售。一个 \(i\) -种的章鱼烧售价为 \(A_i\) 日元。

高桥总共至少会买一个章鱼烧。他可以购买多个同类章鱼烧。

求高桥可能支付的 \(K\) 个最低价格。在这里,如果有多套章鱼烧的价格相同,那么价格只计算一次。

思路:

  • 我们发现求topk问题,那么想到了二分或者说堆,我们发现二分不好求解
  • 想想小根堆,我们发现我们每次取出最小的数,然后暴力枚举数组,让数组与最小值相加,再丢入堆中,弹出k个即可,最后返回堆顶
  • 然后记得map去重

代码:

const int N = 200005;
int n,k;
int a[N];
void solve(){
cin >> n >> k;
priority_queue<int,vector<int>,greater<int>> q;
set<int> se;
q.push(0);
for(int i = 1;i<=n;i++){
cin >> a[i];
}
int id = 0;
while(id < k){
id++;
int tp = q.top();q.pop(); for(int j = 1;j<=n;j++) {
if(se.count(tp+a[j])) continue;
se.insert(tp+a[j]);
q.push(tp+a[j]);
}
}
cout << q.top();
}

F - Minimum Bounding Box 2

组合数学+容斥 待补

G - Constrained Nim 2

sg函数 待补

Atcoder ABC297 E-G的更多相关文章

  1. Storyboards Tutorial 03

    这一节主要介绍segues,static table view cells 和 Add Player screen 以及 a game picker screen. Introducing Segue ...

  2. 文件图标SVG

    ​<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink ...

  3. AtCoder - 4496 G - k-DMC

    AtCoder - 4496 G - k-DMC 题目 长度为n的字符串,q次查询,问"DMC"(不要求连续)在字符串中出现的次数,其中D和M的距离不超过k. 错误思路 通过遍历字 ...

  4. AtCoder Beginner Contest 260 G // imos(累积和算法)

    题目传送门:G - Scalene Triangle Area (atcoder.jp) 题意: 给定大小为N*N的OX矩阵,若矩阵的(s,t)处为O,其覆盖范围为:满足以下条件的所有位置(i,j) ...

  5. AtCoder Beginner Contest 220部分题(G,H)题解

    刚开始的时候被E题卡住了,不过发现是个数学题后就开始使劲推式子,幸运的是推出来了,之后的F题更是树形DP换根的模板吧,就草草的过了,看了一眼G,随便口胡了一下,赶紧打代码,毕竟时间不多了,最后也没打完 ...

  6. [题解] Atcoder Beginner Contest ABC 270 G Ex 题解

    点我看题 G - Sequence in mod P 稍微观察一下就会发现,进行x次操作后的结果是\(A^xS+(1+\cdots +A^{x-1})B\).如果没有右边那一坨关于B的东西,那我们要求 ...

  7. AtCoder Beginner Contest 282 G - Similar Permutation

    套路题 题意 求有多少个 \(1\) 到 \(n\) 的排列满足恰有 \(k\) 对在排列中相邻的数满足前小于后 \(2 \leq n \leq 500, 0 \leq k \leq (n - 1)\ ...

  8. AtCoder Beginner Contest 272 - G - Yet Another mod M

    随机 + 数论 题意 Submission #35524126 - AtCoder Beginner Contest 272 给一个长度为 \(n\;(1<=n<=5000)\) 的数组 ...

  9. Atcoder CODE FESTIVAL 2016 Final G - Zigzag MST[最小生成树]

    题意:$n$个点,$q$次建边,每次建边选定$x,y$,权值$c$,然后接着$(y,x+1,c+1),(x+1,y+1,c+2),(y+1,x+2,c+3),(x+2,y+2,c+4)\dots$(画 ...

  10. AtCoder Grand Contest 030题解

    第一次套刷AtCoder 体验良好 传送门 Poisonous Cookies cout<<b+min(c,a+b+); Tree Burning 难度跨度有点大啊 可以证明当第一次转向之 ...

随机推荐

  1. MoneyPrinterPlus:AI自动短视频生成工具-腾讯云配置详解

    MoneyPrinterPlus可以使用大模型自动生成短视频,其中的语音合成和语音识别部分需要借助于一些第三发云厂商的语音服务. 很多小伙伴可能不知道应该如何配置,这里给大家提供一个详细的腾讯云语音服 ...

  2. Python 使用Matplotlib绘制可拖动的折线

    Python 使用Matplotlib绘制可拖动的折线 效果图:  可以拖曲线上的点调整, 也可以拖旁边的sliderbar调整. 代码如下: import matplotlib.animation ...

  3. 第三方App与Termux命令建立IO通道

    目录 前言 一.Android 进程间通信(IPC) 二.Netcat 网络瑞士军刀 三.第三方 App 与 Termux 建立 TCP/Socket 通信 四.应用:调用 LSP 语言服务器 参见 ...

  4. 解决keil5仿真错误:Encountered an improper argument

    --- title: 解决keil5仿真错误:Encountered an improper argument date: 2020-06-18 03:13:18 categories: tags: ...

  5. 【论文阅读】VDBFusion: Flexible and Efficient TSDF Integration of Range Sensor Data

    Type: Sensors Year: 2022 tag: Mapping 组织: Bonn 参考与前言 论文链接:https://www.ncbi.nlm.nih.gov/pmc/articles/ ...

  6. NXP i.MX 8M Mini工业级核心板规格书(四核ARM Cortex-A53 + 单核ARM Cortex-M4,主频1.6GHz)

     1 核心板简介 创龙科技SOM-TLIMX8是一款基于NXP i.MX 8M Mini的四核ARM Cortex-A53 + 单核ARM Cortex-M4异构多核处理器设计的高端工业级核心板,AR ...

  7. P5327 题解

    考虑把贡献摊到每个点上计算,每个点带来的贡献实际上是经过它的路径并大小,算完求和之后在除以 \(2\) 就得到了答案. 考虑怎么计算路径并大小. 考虑这样一个办法,将所有路径的起始点和终点按照 DFS ...

  8. yb课堂 VSCODE编译器和开发环境搭建 《二十五》

    前端编辑器 vscode:免费开源的现代化轻量级代码编辑器,支持大部分主流的开发语言的语法高亮.智能代码补全.自定义热键.代码对比DIFF.GIT等特性,支持插件扩展,软件跨平台支持Win.Mac以及 ...

  9. Aspose 导出Excel时 隐藏指定列

    Worksheet ws = wb.Worksheets[0]; ws.Cells.HideColumn(0); //隐藏Excel第一列

  10. UML类图的表示

    1.类的表示方法 2.接口的两种表示方法 3.类的继承怎么表示 空心三角形+实线 4.类实现接口 空心三角形+虚线 5.关联(association)关系 实线箭头 6.聚合(aggregation) ...