CodeForces 939E Maximize】的更多相关文章

Maximize 题意:整个程序有2种操作,操作1将一个元素放入集合S中,且保证最新插入的元素不小于上一次的元素, 操作2 找到集合S中的某个子集合, 使得 集合中最大的元素减去平均数的值最大. 题解:找子集合的时候将整个几个分成2边, 左边为前i个数, 右边为最新插入的数. 那么我们就可以想到, 每次插入新的元素时, 对应最新这个元素的 ans值 的左边部分的个数不会少于前面那个i, 然后我们继续往右边走找到临界的位置就好了, 每次如果左边的值小于现在的平均值就能放入集合中. 代码 #incl…
939E - Maximize! 思路: 贪心:最后的集合是最大值+前k小个 因为平均值时关于k的凹形函数,所以可以用三分求最小值 又因为后面的k肯定比前面的k大,所以又可以双指针 三分: #include<bits/stdc++.h> using namespace std; #define ll long long #define pb push_back #define mp make_pair #define pli pair<ll,int> #define mem(a,b…
E. Maximize! time limit per test 3 seconds memory limit per test 256 megabytes input standard input output standard output You are given a multiset S consisting of positive integers (initially empty). There are two kind of queries: Add a positive int…
<题目链接> 题目大意:给定一段序列,每次进行两次操作,输入1 x代表插入x元素(x元素一定大于等于之前的所有元素),或者输入2,表示输出这个序列的任意子集$s$,使得$max(s)-mean(s)$表示这个集合的最大值与平均值的最大差值. 解题分析:首先,因为输入的$x$是非递减的,所以要使$max(s)-mean(s)$最大,肯定$max(s)$就是最后一个输入元素的大小.$x$已经确定了,现在就是尽可能的使$mean(s)$尽可能的小.如何使得平均值最小呢?肯定是从最前面的最小的元素开始…
传送门 二分答案好题. 题意简述:要求支持动态在一个数列队尾加入一个新的数(保证数列单增),查询所有子数列的 最大值减平均值 的最大值. 然而网上一堆高人是用三分做的. 我们先考虑当前的答案有可能由什么构成. 加入最后一个数之前的最大值. 加入最后一个数之后,以最后一个数为最大值的值. 于是问题变成了去求min{(∑j=1iai)+ani+1}min\{\frac{(\sum_{j=1}^ia_i)+a_n}{i+1}\}min{i+1(∑j=1i​ai​)+an​​} 然后令bi=(∑j=1i…
题意 : 给出两个操作,① 往一个序列集合(初始为空)里面不降序地添加数字.② 找出当前序列集合的一个子集使得 (子集的最大元素) - (子集的平均数) 最大并且输出这个最大差值 分析 :  首先关注到 ① 操作是有序地添加数 然后为了回答 ② 的问询,来分析一波 直觉告诉我们,要最大化差值,选取的子集最大元素应当越大越好 这一点是对的,具体的证明可以看 CF 的官方题解 那么也就是说选出的子集里面必定有当前序列集合的最大值元素 然后为了使(子集的平均数)越小,直觉又告诉我们 需要贪心地选择小的…
E. Maximize! time limit per test 3 seconds memory limit per test 256 megabytes input standard input output standard output You are given a multiset S consisting of positive integers (initially empty). There are two kind of queries: Add a positive int…
Recently Maxim has found an array of n integers, needed by no one. He immediately come up with idea of changing it: he invented positive integer x and decided to add or subtract it from arbitrary array elements. Formally, by applying single operation…
题目链接:http://acm.hust.edu.cn/vjudge/problem/visitOriginUrl.action?id=412145 题目大意:给定一个数字n,问能不能求得一个最小的整数x,使得在1-x范围内,可以取的n组T*k^3<=x.T,k为任意整数,需要在小于等于x的情况下,凑够n对T,k,使其满足T*k^3<=x.若x存在,则输出x,若x不存在,则输出-1. 解题思路: 先看k=2,(1,2,4,8)/(2,4,8,16)/(3,6,12,24).... k=3,(1…
呜呜周日的时候手感一直很好 代码一般都是一遍过编译一遍过样例 做CF的时候前三题也都是一遍过Pretest没想着去检查... 期间姐姐提醒说有Announcement也自信不去看 呜呜然后就FST了 呜呜然后rating-55(果然呜呜 TAT A. Cutting Banner   A large banner with word CODEFORCES was ordered for the 1000-th onsite round of Codeforcesω that takes plac…
vjudge 上题目链接:codeforces 446A 大意是说最多可以修改数列中的一个数,求最长严格递增的连续子序列长度. 其实就是个 dp 的思想,想好思路后交上去没想到一直 wa 在第二个测试数据里,丧心病狂啊 T.T,后来才知道原来是分类讨论时没考虑全,而且下标也写拙了. 情况有三: (1) 不作任何修改,直接遍历一遍求出的 in 数组和 de 数组即可.(其实这种情况不会优于(3),可以不用考虑) (2) 修改的元素为最长递增子序列的中间结点,把左边的 in[i - 1] 加上右边的…
很早就听说acmer界的CF嘞!还记得刚开始听到神犇们在讨论CF的时候我还以为是网游CF(穿越火线)呢... 今年刚开学的时候就打算开始打cf的,由于一些事情耽搁了.之后又要准备省赛所以就一直拖到现在(其实还是自己懒) 今年省赛的时候再一次听到强校的神犇们说起了cf,于是结束之后立马就跑去注册啦一个账号. 从今天开始就要正式开始打cf嘞!!! 由于codeforces是一个外国网站,国内访问有种种的限制.在注册账号的时候就遇到了问题,在输入验证码的时候验证码 的图片一直显示不出来,通过度娘的帮忙…
A.Phillip and Trains CodeForces 586D 题意:过隧道,每次人可以先向前一格,然后向上或向下或不动,然后车都向左2格.问能否到达隧道终点. 题解:dp,一开始s所在列如果前方为'.'则dp[i]=1.r[i]代表上一次的dp[i]值. 如果该行当前可行,那么它就可以更新它上下两行(如果有),必须用r[i]去更新. 再判断每行在当前时间是否会发生撞车:看看位置 i+t*2,i+t*2+1,i+t*2+2 是否有车. #include <iostream> #inc…
CF-补题1 1.CodeForces 735C    题意:n个人淘汰赛,两个人可以比赛的条件是:两人打过的场数之差绝对值<2.求冠军最多可以打多少场.  总结:看了题解,转换一下思路.求n个人最多打几场 -> 打x场最少要几个人. 要最少,则f[x]=f[x-1]+f[x-2](即和打了x-1场和x-2场的胜者打).然后对n二分就行. 注:很巧妙,变成fibonacci了. 2.CodeForces 742D   题意:请客可容总量w,每个人量wi.魅力值bi.特殊在有朋友圈,同一朋友圈中…
一. 基本变化<SCRIPT LANGUAGE="javascript"> <!-- window.open ('page.html', 'newwindow', 'height=100, width=400, top=0, left=0, toolbar=no, menubar=no, scrollbars=no,resizable=no,location=no, status=no') //写成一行 --> </SCRIPT>参数解释:windo…
修改配置文件config.js来定制cheditor的菜单,需要以下步骤: 1.找到ckeditor安装目录的config.js文件 2.记下要使用的功能名,以下的"-"代表分隔符,"/"代表换行 ['Source','-','Save','NewPage','Preview','-','Templates'],     ['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print', 'SpellChec…
0.随机森林的思考 随机森林的决策树是分别采样建立的,各个决策树之间是相对独立的.那么,在我们得到了第k-1棵决策树之后,能否通过现有的样本和决策树的信息, 对第m颗树的建立产生有益的影响呢?在随机森林建立之后,采用的投票过程能否增加一定的权值呢?在选取样本的时候,我们能否对于分类错误的样本给予更大的权值,使之得到更多的重视呢? 1.什么是提升思想 提升是一个机器学习技术,可以用于回归和分类问题,它每一步产生一个弱预测模型,并加权累加到总的模型之中,如果每一步的弱预测模型生成都是依据损失函数的梯…
摘要 对偶模型建模是非常有独特的一种建模方式 —— 当问题本身要求指标极小的情况下,对偶模型表现为求极大.本文给出三种最短路径问题的线性规划/混合整数规划模型,其中的第三类最短路径问题采用对偶建模方法.一般情况下采用对偶模型建模并非为对偶而对偶,原因是有些问题采用对偶方式更容易表达.值得注意的是对偶模型的非最优可行解是被建模问题的非可行解,但对偶最优解既是被建模问题的可行解又是被建模问题的最优解. 本文及本博客中所有博文均为原创! 名词及知识点 对偶模型建模 —— 通过对偶方式把实际问题建模为原…
胡凡 本书在第2章对C语言的语法进行了详细的入门讲解,并在其中融入了部分C+的特性. 第3-5章是 入门部分. 第3章 初步训练读者最基本的编写代码能力: 第4章对 常用介绍,内容重要: 第5章是     数学问题,5.7节和5.8节的后半部分内容相对没有那么容易,读者可以选择性阅读. 第6章 C+标准模板库(STL)中的常用容器和algorithm头文件下的常用函数,通过学习本章,读者可以节省许多写代码的时间,把注意力更多地放在解决问题上. 第7~12章是进阶部分. 第7章介绍了  栈.队列和…
前言 1,Xgboost简介 Xgboost是Boosting算法的其中一种,Boosting算法的思想是将许多弱分类器集成在一起,形成一个强分类器.因为Xgboost是一种提升树模型,所以它是将许多树模型集成在一起,形成一个很强的分类器.而所用到的树模型则是CART回归树模型. Xgboost是在GBDT的基础上进行改进,使之更强大,适用于更大范围. Xgboost一般和sklearn一起使用,但是由于sklearn中没有集成Xgboost,所以才需要单独下载安装. 2,Xgboost的优点…
还不怎么熟悉cf呢.. 你应当知道的关于Codeforces的事情 Codeforces简称: cf(所以谈论cf的时候经常被误会成TX的那款游戏).网址: codeforces.com 这是一个俄国的算法竞赛网站,由来自萨拉托夫州立大学.由Mike Mirzayanov领导的一个团队创立和维护,是一个举办比赛.做题和交流的平台.举办比赛和做题就不说了,“交流”指的是自带blog功能,可以求助/发布题解之类.官方语言是俄语和英语,因此可能有些偏僻的题目的题解是用俄语写的,别慌,扔给Google…
URAL - 1960   Palindromes and Super Abilities 回文树水题,每次插入时统计数量即可. #include<bits/stdc++.h> using namespace std; #define eps 1e-9 #define For(i,a,b) for(int i=a;i<=b;i++) #define Fore(i,a,b) for(int i=a;i>=b;i--) #define lson l,mid,rt<<1 #d…
A Absolute Mode Transform Type-in绝对坐标方式变换输入 Absolute/Relative Snap Toggle Mode绝对/相对捕捉开关模式 ACIS Options ACIS选项 Activate活动:激活 Activate All Maps激活全部贴图 Activate Grid激活栅格.激活网格 Activate Grid Object激活网格对象:激活网格物体 Activate Home Grid激活主栅格:激活主网格 ActiveShade实时渲染…
2014-08-23 11:01:11 -6:四面体 (1)内切球半径:r = 3V / (S1+S2+S3+S4) (2)体积:将四点组成三个向量AB,AC,AD,向量的混合积就是它们组成的平行六面体的体积,四面体体积是其体积的1/6. -5:枚举一个集合(设为s)的所有超集,总共N个物品.(ts为集间差) << N); f = (f + ) | s){ int ts = s ^ f; } -4:枚举一个集合(设为s)的所有非空子集,总共N个物品.(ts为集间差),注意空集需要另外讨论. ;…
Selenium2Library 常用关键字介绍 关于Selenium2Library 的关键字,我们可以参考:http://rtomac.github.io/robotframework-selenium2library/doc/Selenium2Library.html#Unselect%20Checkbox 或者通过F5查找Selenium2Library 关键字库: 下面就来介绍一下Selenium2Libray库中常用的关键字. 1.浏览器驱动   通过不同的浏览器执行脚本  浏览器对…
<SCRIPT LANGUAGE="javascript"> <!-- window.open ('page.html', 'newwindow', 'height=100, width=400, top=0, left=0, toolbar=no, menubar=no, scrollbars=no,resizable=no,location=no, status=no') //写成一行 http://www.aspxuexi.com--> </SCRI…
赛后总结: T:今天下午参加了答辩比赛,没有给予队友很大的帮助.远程做题的时候发现队友在H上遇到了挫折,然后我就和她们说我看H吧,她们就开始做了另外两道题.今天一人一道题.最后我们在研究一道dp的时候,被疯狂卡时间和内存,也是最后三十分钟开始写的,感觉受到了挫折.┭┮﹏┭┮ J:今天开场一个多小时都在看H,还是没打出来,就换了别的题.彭彭说他打过F,F就交给他了.看了G好久,感觉好像能做,就做出来了(while循环没弄好,T了一次,简直是个傻子).最后看了E和J,打了J,还是wa了,自己想的样例…
HDU1176 中文题意不多解释了. 建一个二维dp数组,dp[ i ][ j ]表示第 i 秒落在 j 处一个馅饼.我们需要倒着DP,为什么呢,从 0秒,x=5处出发,假如沿数组正着往下走,终点到哪里我们是不知道的,沿这个路线能最大值,下一秒就未必是最大值.但是我们知道起点,所以我们从终点开始走,走到dp[ 0 ][ 5 ]为止.由于这个总路线存在着诸多未知情况,但是有一点我们可以确定: i , j i+1,j-1       i+1,j       i+1,j+1 对于dp[ i ][ j…
<Pro AngularJS>该书以一个SportsStore案例为主线铺开. 一.开发环境设置 该书中所用的数据库data server开发环境是Deployed,从来没听说过,而且作者也说该数据库data server没什么人用,我干脆弃用之.其他的环境包括 NodeJS——这个必须装 karma——测试环境,前期还没有用到,以后认真研究,毕竟AngularJS一大特点是Unit Test bootstrap——这个现在应该普遍使用了,O(∩_∩)O webstorm——现在唯一支持Ang…
就像title说的,是昨天(2017/9/17)周赛的两道水题…… 题目链接:http://codeforces.com/problemset/problem/14/A time limit per test: 1 second memory limit per test: 64 megabytes A boy Bob likes to draw. Not long ago he bought a rectangular graph (checked) sheet with n rows and…