洛谷
sjzezwzy
这个作者很懒,什么都没留下…
展开
-
CF549G Happy Line题解
题目大意给定一个长为 n 的序列 ai,你可以执行任意次操作,每次操作可以交换 两个相邻位置 (i, i + 1) 上的数,且交换后位置上的数变为 (ai+1 + 1, ai − 1),问是否能通过任意次操作使得 ai 不降,若有解则给出 最终的 ai分析这道题用数学公式来证明贪心,设原位置(x,y)现在位置为(u,v)且u#include<bits/stdc++.h>...原创 2018-07-17 11:15:02 · 308 阅读 · 0 评论 -
[HAOI2008]圆上的整点题解
题目链接分析根据圆的对称性,我们只用考虑四分之一圆即可,设点a(x,y)在圆上,则x*x+y*y=r*r,y*y=(r+x)*(r-x),这样以后进行枚举即可 时间:100ms。 上代码#include<bits/stdc++.h>#define LL long longusing namespace std;LL r,ans;LL gcd(LL a,LL ...原创 2018-08-02 10:14:26 · 394 阅读 · 0 评论 -
1045: [HAOI2008] 糖果传递题解
题目链接分析这真的是省选题??? 我们可先计算出每人最后所得糖果,然后计算前缀和,选择中位数,,每个数的前缀和减去中位数,这样就可以使代价最小,感觉水的一批。 时间:2600ms。 上代码#include<bits/stdc++.h>#define ll long longusing namespace std;ll n,al[1000010],sum[10...原创 2018-08-02 10:22:15 · 184 阅读 · 0 评论 -
[HAOI2008]木棍分割题解
题目链接分析第一问是最简单的二分答案,就不说了。第二问则要用到dp中的隔板法,对于本题就是找到一个节点i能到达的最左端lef[i](连续子段和<=第一问中的答案),f[i][j]代表前i个数分成j块的方案数,则f[i][j]=Σ f[k][j-1] (k>=lef[i]&&k<i) ,而因为空间问题,是不可以开1000x50000数组的,所以一个数组f记录当前j...原创 2018-08-02 10:30:39 · 211 阅读 · 0 评论 -
[HAOI2008]硬币购物题解
题目链接分析一道容斥好题,如果用多重背包,估计会t死的,我们可先做完全背包,求出方案数,再用总方案数减去不可用的方案数(比如说对于每个硬币i,硬币数超过c[i]的),这时你会发现可以用容斥做,手动容斥即可,时间:3500ms。 上代码#include<bits/stdc++.h>#define ll long longusing namespace std;ll...原创 2018-08-02 10:37:58 · 204 阅读 · 0 评论 -
[HAOI2007]反素数ant题解
题目链接分析感觉这道题就是一道披着数论外衣的搜索 我们可以推出三个性质 1.最大反素数即为范围内因数最多的最小的那一个 2.最多有10个素因子,且素因子的幂不超过31 3.必定是最小的几个素因子相乘,且指数非严格递减 2可根据数据范围推出,最小的10个素数相乘大于2^31,所以可知。对于3,我们可根据唯一分解定理分析得出。这样搜索即可 时间:0ms。 上代码#incl...原创 2018-08-02 10:50:50 · 272 阅读 · 0 评论 -
[HAOI2015]树上操作题解
题目有一棵点数为 N 的树,以点 1 为根,且树点有边权。然后有 M 个操作,分为三种: 操作 1 :把某个节点 x 的点权增加 a 。 操作 2 :把某个节点 x 为根的子树中所有点的点权都增加 a 。 操作 3 :询问某个节点 x 到根的路径中所有点的点权和。 输入输出格式 输入格式: 第一行包含两个整数 N, M 。表示点数和操作数。接下来一行 N 个整数,表示树中节点的初始...原创 2018-09-08 16:33:59 · 410 阅读 · 0 评论 -
[NOI2011]道路修建题解
题目在 W 星球上有 n 个国家。为了各自国家的经济发展,他们决定在各个国家 之间建设双向道路使得国家之间连通。但是每个国家的国王都很吝啬,他们只愿 意修建恰好 n – 1 条双向道路。 每条道路的修建都要付出一定的费用,这个费用等于道路长度乘以道路两端 的国家个数之差的绝对值。例如,在下图中,虚线所示道路两端分别有 2 个、4 个国家,如果该道路长度为 1,则费用为 1×|2 – 4|=2。...原创 2018-09-08 16:41:04 · 493 阅读 · 0 评论 -
[ZJOI2007]时态同步题解
题目小Q在电子工艺实习课上学习焊接电路板。一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字1,2,3…1,2,3…1,2,3…进行标号。电路板的各个节点由若干不相交的导线相连接,且对于电路板的任何两个节点,都存在且仅存在一条通路(通路指连接两个元件的导线序列)。在电路板上存在一个特殊的元件称为“激发器”。当激发器工作后,产生一个激励电流,通过导线传向每一个它所连接的节点。而中间节点...原创 2018-09-08 16:53:02 · 241 阅读 · 0 评论 -
[ZJOI2008]泡泡堂BNB题解
题目链接分析对于这道题,我已开始考虑的思路类似于田忌赛马,但还有种情况,就是己方最劣由于对方最劣,所以,我们可将思路改变一下: 1.己方最优优于对方最优 2.己方最劣优于对方最劣 3.己方最劣与对方最优考虑(当炮灰) 这样就可以进行对比了,这样可求出最优情况,跑两遍,第一次求出己方最优,第二次求出对方最优,总得分减去对方最优就是己方最劣。 时间:350ms。 上代码#inc...原创 2018-08-02 10:03:27 · 214 阅读 · 0 评论 -
1015: [JSOI2008]星球大战starwar题解
题目分析这道题正着考虑显然很难,所以我们要逆向考虑,我们可从最后状态出发,将摧毁改成修建,这样直接并查集就可以解决了,时间:2000ms。 上代码#include<bits/stdc++.h>using namespace std;int fa[400010],a[400010],vis[400010],sum=0,n,m,K;vector<int>...原创 2018-08-02 09:53:56 · 353 阅读 · 0 评论 -
UVA11728 Alternate Task 题解
题目大意给定n,求因子合为n的最大整数。(n≤1000),若没有输出-1.分析一道简单题,,通过题可知此数≤1000,可预处理,1000以内的数据,在询问时O(n)查询即可。 时间:0ms。 上代码#include<bits/stdc++.h>using namespace std;int al[1010],n,tot=0;void PRE(){ ...原创 2018-07-22 09:12:34 · 166 阅读 · 0 评论 -
乘法逆元总结
部分内容参考李煜东《算法竞赛进阶指南》。定义:若已知a,b,若a*c%b=1,则称c是a关于b的逆元。应用范围:有理数取余,中国剩余定理,解同余方程等。求法:1.硬算 通过枚举来寻找逆元神一般的做法,一般没什么人用。 具体代码int py(int a,int b){ int c=1; while(1){ if(...原创 2018-07-11 21:41:43 · 212 阅读 · 0 评论 -
中国剩余定理
什么是中国剩余定理中国剩余定理是中国古代求解一次同余式组的方法。是数论中一个重要定理。又称孙子定理。一元线性同余方程组问题最早可见于中国南北朝时期(公元5世纪)的数学著作《孙子算经》卷下第二十六题,叫做“物不知数”问题,原文如下: 有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?即,一个整数除以三余二,除以五余三,除以七余二,求这个整数。《孙子算经》中首次提到了同余方程组问...原创 2018-07-11 22:37:07 · 830 阅读 · 0 评论 -
二进制与bitset
一.基础位运算(以代码中的符号为准)运算符与(&)(and):1&1=1 0&1=0 1&0=0 0&0=0 或(|)(or):1|1=1 0|1=1 1|0=1 0|0=0 异或(^)(xor):1^1=0 0^1=1 1^0=1 0^0=0 非(!)(not): !1=0 !0=1逻辑移位...原创 2018-07-17 22:41:11 · 228 阅读 · 0 评论 -
luogu1287 盒子与球
题目描述现有r个互不相同的盒子和n个互不相同的球,要将这n个球放入r个盒子中,且不允许有空盒子。问有多少种方法?分析这是一道第二类string数的题,可套用公式直接解出答案,下面来说一下公式是什么。 设f[i,j]表示第i个球已放入j个盒子的方案数。对于第i+1个球,我们有两种方法,第一种是新开一个盒子,方案数为f[i,j-1],第二种是放入里面已经有球的盒子,方案数为j*f[i...原创 2018-07-18 15:05:01 · 718 阅读 · 0 评论 -
[Ahoi2009]Seq 维护序列seq
Description老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成。 有长为N的数列,不妨设为a1,a2,…,aN 。有如下三种操作形式: (1)把数列中的一段数全部乘一个值; (2)把数列中的一段数全部加一个值; (3)询问数列中的一段数的和,由于答案可能很大,你只需输出这个数模P的值。 Input 第一行两个整数N和P(1≤P≤1000000000)。第二行含有N个非负...原创 2018-07-24 21:04:07 · 152 阅读 · 0 评论 -
[Noi1999]钉子和小球
Description Input 第1行为整数n(2<=n<=50)和m(0<=m<=n)。以下n行依次为木板上从上至下n行钉子的信息,每行中‘*’表示钉子还在,‘.’表示钉子被拔去,注意在这n行中空格符可能出现在任何位置。 Output 仅一行,是一个既约分数(0写成0/1),为小球落在编号为m的格子中的概pm。既约分数的定义:A/B是既约分数,当且仅当A、...原创 2018-07-24 21:13:16 · 361 阅读 · 0 评论 -
luogu 3403跳楼机
题目描述Srwudi的家是一幢h层的摩天大楼。由于前来学习的蒟蒻越来越多,srwudi改造了一个跳楼机,使得访客可以更方便的上楼。经过改造,srwudi的跳楼机可以采用以下四种方式移动: 向上移动x层; 向上移动y层; 向上移动z层; 回到第一层。 一个月黑风高的大中午,DJL来到了srwudi的家,现在他在srwudi家的第一层,碰巧跳楼机也在第一层...原创 2018-07-06 22:15:54 · 360 阅读 · 0 评论 -
[HNOI2010]弹飞绵羊
题目描述某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初始弹力系数ki,当绵羊达到第i个装置时,它会往后弹ki步,达到第i+ki个装置,若不存在第i+ki个装置,则绵羊被弹飞。绵羊想知道当它从第i个装置起步时,被弹几次后会被弹飞。为了使得游戏更有趣,Lostmo...原创 2018-07-15 16:51:35 · 153 阅读 · 0 评论 -
[HNOI2003]激光炸弹题解
题目 输入输出格式 输入格式: 输入文件的第一行为正整数nnn和正整数RRR,接下来的nnn行每行有3个正整数,分别表示 xixix_i,yiyiy_i ,viviv_i 。 输出格式: 输出文件仅有一个正整数,表示一颗炸弹最多能炸掉地图上总价值为多少的目标(结果不会超过32767)。 输入输出样例 输入样例#1: 2 1 0 0 1 1 1 1 输出样例#1: 1...原创 2018-09-08 17:00:24 · 376 阅读 · 0 评论 -
[USACO06NOV]玉米田Corn Fields题解
题目农场主John新买了一块长方形的新牧场,这块牧场被划分成M行NM行NM行N列(1≤M≤12;1≤N≤121≤M≤12;1≤N≤121 ≤ M ≤ 12; 1 ≤ N ≤ 12),每一格都是一块正方形的土地。John打算在牧场上的某几格里种上美味的草,供他的奶牛们享用。遗憾的是,有些土地相当贫瘠,不能用来种草。并且,奶牛们喜欢独占一块草地的感觉,于是John不会选择两块相邻的土地,也就是说,...原创 2018-09-08 17:04:25 · 249 阅读 · 0 评论 -
[HNOI2003]操作系统题解
题目描述写一个程序来模拟操作系统的进程调度。假设该系统只有一个CPU,每一个进程的到达时间,执行时间和运行优先级都是已知的。其中运行优先级用自然数表示,数字越大,则优先级越高。如果一个进程到达的时候CPU是空闲的,则它会一直占用CPU直到该进程结束。除非在这个过程中,有一个比它优先级高的进程要运行。在这种情况下,这个新的(优先级更高的)进程会占用CPU,而老的只有等待。如果一个进程到达时,CP...原创 2018-09-06 17:17:51 · 460 阅读 · 0 评论 -
[ZJOI2009]函数题解
题目描述有n 个连续函数fi (x),其中1 ≤ i ≤ n。对于任何两个函数fi (x) 和fj (x),(i != j),恰好存在一个x 使得fi (x) = fj (x),并且存在无穷多的x 使得fi (x) < fj (x)。对于任何i; j; k,满足1 ≤ i < j < k ≤ n,则不存在x 使得fi (x) = fj (x) = fk (x)。 如上左...原创 2018-09-14 07:40:39 · 273 阅读 · 0 评论 -
[SHOI2002]百事世界杯之旅题解
题目题目描述 “……在2002年6月之前购买的百事任何饮料的瓶盖上都会有一个百事球星的名字。只要凑齐所有百事球星的名字,就可参加百事世界杯之旅的抽奖活动,获得球星背包,随声听,更克赴日韩观看世界杯。还不赶快行动!”你关上电视,心想:假设有n个不同的球星名字,每个名字出现的概率相同,平均需要买几瓶饮料才能凑齐所有的名字呢? 输入输出格式 输入格式: 整数n(2≤n≤33),表示不同球星名...原创 2018-09-14 07:44:56 · 255 阅读 · 0 评论 -
[SCOI2007]排列题解
题目给一个数字串s和正整数d, 统计s有多少种不同的排列能被d整除(可以有前导0)。例如123434有90种排列能,被2整除,其中末位为2的有30种,末位为4的有60种。 输入输出格式 输入格式: 输入第一行是一个整数T,表示测试数据的个数,以下每行一组s和d,中间用空格隔开。s保证只包含数字0, 1, 2, 3, 4, 5, 6, 7, 8, 9. 输出格式: 每个数据仅一行,表示...原创 2018-09-14 07:48:26 · 287 阅读 · 0 评论 -
[AHOI2005]洗牌 题解
题目为了表彰小联为Samuel星球的探险所做出的贡献,小联被邀请参加Samuel星球近距离载人探险活动。由于Samuel星球相当遥远,科学家们要在飞船中度过相当长的一段时间,小联提议用扑克牌打发长途旅行中的无聊时间。玩了几局之后,大家觉得单纯玩扑克牌对于像他们这样的高智商人才来说太简单了。有人提出了扑克牌的一种新的玩法。对于扑克牌的一次洗牌是这样定义的,将一叠N(N为偶数)张扑克牌平均分成上下...原创 2018-09-14 07:57:10 · 368 阅读 · 0 评论 -
[HAOI2012]容易题 题解
题目描述为了使得大家高兴,小Q特意出个自认为的简单题(easy)来满足大家,这道简单题是描述如下:有一个数列A已知对于所有的A[i]都是1~n的自然数,并且知道对于一些A[i]不能取哪些值,我们定义一个数列的积为该数列所有元素的乘积,要求你求出所有可能的数列的积的和 mod 1000000007的值,是不是很简单呢? 输入输出格式 输入格式: 第一行三个整数n,m,k分别表示数列元素的取...原创 2018-09-14 08:05:50 · 214 阅读 · 0 评论 -
[SHOI2008]小约翰的游戏 题解
题目小约翰经常和他的哥哥玩一个非常有趣的游戏:桌子上有n堆石子,小约翰和他的哥哥轮流取石子,每个人取的时候,可以随意选择一堆石子,在这堆石子中取走任意多的石子,但不能一粒石子也不取,我们规定取到最后一粒石子的人算输。 小约翰相当固执,他坚持认为先取的人有很大的优势,所以他总是先取石子,而他的哥哥就聪明多了,他从来没有在游戏中犯过错误。小约翰一怒之前请你来做他的参谋。自然,你应该先写一个程序,预...原创 2018-09-14 08:18:40 · 273 阅读 · 0 评论 -
[JLOI2011]不重复数字题解
题目给出N个数,要求把其中重复的去掉,只保留第一次出现的数。例如,给出的数为1 2 18 3 3 19 2 3 6 5 4,其中2和3有重复,去除后的结果为1 2 18 3 19 6 5 4。 输入输出格式 输入格式: 输入第一行为正整数T,表示有T组数据。接下来每组数据包括两行,第一行为正整数N,表示有N个数。第二行为要去重的N个正整数。 输出格式: 对于每组数据,输出一行,为去重...原创 2018-09-14 08:26:01 · 380 阅读 · 0 评论 -
[JSOI2009]瓶子和燃料 题解
题目描述jyy就一直想着尽快回地球,可惜他飞船的燃料不够了。有一天他又去向火星人要燃料,这次火星人答应了,要jyy用飞船上的瓶子来换。jyy的飞船上共有 N个瓶子(1<=N<=1000) ,经过协商,火星人只要其中的K 个。jyy将 K个瓶子交给火星人之后,火星人用它们装一些燃料给 jyy。所有的瓶子都没有刻度,只在瓶口标注了容量,第i个瓶子的容量为Vi(Vi 为整数,并且满足1&...原创 2018-09-14 08:28:59 · 280 阅读 · 0 评论 -
[HNOI2005]汤姆的游戏题解
题目描述 汤姆是个好动的孩子,今天他突然对圆规和直尺来了兴趣。于是他开始在一张很大很大的白纸上画很多很多的矩形和圆。画着画着,一不小心将他的爆米花弄撒了,于是白纸上就多了好多好多的爆米花。汤姆发现爆米花在白纸上看起来就像一个个点,有些点落在矩形或圆内部,而有些则在外面。于是汤姆开始数每个点在多少个矩形或圆内部。毕竟汤姆还只是个孩子,而且点、矩形和圆又非常多。所以汤姆数了好一会都数不清,于是就向聪...原创 2018-09-14 07:35:54 · 297 阅读 · 0 评论 -
[AHOI2008]紧急集合 / 聚会 题解
题目欢乐岛上有个非常好玩的游戏,叫做“紧急集合”。在岛上分散有N个等待点,有N-1条道路连接着它们,每一条道路都连接某两个等待点,且通过这些道路可以走遍所有的等待点,通过道路从一个点到另一个点要花费一个游戏币。参加游戏的人三人一组,开始的时候,所有人员均任意分散在各个等待点上(每个点同时允许多个人等待),每个人均带有足够多的游戏币(用于支付使用道路的花费)、地图(标明等待点之间道路连接的情况)...原创 2018-09-14 07:32:17 · 477 阅读 · 0 评论 -
【模板】线性基
感觉这玩意和暴力差不多,就是优化优化而已……线性基我们实际在读入时就对其进行处理,我们定义f数组表示第i位是1的数中最先出现的且最高为是i的数字,若是,对f判断,若f[i]是0,则f[i]=n,否则将其^,然后继续找。 上代码,感觉这玩意自己打一遍就会了#include<bits/stdc++.h>#define ll long longusing namespa...原创 2018-09-13 19:31:24 · 166 阅读 · 0 评论 -
[HNOI2005]狡猾的商人题解
题目链接分析一眼望去,感觉是道差分约束的题虽然可用贪心,那么我们来想用差分约束怎么做,我们定义两点锁链为两点实际距离,然后我们跑最长路再判断负环即可。 上代码#pragma GCC optimize(3)#include<bits/stdc++.h>using namespace std;int T,n,m,ver[2000],nxt[2000],hed[200...原创 2018-09-06 17:23:42 · 159 阅读 · 0 评论 -
[HEOI2014]南园满地堆轻絮题解
题目链接分析观察题目,我们发现其实是要我们把所有逆序对都变成非逆序的,那么贪心的来想,就有一个显然的结论:答案就是差距最大的逆序对的一半,这样就做完了 上代码#include <bits/stdc++.h>#define ll long longusing namespace std;ll n,sa,sb,sc,sd,a1,a2,ai,mod,maxn,ans;...原创 2018-09-06 17:29:43 · 190 阅读 · 0 评论 -
[HAOI2014]贴海报题解
题目Bytetown城市要进行市长竞选,所有的选民可以畅所欲言地对竞选市长的候选人发表言论。为了统一管理,城市委员会为选民准备了一个张贴海报的electoral墙。 张贴规则如下: electoral墙是一个长度为N个单位的长方形,每个单位记为一个格子; 所有张贴的海报的高度必须与electoral墙的高度一致的; 每张海报以“A B”表示,即从第A个格子到第B个格子张贴海报; 后贴...原创 2018-09-06 17:38:18 · 808 阅读 · 0 评论 -
联合权值题解
题目无向连通图 GG 有 nnn个点,n−1n−1n-1条边。点从 111 到 nnn 依次编号,编号为 iii 的点的权值为 WiWiW_i ,每条边的长度均为 111。图上两点 (u,v)(u,v)(u,v) 的距离定义为 uu 点到 vv 点的最短距离。对于图 GGG上的点对 (u,v)(u,v)(u,v),若它们的距离为 222,则它们之间会产生wuwuw_u*wvwvw_v 的...原创 2018-09-06 17:49:48 · 220 阅读 · 0 评论 -
[USACO07MAR]面对正确的方式Face The Right Way题解
题目N头牛排成一列1<=N<=50001<=N<=50001O2O2O_2,O3O3O_3,硬核优化等优化,可得90分,好,接下来我们有两个选择,第一个是继续优化常数,第二个是改进算法,由于不好再优化了,所以还是改进算法好,我们观察,可知我们的大部分时间花在暴力修改,所以我们二分不变,可以设s,s表示在当前结点之前修改次数,在判断时,可通过奇偶判定,在对一个点修改时,我...原创 2018-09-06 21:44:34 · 253 阅读 · 0 评论 -
[TJOI2007]路标设置题解
题目B市和T市之间有一条长长的高速公路,这条公路的某些地方设有路标,但是大家都感觉路标设得太少了,相邻两个路标之间往往隔着相当长的一段距离。为了便于研究这个问题,我们把公路上相邻路标的最大距离定义为该公路的“空旷指数”。 现在政府决定在公路上增设一些路标,使得公路的“空旷指数”最小。他们请求你设计一个程序计算能达到的最小值是多少。请注意,公路的起点和终点保证已设有路标,公路的长度为整数,并且...原创 2018-09-06 21:48:07 · 358 阅读 · 0 评论