Simple 杂题练手记】的更多相关文章

Problem 1 世界上最可爱的珂朵莉 时间限制:C/C++ 1秒,空间限制:C/C++ 65536K 题目描述 我永远喜欢珂朵莉~! 有两个长为n的序列a[i]与b[i] 你可以把任意不多于x个a序列中的数变成y 你可以把所有序列b中的数减去一个非负数t 你可以把a序列和b序列分别任意打乱 要求对于1 <= i <= n满足a[i] >= b[i] 求t的最小值 输入描述: 第一行三个数n,x,y 之后一行n个数表示a序列 之后一行n个数表示b序列 输出描述 一行一个非负数表示答案…
----19.7.30 今天又开了一个新专题,dp杂题,我依旧按照之前一样,这一个专题更在一起,根据个人进度选更题目; dp就是动态规划,本人认为,动态规划的核心就是dp状态的设立以及dp转移方程的推导,这也是训练的重中之重,所以代码不那么重要,重要的就是dp的思想; T1: A. 消失之物 题目描述 ftiasch 有 N 个物品, 体积分别是 W1, W2, ..., WN. 由于她的疏忽, 第 i 个物品丢失了. “要使用剩下的 N - 1 物品装满容积为 x 的背包,有几种方法呢?” -…
由于换了台电脑,而我的贪心 & 构造能力依然很拉跨,所以决定再开一个坑( 前传: 贪心/构造/DP 杂题选做 u1s1 我预感还有Ⅲ(欸,这不是我在多项式Ⅱ中说过的原话吗) 24. P5912 [POI2004]JAS 一开始直接莽了个点分治,当我测过了样例美滋滋地一交,发现自己获得了 20 分的好成绩之后,才发现事情有那么亿点点不对劲( 不难发现,题目等价于求高度最小的点分树的高度,直接求有点困难,我们不妨来对其进行一些转化:我们考虑给每个点一个标号,那么问题可以转化为,求使得任意两个标号相同…
正睿OI DAY3 杂题选讲 CodeChef MSTONES n个点,可以构造7条直线使得每个点都在直线上,找到一条直线使得上面的点最多 随机化算法,check到答案的概率为\(1/49\) \(n\leq k^2\) 暴力 \(n\geq k^2\),找点x,求直线l经过x,且点数最多,点数\(\geq k+1\),递归,否则再找一个 One Point Nine Nine 现在平面上有\(n\)个点,已知有一个常数\(D\). 任意两点的距离要么\(\leq D\),要么\(\geq 1.…
CQOI2014 数三角形 首先一看题,先容斥一波,求出网格内选三个点所有的情况,也就是C(n*m,3);然后抛出行里三点共线的方案数:C(n,3)*m; 同理就有列中三点共线的方案数:n*C(m,3) 还要刨去对角线的方案数,由于gcd(i,j)-1就是这条线((i,j)与原点的连线)的方案数,然后这样的线斜着因为方向不同就要*2 然后这样的线在整个网格中总共有(m-j+1)*(n-i+1)种所以求出公式C(n*m,3)-n*C(m,3)-m*C(n,3)-∑(m-j+1)*(n-i+1)*(…
自闭集训 Day6 杂题选讲 CF round 469 E 发现一个数不可能取两次,因为1,1不如1,2. 发现不可能选一个数的正负,因为1,-1不如1,-2. hihoCoder挑战赛29 D 设\(f(x)\)表示最后一个数小于等于\(x\)的答案,从左往右加入数并维护\(f(x)\). 加入\(A\)的时候\(f(x)\)要加上\(|x-A|\),再对\(f(x-1)\)取min. 显然\(f(x)\)是一个分段函数,而且斜率是连续整数. 于是只需要维护拐点就可以知道函数长什么样.每次就是…
Preface 又自己开了场CF/Atcoder杂题,比昨天的稍难,题目也更有趣了 昨晚炉石检验血统果然是非洲人... 希望这是给NOIP2018续点rp吧 A.CF1068C-Colored Rooks 现在还没理解题意... B. CF1070K-VideoPosts 一道模拟,没什么好说的. 不过一开始还是WA了...一个智障的坑,感觉做题还是不细心 const int maxn=100005; const int inf=0x7fffffff; int a[maxn],ave,n,k,c…
  记录一些没有写在其他随笔中的 Codeforces 杂题, 以 Problemset 题号排序   1326D2 - Prefix-Suffix Palindrome (Hard version) 题意: 给出一个串 s, |s| ≤ 1e6, 要求选出一个前缀和一个后缀(不相交, 可以为空), 使得它们连接后是一个回文串. 求最长的回文串. 思路: 马拉车处理半径数组, 用前缀, 后缀, 半径与相同的前后缀相交的情况更新答案. view code #include <bits/stdc++…
就是一篇还在咕的文章 DP百题练(一) DP百题练(二) DP百题练(三)…
目录 DP百题练(一) 线性 DP 简述 Arithmetic Progressions [ZJOI2006]物流运输 LG1095 守望者的逃离 LG1103 书本整理 CH5102 移动服务 LG1006 传纸条 CH5104 I-区域 LG1359 租用游艇 USACO2.3 最长前缀 Longest Prefix LG1435 回文字串 LG1854 花店橱窗布置 LG3842 [TJOI2007]线段 LG5017 摆渡车 LG1434 [SHOI2002]滑雪 LG2051 [AHO…
目录 DP百题练(二) 区间 DP NOI1995 石子合并 IOI1998 Polygon CH5302 金字塔 USACO06FEB Treats for the Cows G/S LG1043 数字游戏 LG1063 能量项链 LG1005 矩阵取数游戏 LG3146 [USACO16OPEN]248 G 树形 DP LG1352 没有上司的舞会 CTSC1997 选课 LG1273 有线电视网 POJ3585 Accumulation Degree LG3478 [POI2008]STA…
目录 DP百题练(三) DP百题练(三) 不知不觉也刷了 50 道 DP 题了,感觉确实有较大的进步.(2020.3.20) 这里的 (三) 主要用来记录 DP 的各种优化(倍增.数据结构.斜率.四边形不等式...) 给出 DP百题练(二) 继续努力吧.(DP 优化很难学的,所以更新会慢很多...) 难度太大了,目前接受不了,去玩数据结构了,之后再更吧,咕咕咕(2020.3.21)…
杂题 2019-11-03  21:09:37  by冲冲 1.类加载器的双亲委派机制 类加载器:把类通过类加载器加载到JVM中,然后转换成class对象(通过类的全路径来找到这个类). 双亲委派机制:当有一个类进入虚拟机加载环节后,但是他自己的类加载器不去加载,而是让其父类加载器加载(让上级加载器加载),只有当父类加载器找不到这个类的时候,子类加载器才会去加载. 优点:为了安全,Object是所有类的父类,系统类的加载都是经过Object加载器加载.此时,如果有一个自定义的类,但是类名和系统类…
颓!颓!颓!(bushi 前传: 贪心/构造/DP 杂题选做 贪心/构造/DP 杂题选做Ⅱ 51. CF758E Broken Tree 讲个笑话,这道题是 11.3 模拟赛的 T2,模拟赛里那道题的名字叫猛张(orz ztr),而我刚好在 11.4 把这题 A 了.乍一看好像也没啥问题,不过模拟赛时间是 2020.11.3,而我 AC 这道题的时间是 2021.11.4((( 首先看到这样的题我们肯定会想到贪心,具体来说我们 DFS 一遍整棵树,DFS 到一个节点 \(x\) 时,我们考虑用最…
主要是记录思路,不要被刚开始错误方向带偏了 www 「CF1110F」Nearest Leaf 特殊性质:先序遍历即为 \(1 \to n\),可得出:叶子节点编号递增或可在不改变树形态的基础上调整为递增. 这样就可找出区间 \([l, r]\) 中的叶子节点有哪些了,预处理深度,暴力 \(O(n ^ 2)\). 考虑柿子 \(\min \{\mathrm{d} (y) - \mathrm{d} (\mathrm{f} (x))\}\),其中 \(d(x)\) 表示深度,\(f(x)\) 表示父…
\(\mathcal{Morning}\) \(Task1\)高精度\(\times\)高精度 哦呵呵--真是喜闻乐见啊,我发现这一部分比较有意思于是就打算整理下来233.窝萌现在有一个整数\(A = \sum \limits _{i=0}^{\lfloor log_{10}A \rfloor}{a_i \times 10^i}\) 和另一个整数\(B = \sum \limits _{i=0}^{\lfloor log_{10}B \rfloor}{b_i \times 10^i}\) 那么对…
POJ2152 树形dp,每次先dfs一遍求出距离再枚举所有点转移即可. #include<iostream> #include<cstdio> #include<cmath> #include<cstring> #include<algorithm> using namespace std; inline int read() { ,f=; char ch=getchar(); ; ch=getchar();} +ch-'; ch=getcha…
UVa 11572 - Unique Snowflakes 问一个数组中,无重复数字的最长子串长度是多少. 用map维护某数字上次出现的位置.另外用变量last表示上次出现数字重复的位置. 如果出现重复数字,且map[val]>last时,计算当前区间长度,然后last变为map[val]+1. 其他时候增长区间长度即可. 每次遍历一个元素都要更新map[val],用区间长度更新最优解. #include<iostream> #include<vector> #include…
嗯...这是一道水题... 鉴于还没人写这题的题解, 那我就来写一发. 题意:有个边长为300米的正方形 嗯  这样标号 有两个人A和S,开始的时候A.S都在1(左下角)那个位置. 两个人都要按照2.3.4.1的顺序走. 有两个得分的方法:  ①. 比对手先走到点(2或3或4或1) 先走到的得1分,后走到的不得分. ②. A把S打一顿,A得一分. 题目问的是A能不能获得胜利. A在正方形里面也是可以随便走的.(比如A能直接从1走直线到3, 但是如果他要得分,他必须回到2,按照2341的顺序走 才…
中文题,题意不多说. 本来感觉很像dp 其实只要从上到下维护单调性就好了 坑是......这个oj......用cin很容易TLE...... //#include <bits/stdc++.h> #include <cstdio> #include <cstdlib> #include <cstring> #include <cctype> #include <climits> #include <iostream> #…
题目链接 题意:从1号点走到n号点(每条边只能走一次, 两结点间的边数必定为奇数) 问 经过结点不同顺序的方式有多少种(如1->2->3->4和1->3->2->4为两种) 方法数模上1000000007 此题只需先考虑相邻两结点交替的方法数 然后依次递推相乘即可 就是:如从1走到5 只需先考虑2.3交替的方法数:(很明显与边数有关的组合数) 然后类似的考虑3.4交替的方法数 最后全部相乘就可以了 公式是$\displaystyle\prod\limits_{i=1}^…
题目链接 题意:中文题 题意不多赘述 值得注意的是n<m 不必考虑n==m的情况 (m是盒子个数, n是每次选取的盒子个数, 不要弄反了!) 这题一看就是同余方程 每次选取n个盒子放球 也就是说每次都增加n个球 最后m个盒子中球的个数相等, 也就是最终状态球的总数为m的倍数 于是 很容易能得到同余方程:sum+x*n=y*m   (sum为出示状态共有sum个球) 其中x为 需要选x次盒子放球 y为 最终每个盒子有y个球 接下来只要解同余方程 若无解, 则无论怎样操作都不能达到这个目的 若有解…
题目链接 题意:题中给了图,所以不看字大概也知道  求的是第n个图形的面积. 就是找规律 递推 一类的... 先给结论: 很鬼畜的公式:    $\displaystyle\frac{3\times 17^n+2\times 7^n}{5}$ 递推式是:  $\displaystyle S_n = S_{n-1}\times 17-4\times 7^{n-1}$ 重点在于17和7是怎么来的. 在题图的基础上画些个框框 观察可以发现 图1中的 $1\times 1$的方格变成了图2中$\sqrt…
  Longest Paths  It is a well known fact that some people do not have their social abilities completely enabled. One example is the lack of talent for calculating distances and intervals of time. This causes some people to always choose the longest w…
问题描述(web前端开发附加题1): 编写一个javascript的函数把url解析为与页面的javascript.location对象相似的实体对象,如:url :'http://www.qq.com/index.html?key1=1&key2=2',最后输出的对象是: { protocol: "http", hostname: "www.qq.com", pathname: "index.html", query: "ke…
本文出自:http://blog.csdn.net/svitter 过桥问题解释:一条船能够坐两个人,可是有非常多人要过河,所以送过一个人去,还有一个人还要回来接.使全部人过河之后时间最短,怎样求? 此问题曾作为阿里巴巴题目 初看此题想的太过简单,直接让跑的最快的送过去,自己再跑回来就可以.事实上不然. 函数g(a,b)表示过河,b(a)表示回来.假设过河时间分别为1,2,5,10 那么两种过河方案: 1.初想方案: g(1,2)=2 g (1, 10) = 10 g (1, 5 ) =  5…
这种小题首先根据 n/1+n/2+n/3+--+n/n=nlogn+欧拉常数r 可以知道 1e12的范围也不会爆longlong,不需要写高精度(到现在都不会写) 再根据数据范围可知O(n)级别的暴力不可过,所以考虑到了sqrt(n)的算法 当i<=sqrt(n)时,最多只有sqrt(n)个不同的数,结果值一定小于sqrt(n); 当sqrt(n)<i时,[n/i]<sqrt(n),故一定有小于sqrt(n)种结果 最后顺序遍历,但统计时遇到下相同n/i值直接累加并跳过 1    2  …
题目是来自HZW的博客(构造题我是各种不会...) Solved 1 / 1 A CodeForces 500A New Year Transportation Solved 1 / 1 B CodeForces 437C The Child and Toy Solved 1 / 2 C CodeForces 510C Fox And Names Solved 1 / 3 D CodeForces 475B Strongly Connected City Solved 1 / 2 E CodeF…
A POJ 1018 Communication System B POJ 1050 To the Max C POJ 1083 Moving Tables D POJ 1125 Stockbroker Grapevine E POJ 1143 Number Game F POJ 1157 LITTLE SHOP OF FLOWERS G POJ 1163 The Triangle H POJ 1178 Camelot I POJ 1179 Polygon J POJ 1189 钉子和小球 K…
https://www.xoj.red/contests/show/1231 下面会写一些题目的解析什么的,当然不会粘贴题目只是简单提一下 (部分题目简单的题目就不概括了) 其实难度应该前面比较低. 问题A: 3894: Out of Sorts 本题求出冒泡排序需要几趟. 考虑一次冒泡排序的交换,减小对应1个位子上的1个逆序对. 但是对于每一个位子所需要减小的逆序对数量是不一样的. 对于每一趟,消去每一个位子上1个逆序对所以趟数就是每个位子上的数产生逆序对数的最大值. 最后的+1指的是即使上一…