有n个函数,分别为F1,F2,…,Fn。定义Fi(x)=Ai*x^2+Bi*x+Ci(x∈N*)。给定这些Ai、Bi和Ci,请求出所有函数的所有函数值中最小的m个(如有重复的要输出多个)。
【输入格式】
第一行输入两个正整数n和m。
以下n行每行三个正整数,其中第i行的三个数分别位Ai、Bi和Ci。输入数据保证Ai<=10,Bi<=100,Ci<=10 000。
【输出格式】
输出将这n个函数所有可以生成的函数值排序后的前m个元素。
这m个数应该输出到一行,用空格隔开。
【输入样例】
3 10
4 5 3
3 4 5
1 7 1
【输出样例】
9 12 12 19 25 29 31 44 45 54


思路很简单:
首先a,b,c都大于0,对称轴在y轴的左边,开口向上,则在y轴右边函数单调递增。所以x=1是函数的最小值,依次增大。直到有m个最小的值。

#include<bits/stdc++.h>
using namespace std;
typedef long long int ll;
const int N=10000+10;
int a[N],b[N],c[N];
struct node{int u,v,x;bool operator <(const node &p)const{return v>p.v;}
}now;
priority_queue<node >q;
int solve(int i,int x)
{return a[i]*x*x+b[i]*x+c[i];
}
int main()
{int n,m;scanf("%d%d",&n,&m);for(int i=0;i<n;i++){scanf("%d%d%d",&a[i],&b[i],&c[i]);now.u=i,now.v=solve(i,1),now.x=1;q.push(now);}while(m){now=q.top();q.pop();printf("%d ",now.v);now.x=now.x+1;now.v=solve(now.u,now.x);q.push(now);m--;}return 0;
}

最小函数值(minval)相关推荐

  1. 1370:最小函数值(minval)

    [题目描述] 有n个函数,分别为F1,F2,...,Fn.定义Fi(x)=Aix2+Bix+Ci(x∈N∗).给定这些Ai.Bi和Ci,请求出所有函数的所有函数值中最小的m个(如有重复的要输出多个). ...

  2. 洛谷 一种堆套路 P1631序列合并、P2085最小函数值

    题目链接 序列合并 最小函数值 题解 这两道题做法基本一样,是使用同一种套路解决的,这里用序列合并来举例说明. 序列合并要求出N2N2N^2个和中最小的N个数. 我们用一个堆来维护我们需要的数,并且保 ...

  3. P2085 最小函数值(优先队列 分组法运用)

    最小函数值 题目描述 有 nnn 个函数,分别为 F1,F2,-,FnF_1,F_2,\dots,F_nF1​,F2​,-,Fn​.定义 Fi(x)=Aix2+Bix+Ci(x∈N∗)F_i(x)=A ...

  4. [优先队列] 洛谷 P2085 最小函数值

    题目描述 有n个函数,分别为F1,F2,...,Fn.定义Fi(x)=Ai*x^2+Bi*x+Ci (x∈N*).给定这些Ai.Bi和Ci,请求出所有函数的所有函数值中最小的m个(如有重复的要输出多个 ...

  5. P2085 最小函数值 堆

    题目描述 有n个函数,分别为F1,F2,...,Fn.定义Fi(x)=Ai*x^2+Bi*x+Ci (x∈N*).给定这些Ai.Bi和Ci,请求出所有函数的所有函数值中最小的m个(如有重复的要输出多个 ...

  6. 最小函数值(信息学奥赛一本通-T1370)

    [题目描述] 有n个函数,分别为F1,F2,...,Fn.定义Fi(x)=Aix2+Bix+Ci(x∈N∗).给定这些Ai.Bi和Ci,请求出所有函数的所有函数值中最小的m个(如有重复的要输出多个). ...

  7. 【Luogu2085】最小函数值(优先队列)

    problem 给定n个二次函数(ai,bi,ci > 0) 求前m小的fi(x)值,x>0 n, m < 1e4. solution 因为都大于0了,所以全都是单增的..x=1 时 ...

  8. 【洛谷 P2085】最小函数值【堆】

    解题思路 所以我们建一个大根堆,存最小的数到第m小的数,第m小的数就理所当然的是堆顶了. 每次我们只需要比较新加进来的数比堆顶大还是比堆顶小. 如果比堆顶小,将原来的堆顶丢掉,将新的数塞进去: 如若比 ...

  9. 二叉树练习:最小函数值

    Description 有n個函數,分別為F1,F2,...,Fn.定義Fi(x)=Ai*x2+Bi*x+Ci(x∈N).給定這些Ai.Bi和Ci,請求出所有函數的所有函數值中最小的m個(如有重複的要 ...

最新文章

  1. 我对javascript对象的理解
  2. 自己动手实现OpenGL-OpenGL原来如此简单(二)
  3. 2021年茅台销售现新套路,限价控价没有用?
  4. pppoe错误代码 linux,PPPOE常见故障代码及分析
  5. 游戏中子弹的工作原理
  6. Android开发之Android Material Design Toolbar自定义随笔
  7. VC网络通信API概览
  8. java 压缩jar 仓库,java服务安装(一):使用java service wrapper及maven打zip包
  9. matlab气相分解反应动力学,第十二章 化学动力学.ppt
  10. 用Solr4.10实在全文检索
  11. jQuery EasyUI使用教程之创建展开行详细编辑表单的CRUD应用
  12. pdf增强锐化软件_安卓软件—CamScanner 扫描全能王
  13. sql max同一行_SQL 打印矩阵(三)
  14. 命令: LIST 响应: 150 Opening BINARY mode data connection. 错误: 20 秒后无活动,连接超时 错误: 读取目录列表失败
  15. 【react】---函数化编程的理解,柯里化函数及返柯里化函数的理解...
  16. 白杨SEO:聊聊微信红包封面、微信8.0状态背景图片和视频素材背后的商机
  17. Tmux(-yank,-cssh,-xpanes)使用指南
  18. 设计模式(四):模板方法模式、迭代器和组合模式、状态模式
  19. python的array是什么意思_[:,:]在NumPy数组上是什么意思
  20. AppleScript开机自动登录ChinaUnicom

热门文章

  1. mysql备份和优化_MySql Innodb存储引擎--备份和优化
  2. 基础拓扑学笔记(1)——欧拉定理
  3. 分享四个体验不错的云游戏平台—网易云游戏、腾讯云游戏、菜鸡云游戏、格莱云游戏
  4. 联发科p60和骁龙710哪个好_骁龙670、联发科P60和麒麟710哪个好 详细对比介绍
  5. LPC17XX系列ISP升级流程
  6. 设计模式与软件体系结构复习资料——设计模式
  7. linux 系统内存nand flash,uboot在nandflash存储时内存和NandFlash存储空间
  8. FreeBSD常用命令 110 条
  9. java发邮件要收费吗,2年以上经验必看
  10. 线性变换到底是什么以及与矩阵之间的联系