Function

题目描述

wls有n个二次函数Fi(x)=aix2+bix+ci(1≤i≤n)。
现在他想在且x为正整数的条件下求的最小值。
请求出这个最小值。

输入

第一行两个正整数n,m。
下面n行,每行三个整数a,b,c分别代表二次函数的二次项,一次项,常数项系数。
1≤n≤m≤100,000
1≤a≤1,000
−1,000≤b,c≤1,000

输出

一行一个整数表示答案。

样例输入

2 3
1 1 1
2 2 2

样例输出

13

【队友的思路】

  每次先把m当成每一份,然后先给n个,剩余的m-n就给当前增长多的那个即可.

【队友的代码】

 #pragma GCC optimize(2)
#include<bits/stdc++.h>
using namespace std;
typedef long long ll; struct node{
ll a, b, c;
ll x, val, pri; bool operator < ( const node & rhs )const {
return pri > rhs.pri ;
}
};
priority_queue<node> Q;
int main()
{
int n, m;
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
{
node tmp ;
scanf("%lld%lld%lld",&tmp.a,&tmp.b,&tmp.c);
tmp.x=;
tmp.pri = *tmp.a*tmp.x+tmp.a+tmp.b;
tmp.val = tmp.a*tmp.x*tmp.x+tmp.b*tmp.x+tmp.c;
Q.push(tmp);
//cout<<tmp.val<<endl;
}
for(int i=;i<=m-n;i++)
{
node tmp=Q.top();
Q.pop();
tmp.x ++ ;
tmp.pri = * tmp.a * tmp.x + tmp.a + tmp.b;
tmp.val = tmp.a * tmp.x * tmp.x + tmp.b * tmp.x + tmp.c;
Q.push(tmp); }
ll Ans = ;
while(!Q.empty())
{
node tmp = Q.top();
Q.pop();
Ans += tmp.val;
}
printf("%lld\n",Ans); return ;
}

【优先队列】Function的更多相关文章

  1. Javascript用数组实现栈和队列

    栈是遵循后进先出(LIFO)规则的一种有序集合,比如桌上的一叠书,我们只能从上面放或取. 队列是遵循先进先出(FIFO)规则的一种有序集合,比如排队,先排到的先离开. 数组也是一种有序的集合,它与上面 ...

  2. js数据结构与算法——队列

    <script> //创建一个队列 function Queue(){ let items = []; //向队尾添加一个新的项 this.enqueue = function(eleme ...

  3. js实现队列结构

    创建队列 let items function Queue { this.enqueue = function(element){ items.push(element) } this.dequeue ...

  4. JavaScript 数据结构与算法之美 - 线性表(数组、栈、队列、链表)

    前言 基础知识就像是一座大楼的地基,它决定了我们的技术高度. 我们应该多掌握一些可移值的技术或者再过十几年应该都不会过时的技术,数据结构与算法就是其中之一. 栈.队列.链表.堆 是数据结构与算法中的基 ...

  5. 【JavaScript数据结构系列】04-优先队列PriorityQueue

    [JavaScript数据结构系列]04-优先队列PriorityQueue 码路工人 CoderMonkey 转载请注明作者与出处 ## 1. 认识优先级队列 经典的案例场景: 登机时经济舱的普通队 ...

  6. 通过百度echarts实现数据图表展示功能

    现在我们在工作中,在开发中都会或多或少的用到图表统计数据显示给用户.通过图表可以很直观的,直接的将数据呈现出来.这里我就介绍说一下利用百度开源的echarts图表技术实现的具体功能. 1.对于不太理解 ...

  7. HDU 5875 Function 优先队列+离线

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5875 Function Time Limit: 7000/3500 MS (Java/Others) ...

  8. javascript数据结构-优先队列

    这里之所以扩充一个 有限队列 是因为,生活使用中队列通常会附加优先级,比如排队买票,一般老人和军人等会有优先权限. 实现:继承上篇的 普通队列实现.这里用一种方法,入队的时候,进行排序插入到指定位置, ...

  9. javascript实现优先队列

    1.概念 一般情况下从队列中删除元素,都是率先入队的元素.但是有些使用队列的情况不遵循先进先出的原则,这就是插队,这需要使用优选队列的数据结构来进行描述. 从优先队列中删除元素的时候,需要考虑优先级的 ...

随机推荐

  1. html5中output元素详解

    html5中output元素详解 一.总结 一句话总结: output元素是HTML5新增的元素,用来设置不同数据的输出,没什么大用,了解即可 <form action="L3_01. ...

  2. form表单文件上传提交且接口回调显示提交成功

    前端: <form method="post" enctype="multipart/form-data" id="formSubmit&quo ...

  3. 【Java文件】按UTF-8编码读取文本文件(逐行方式),排序,打印到控制台

    代码: package findJavaMemberFunction; import java.io.BufferedReader; import java.io.FileInputStream; i ...

  4. Problems with Localtime

    http://pytz.sourceforge.net/#problems-with-localtime https://docs.djangoproject.com/en/2.2/topics/i1 ...

  5. Nginx + Naxsi 打造建议WAF

    --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf ...

  6. OpenCv dnn模块扩展研究(1)--style transfer

    一.opencv的示例模型文件   使用Torch模型[OpenCV对各种模型兼容并包,起到胶水作用], 下载地址: fast_neural_style_eccv16_starry_night.t7 ...

  7. Sword zlog日志库使用

    配置文件*.conf 配置文件具体内容如下: [global] #改变量可以不写,默认是true,如果使用设置为true时,Zlog就会严格检查所用格式和规则,否则,忽略所用格式和规则. strict ...

  8. Qt编写气体安全管理系统1-项目框架

    一.前言 说到项目框架,也叫代码框架,其实是非常重要的,随着编程经验的增加,相信每个程序员都会有一个自己的习惯的项目框架,这个东西跟建房子一样,先把架子搭好,然后挨个往里边填充内容,据说牛逼的架构师都 ...

  9. Spring Cloud Hystrix Dashboard的使用 5.1.3

      Hystrix除了可以对不可用的服务进行断路隔离外,还能够对服务进行实时监控.Hystrix可以实时.累加地记录所有关于HystrixCommand的执行信息,包括每秒执行多少.请求成功多少.失败 ...

  10. Apache使用内置插件mod_php解析php的配置

    apache安装完毕之后,修改httpd.conf配置文件,添加代码如下: LoadModule php5_module modules/libphp5.so <FilesMatch \.php ...