0前言 感谢yxy童鞋的dp及暴力做法! 1 算法标签 优先队列.dp动态规划+滚动数组优化 2 题目难度 提高/提高+ CF rating:2300 3 题面 「POJ 3666」Making the Grade 路面修整 4 分析题面 4.1 简要描述 给出数列 \(A\), 求非严格单调不上升或单调不下降, 且\(S=\sum^N_{i=1}|A_i-B_i|\) 最小的序列\(B\),输出\(S\) 4.2 模型转换 输入\(N\), 然后输入\(N\)个数,求最小的改动这些数使之成非严…
「ARC 139F」Many Xor Optimization Problems 对于一个长为 \(n\) 的序列 \(a\),我们记 \(f(a)\) 表示从 \(a\) 中选取若干数,可以得到的最大异或值. 现在给定 \(n,m\),你需要对于所有长为 \(n\),且 \(0\le a_i<2^m\) 的序列,计算 \(f(a)\) 的和. \(1\le n,m\le 250000\). PS:本题解的做法可以做到 \(n=10^9,m=10^7\). Solution 考虑给定序列 \(a…
Tag 堆,贪心,链表 Solution 把连续的符号相同的数缩成一个数,去掉两端的非正数,得到一个正负交替的序列,把该序列中所有数的绝对值扔进堆中,用所有正数的和减去一个最小值,这个最小值的求法与「CTSC 2007 数据备份」相同. Code #include <cstdio> #include <queue> const int N = 100005, inf = 0x3f3f3f3f; struct Node { int x, y; bool operator < (…
BUPT 2017 Summer Training (for 16) #3G 题意 摆好的多米诺牌中有n个关键牌,两个关键牌之间有边代表它们之间有一排多米诺牌.从1号关键牌开始推倒,问最后倒下的牌在哪里,以及时刻. 题解 注意最后倒下的可能不是关键牌,而是关键牌之间的牌. dfs找出每个关键牌最早到达的时间,也就是它们倒下的时刻.然后再对每条边,计算边上最后倒下的牌的时间. 其实就是跑一遍最短路. 代码 #include <cstdio> #include <cstring> #i…
BUPT 2017 summer training (16) #2C 题意 n个卡片可以支撑住的长度是1/2+1/3+1/4+..+1/(n+1)个卡片长度.现在给出需要达到总长度,求最小的n. 题解 模拟加起来,直到长度不小于给定的总长度. 我也写了个java代码^_^ 代码 import java.util.*; import java.io.*; public class Main{ public static void main(String []args){ Scanner cin =…
BUPT 2017 summer training (16) #2 A 题意 有一个玩具盒,被n个隔板分开成左到u右n+1个区域,然后给每个玩具的坐标,求每个区域有几个玩具. 题解 依次用叉积判断玩具在每个隔板左边还是右边. 知识 设\(\vec a=(x_1,y_1),\vec b=(x_2,y_2)\). 点乘:内积(数量积),\(\vec{a}\cdot\vec{b}=|a||b|cos\theta=x_1\cdot x_2+y_1\cdot y_2\) 叉乘:外积(向量积),\(|\ve…
题目链接 戳这 题目大意 \(N(2 <= N <= 8,000)\)头奶牛有\(1..N\)范围内的独特品牌.对于每头排队的牛,知道排在那头牛之前的并比那头牛的品牌小的奶牛数目.根据这些数据,输出的确切排序. 题解 令输入数组为b[i]; 可以发现最后一个奶牛可以确定为b[n]+1,由最后一个又可以推出倒数第二个,由此递推就好了,每次的答案就是序列中的第b[i]+1小的数,询问完后就将这个数从序列中删除. 至于怎么选那个数,就看你用什么数据结构维护了,我用的平衡树. code #includ…
更好的阅读体验 Portal Portal1: POJ Portal2: Luogu Description One cow from each of N farms \((1 \le N \le 1000)\) conveniently numbered \(1 \cdots N\) is going to attend the big cow party to be held at farm #X \((1 \le X \le N)\). A total of \(M (1 \le M \l…
比赛链接 洛谷:禁止含有侮辱性质的比赛 . ??? 反正我觉得,gyx挺危险的 不说废话. 首先,比赛经验,前几个小时不打,跟着刷榜. 一看 T1. 发现是道水题,直接切掉了. 然后看到了 T2. 感觉没什么性质,一开始直接写了爆搜.结果爆搜去世了,所以就发现了求和的性质. 然后,乱写个矩阵,由于数据问题只得了 \(80pts\). 当时以为是自己问题 gyx有毒 ,结果矩阵改成递推,后来怎么写都是 \(80pts\). 反映锅之后就 \(A\) 了. T3,一来,先打个暴力. 但是总觉得暴力拿…
\(\mathcal{Decription}\)   Link.   定义一棵圣诞树: 是仙人掌. 不存在两个同一环上的点,度数均 \(\ge 3\).   给出 \(n\) 棵互不相关的圣诞树,双人博弈,每轮切断一棵圣诞树的一条边,并且与该树根不向连的部分全部消失,不能操作者负.求先手是否有必胜策略.   多测,\(T,n\le 100\),\(m\le 500\). \(\mathcal{Solution}\)   没有什么不说人话的定理和结论,这里只应用 SG 函数和 Nim 游戏的基础知…