关于这道题,乍一看很像查分约束,但是实际上这道题是可以用数学方法直接解决的. 这道题在蓝书上有原题,可以看到题解,在此再赘述一遍 首先,最终每个小朋友的糖果数量可以计算出来,等于糖果总数除以n,用ave表示. 假设标号为i的小朋友开始有Ai颗糖果,Xi表示第i个小朋友给了第i-1个小朋友Xi颗糖果,如果Xi<0,说明第i-1个小朋友给了第i个小朋友Xi颗糖果,X1表示第一个小朋友给第n个小朋友的糖果数量. 所以最后的答案就是ans=|X1| + |X2| + |X3| + ……+ |Xn|. 对…
这道题其实并不难,主要原因是数据范围很小,当然数据如果大来也可以优化,但重点是在做的时候用的思路很通用, 所以本题是一道思想题(当然思想也不难) 标题里的“+”体现在一些边界处理中. 直接甩题目 Description 给出圆周上的若干个点,已知点与点之间的弧长,其值均为正整数,并依圆周顺序排列. 请找出这些点中有没有可以围成矩形的,并希望在最短时间内找出所有不重复矩形. Input 第一行为正整数N,表示点的个数,接下来N行分别为这N个点所分割的各个圆弧长度 Output 所构成不重复矩形的个…
这道题对于一类题都有一个通用思路:反向递减序列即为正向字典序. 对于逆向思维的题还要多做才能培养这种对于逆向思维的感觉. 想到这种方法之后,就很简单了. 因为n×m不会炸,所以反向LIS叠一个贪心就能过了. 直接甩题目&代码 Description 对于一个给定的S={a1,a2,a3,…,an},若有P={ax1,ax2,ax3,…,axm},满足(x1 < x2 < … < xm)且( ax1 < ax 2 < … < axm).那么就称P为S的一个上升序列…
个人觉得这道题对于位运算的加深理解很有意义 根据题目所说,我们要求出一个在给定范围里的自变量,使得最终结果最大. 那么因为这道题是针对于位运算的,所以可以想到用对于位运算取极限情况,即对于“0”和“(2^bit)-1”这两种情况判断,然后即可以得到每一位在这几种操作之后的所有情况,然后根据合适的情况反推得到满足条件的最优解,然后就能A啦 直接甩题目&代码 Description 21 世纪,许多人得了一种奇怪的病:起床困难综合症,其临床表现为:起床难,起床后精神不佳.作为一名青春阳光好少年,at…
题解: 题目背景 151006 T1 题目描述 Picks 喜欢电路.这天他在研究元电路的时候,需要一个阻值为 (p/q)Ω 的电阻,然而他家中只有一大堆电阻为 1Ω 电阻.由于技术问题,Picks 每次只能把一个电阻串联或并联进整个电路.而 Picks 拿着这么大一堆电阻觉得很浪费,于是他找到你,希望你能告诉他最少用多少个电阻才能拼出他所需要的电阻. 输入格式 输入一行,为两个正整数 P 和 Q . 输出格式 输出一行一个整数,即最少要用的电阻个数. 样例数据 1 输入 [复制] 3 2 输出…
poj3159 Candies 这题实质为裸的差分约束. 先看最短路模型:若d[v] >= d[u] + w, 则连边u->v,之后就变成了d[v] <= d[u] + w , 即d[v] – d[u] <= w. 再看题目给出的关系:b比a多的糖果数目不超过c个,即d[b] – d[a] <= c ,正好与上面模型一样, 所以连边a->b,最后用dij+heap求最短路就行啦. ps:我用vector一直TLE,后来改用链式前向星才过了orz... #include&…
/* s[]表示最优方案的序列中的前缀和,那么s[23]就是最优方案 由题意我们可以列出这样一些式子: s[i]+s[23]-s[16+i]>=a[i] (i-8<0) s[i]-s[i-8]>=a[i] (i-8>0)//这两个柿子选一个 b[i]>=s[i]-s[i-1]>=0 然后可以化简为: s[i]-s[16+i]>=a[i]-s[23] s[i]-s[i-8]>=a[i] s[i]-s[i-1]>=0 s[i-1]-s[i]>=-b[…
转自:http://blog.csdn.net/shahdza/article/details/7779273 最短路 [HDU] 1548 A strange lift基础最短路(或bfs)★2544 最短路 基础最短路★3790 最短路径问题基础最短路★2066 一个人的旅行基础最短路(多源多汇,可以建立超级源点和终点)★2112 HDU Today基础最短路★1874 畅通工程续基础最短路★1217 Arbitrage 货币交换 Floyd (或者 Bellman-Ford 判环)★124…
出处:http://blog.csdn.net/shahdza/article/details/7779273 最短路 [HDU] 1548    A strange lift基础最短路(或bfs)★ 2544    最短路  基础最短路★ 3790    最短路径问题基础最短路★ 2066    一个人的旅行基础最短路(多源多汇,可以建立超级源点和终点)★ 2112    HDU Today基础最短路★ 1874    畅通工程续基础最短路★ 1217    Arbitrage   货币交换…
题意:求给定的一组不等式是否有解,不等式要么是:SUM(Xi) (a<=i<=b) > k (1) 要么是 SUM(Xi) (a<=i<=b) < k (2) 分析:典型差分约束题,变换,令Ti = SUM(Xj) (0<=j<=i).  则表达式(1)可以看做T(a+b)-T(a-1) > k,也就是T(a-1)-T(a+b) < -k,又因为全是整数,所以T(a-1)-T(a+b) <= -k-1.  同理,(2)看做T(a+b)-T(…
题目链接:http://poj.org/problem?id=3159思路:题目意思很简单,都与给定的条件dist[b]-dist[a]<=c,求dist[n]-dist[1]的最大值,显然这是差分约束的经典题,条件可以转化为dist[b]<=dist[a]+c,于是a->b直接连边,边权值为c,从而题目转化为图上求1->n的最短路,看了一下数据,30000个点,150000条边,果断用Dijkstra+priority_queue,1300MS+险过,orz. #include&…
题目:http://poj.org/problem?id=1201 差分约束裸套路:前缀和 本题可以不把源点向每个点连一条0的边,可以直接把0点作为源点.这样会快许多! 可能是因为 i-1 向 i 都连着一条0的边. 别忘了约束条件不仅有s[ i ] - s[ i-1 ] >= 0,还有s[ i ] - s[ i - 1] <= 1! 别忘了s的范围不是n而是mx! #include<iostream> #include<cstdio> #include<cstr…
http://poj.org/problem?id=1275 题目大意: 一商店二十四小时营业,但每个时间段需求的雇员数不同(已知,设为R[i]),现有n个人申请这份工作,其可以从固定时间t连续工作八个小时,问在满足需求的情况下最小需要多少个雇员. 思路: 挺难的..看了别人的思路搞半天.. 设num[ i ]为i时刻能够开始工作的人数,x[ i ]为实际雇佣的人数,那么x[ I ]<=num[ I ]. 设r[ i ]为i时刻至少需要工作的人数,于是有如下关系: x[ I-7 ]+x[ I-6…
题意:       超市在每个时间都有需要的人数(24小时)比如 1 0 0 0 0 ....也就是说在第0个小时的时候要用一个人,其他的时间都不用人,在给你一些人工作的起始时间,如果雇佣了这个人,那么这个人就会从自己的其实时间工作8个小时后离开,给你需求和可雇佣的员工,问你满足需求超时最少雇佣多少人. 思路:       经典的差分约束,之前尝试过很多次都没AC,今天终于AC了,现在我们就来找各种隐含条件. 设: num[i] 表示第i个小时开始的有多少个人. r[i] 表示第i个小时最少雇佣…
bzoj 1606: [Usaco2008 Dec]Hay For Sale 购买干草——背包 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int read(){ ,f=,c=getchar(); ; c=getchar();} +(c-'); c=getchar();} return ans*f; } ],k; int main() { h=read(); n=…
据说差分约束有很多种,但是我学过的只有SPFA求差分: 我们知道,例如 A-B<=C,那么这就是一个差分约束. 比如说,著名的三角形差分约束,这个大家都是知道的,什么两边之差小于第三边啦,等等等等. 所以说,我们学他干嘛(我们得出结论:学他没用,谢谢大家观看) 咳咳——说正事,我们来看一道例题:[luoguP1993]小K的农场: 题目描述 小K在MC里面建立很多很多的农场,总共n个,以至于他自己都忘记了每个农场中种植作物的具体数量了,他只记得一些含糊的信息(共m个),以下列三种形式描述: 农场…
接下来要滚去bzoj刷usaco的题目辣=v=在博客记录一下刷题情况,以及存一存代码咯.加油! 1.[bzoj1597][Usaco2008 Mar]土地购买 #include<cstdio> #include<algorithm> #include<cstring> using namespace std; ; int n,cnt,q[N]; long long x[N],y[N],f[N]; struct node{long long x,y;}a[N]; bool…
Preface 老叶说了高中停课但是初中不停的消息后我就为争取民主献出一份力量 其实就是和老师申请了下让我们HW的三个人听课结果真停了 那么还是珍惜这次机会好好提升下自己吧不然就\(AFO\)了 List Luogu P4198 楼房重建 把高度化为斜率,然后就是个动态最长上升子序列的问题了,线段树上二分即可解决,而且可以做到\(O(n\log n)\) NOIP模拟赛10.24 实力翻车,T1主席树裸题切了,T2想了贪心+前缀和+二分正解,最后1min写完发现忘记判边界了炸到60,T3以为很难…
https://www.cnblogs.com/31415926535x/p/10463112.html 很早之前学最短路的时候就看了一眼差分约束,,当时以为这种问题不怎么会出现,,而且当时为了只为了学最短路,,所以就没有怎么做题,,知道是什么,但是不会建图使用,, 然后上一次做cf就碰到了,,虽然那道题不只是差分约束能解决还卡时间,,但是万一以后还出现这种题,,只是知道是这个类型的题却不知道如何下手也相当于是不会啊,,所以抽时间重新看了看这块的内容,,做几道题,,顺便背一背最短路的板子,,好久…
因为本蒻实在太蒻了...对于即将到来的NOIP2018ssfd,所以下决心要把自己近期做过的题目(衡量标准为洛谷蓝题难度或以上)整理一下,归归类,简单地写一下思路,就当作自己复习了吧qwq 本随笔持续更新,自2018.9.19开始,计划更新到2018NOIP截止 (但是因为最近写的比赛题比较多..但是没有办法把这些题放上来..所以只能放上主流OJ上面有的题) 如果本蒻今年有幸没有AFO掉,flag先里在这里--之后学省选知识点的时候会重开一贴更新的,到时候希望是更有难度的题目吧. 搜索 [NOI…
Intervals Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 4181    Accepted Submission(s): 1577 Problem Description You are given n closed, integer intervals [ai, bi] and n integers c1, ..., cn.…
差分约束,主要用来解决数学中的线性规划问题,通过差值与两个未知数可以转化为单源最长路问题(或负值最短路). 当有一个式子为x1-x2>=a时,我们可以建边,这条边设定为x1比x2大等a(或x2比x1小等a),并且全图统一为大等或统一为小等,因为条件相同可以进行条件传递,可以考虑用单源最短解决,然后可以直接用spfa解决就好辣.(事实上这就是一种思想,甚至可以用向量来考虑,重点是条件的传递性). 下面给一道裸题 Description 幼儿园里有N个小朋友,lxhgww老师现在想要给这些小朋友们分…
POJ推荐50题 著名的北邮acm训练队推荐50题 https://blog.csdn.net/bat67/article/details/71735012 都是poj上的题 1000:会教会你如何使用一个在线的ONLINE JUDGE. 1001:这道题教会你如何使用高精度运算,并需要你考虑高位的实数,所以要记录一下小数点的位置. 1002:简单题,初步了解ACM中的模拟题.模拟题就是不需要什么算法的题目,只需要按照题目要求一步一步做. 1003——1008:简单题,练习在线做题环境. 101…
丽娃河的狼人传说 Time limit per test: 1.0 seconds Memory limit: 256 megabytes 丽娃河是华师大著名的风景线.但由于学校财政紧缺,丽娃河边的路灯年久失修,一到晚上就会出现走在河边要打着手电的情况,不仅非常不方便,而且影响安全:已经发生了大大小小的事故多起. 方便起见,丽娃河可以看成是从 1 到 n 的一条数轴.为了美观,路灯只能安装在整数点上,每个整数点只能安装一盏路灯.经专业勘测,有 m 个区间特别容易发生事故,所以至少要安装一定数量的…
Candies Time Limit: 1500MS   Memory Limit: 131072K Total Submissions: 28071   Accepted: 7751 Description During the kindergarten days, flymouse was the monitor of his class. Occasionally the head-teacher brought the kids of flymouse’s class a large b…
搜索 [NOIP2013]华容道 最短路+带剪枝的搜索,是一个思维难度比较大的题目. CF1064D Labyrinth 考虑贪心,用双向队列bfs [NOIP2017]宝藏 剪枝搜索出奇迹 题解:https://www.cnblogs.com/fengxunling/p/9777606.html luogu 有趣的数 [ZJOI2007] 时态同步 [NOIP2002] 矩形覆盖 这题数据太水... 题解:https://www.cnblogs.com/fengxunling/p/984161…
这题是一个类似于区间选点,但是有一些不等式有三个未知量参与的情况. 依题意,套路性的,将小时数向右平移1个单位后,设$f_i$为前$i$小时工作的人数最少是多少,$f_{24}$即为所求.设$c_i$为第$i$小时可选人数,$lim_i$为要求人数下限. $0\le f_i-f_{i-1}\le c_i$,保证合法 $i\ge 8$时,$f_i-f_{i-8}\ge lim_i$ $i<8$时,由于环形,$f_i+(f_{24}-f_{i+16})\ge lim_i$,但这个不好处理,因为这不是…
偶尔做了一下差分约束. 题目大意:给出n个军营,每个军营最多有ci个士兵,且[ai,bi]之间至少有ki个士兵,问最少有多少士兵. --------------------------------------------------- 差分约束:就是利用多个不等式来推导另一个不等式. 由于不等式a-b<=c和求最短路径时的三角形不等式相同,就变成了求最短路. 所有不等式化为a-b<=c的形式,则建造b到a的边,权为c. 求a到b的最短距离,则转化为b-a<=c,距离的值为c. 该题中:…
原题:ZOJ 3668 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3668 典型差分约束题. 将sum[0] ~ sum[n] 作为节点,A<=sum[R]-sum[L-1]<=B可以分别建边: x(L-1)-->xR  w = B xR --> x(L-1)  w = -A 注意还有 -10000<=sum[i]-sum[i-1]<=10000 (for i in (2,n)),所以相邻点…
            布局 题目大意:有N头牛,编号1-N,按编号排成一排准备吃东西,有些牛的关系比较好,所以希望他们不超过一定的距离,也有一些牛的关系很不好,所以希望彼此之间要满足某个关系,牛可以挤在同一个位置上,现在给出N个牛的信息,问你能否实现一种排列方案,使得d[1]到d[N]最大?如果不存在输出-1,无限大输出-2 这一题看上去挺难的,但是如果你知道差分约束原理,这一题似乎还是挺简单的. 差分约束的原理是:存在任意线性方程,满足d[A]+c>=d[B],就可以表示为图的最短路形式,方…