自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

JinxiSui的博客

退役ACMer

  • 博客(31)
  • 收藏
  • 关注

原创 CodeForces 445B - DZY Loves Chemistry ( 并查集 )

题意DZY做化学实验, 有n种试剂, 其中m对能够发生化学反应, 试管初始危险系数为1, 当放入一种试剂与试管中已有试剂能够发生反应, 则危险系数*2, 求最大的危险系数思路并查集 将所有能发生化学反应的试剂放在一个集合里, 一个集合中的试剂按照一定顺序加入就一定可以保证每次加入都发生反应。最大危险系数 = 2^(n-集合数量)AC代码#include <i...

2018-04-27 22:20:53 185

原创 HDU 5835 - Danganronpa ( 贪心 )

题意给学生发礼物, 学生的桌子排成一行, 要求每个学生发两个礼物, 一种普通礼物, 一种特殊礼物(随意), 要求相邻的普通礼物不能相同思路每个学生准备两个礼物, 记礼物总数为sum, 则至多能分给sum/2个学生. 贪心 : 为保证相邻的普通礼物不同, 故尽可能多的放数量多的礼物, 中间插空放数量少的礼物, 当只剩一种礼物且上一次放的就是这个礼物的时候, 不能再继续放礼物, 贪心...

2018-04-27 22:15:10 158

原创 CodeForces 731C - Socks ( 并查集 + 贪心 )

题意Arseniy的所有袜子按照1-n编号, 每个袜子的颜色标记为c[i], 现在给出n个袜子和m天的穿袜子方案, 至多有k种颜色( 感觉是无用条件 ), 现在要求她每天穿着方案的两只袜子同色, Arseniy可以将其涂色改变颜色, 求最少的涂色数量思路比较容易想到并查集 将每天穿着方案中的两只袜子合并到同一个根节点下, 同一个集合中的袜子必须涂成同一种颜色, 这里用非常简单的贪心思...

2018-04-27 12:27:46 306

原创 HDU 5783 - Divide the Sequence ( 贪心 + 思路 )

题意给出一个数列, 求最多可以分割成多少个子序列使得子序列的前缀和都>=0思路倒序扫一遍, 若为正则划分为一个序列, 若为负则将该数加到数列中前一个数里(加到和>=0为止).AC代码#include <iostream>#include <algorithm>#include <cstdio>#include <c...

2018-04-26 20:48:21 171

原创 CodeForces 660D - Number of Parallelograms ( 模拟 )

题意给出n个点, 输入保证没有重复点, 且不会有三点共线, 求这些点能够构成的平行四边形的个数思路最后B题还有半个来小时没考虑全瞎瘠薄写没过 赛后补B题发现人家全用向量做的 我居然用的长度和斜率跑了2000+ms真的是太傻逼了大概就是用n*n跑一遍点, 枚举出所有可能组成的边(以向量形式存储), 若有两个向量完全相同则他们能构成一个平行四边形. 自己写的时候傻逼了, 用的...

2018-04-26 20:36:53 178

原创 POJ 1631 - Bridging signals ( LIS )

题意 有p条线路,它们有可能相交。现在让你去掉一些线路,使得剩下的线不相交且线最多 ( p < 40000 )思路为使得连线不相交, 必须选择一个上升的连接序列, 而求剩下的线不相交且最多就是求LIS ( 最长上升子序列 ) 由于p最大达40000, 1000 ms 肯定不能用复杂度为O(n*n)的朴素动态规划,会超时。这时考虑用O(nlogn)的 二分+贪心 建一个...

2018-04-25 21:38:41 229

原创 HDU 6112 - 今夕何夕 ( 基姆拉尔森公式 )

题意给出一个年月日, 求接下来最近哪一年的该月改日和这一天的星期相同思路基姆拉尔森公式求星期即可, 特别注意2月29日的特判 ! 关于基姆拉尔森公式 :基姆拉尔森公式模板int weekday(int y, int m, int d){ if(m==1||m==2){ m+=12; y--; } int w...

2018-04-24 18:50:00 219

原创 HDU 5860 - Death Sequence ( 递推+约瑟夫环 )

题意给出编号为1–n的n个人, 每隔k个杀一个人, 询问m次, 问第x个杀掉的是谁思路比赛的时候推递推式没推出来, 只好用vector的erase试试, 当然是超时了 比较像约瑟夫环, 但这个题目是不成环的 赛后还是查了查正解, 发现确实是有递推关系的 将编号改成从0开始。如果i%k==0, 那么i第一轮就被杀死。如果i%k!=0,否则在下轮中编号为i-i/k-1AC...

2018-04-24 15:42:39 162

原创 HDU 5857 - Median ( 查询模拟 + 思路 )

题意给出一个长度为n的递增数组A, 给出m个查找, 查找方式 : 给出l1, r1, l2, r2, 使得数组A中的A[l1], A[l1+1], ……, A[r1-1], A[r1] 和 A[l2], A[l2+1], ……, A[r2-1], A[r2]组成新的数组, 求这个新数组的中位数For 90% of the data, n, m <= 100 For 10% of...

2018-04-23 22:04:50 177

原创 HDU 5867 - Water problem ( 模拟 )

题意one:3个字母,two:3个字母,three:5个字母…..求到n<=1000,1—1000所有单词字母数量的和 For example, 342 (three hundred and forty-two) contains 23 letters and 115 (one hundred and fifteen) contains 20 letters. The use o...

2018-04-23 09:21:32 110

原创 HDU 4925 - Apple Tree ( 贪心 + 规律 )

题意一个n*m大小的苹果园,现在可以在某几块地上施肥。施肥作用效果是使得上下左右的四个区域内结的苹果数量翻倍,但是施过肥的地就不能放果树了。求最多能收获多少苹果。思路贪心 + 规律 从第一排第一个开始施肥,每隔一个位置施肥。 第二排从第二个位置开始施肥,…… 第三排从第一个位置开始施肥,…… ……AC代码#include <iostream>#...

2018-04-21 19:25:07 185

原创 HDU 1257 - 最少拦截系统 ( LIS / 贪心 )

题目现在有一种拦截系统,第一发拦截可以是任意高度,但是之后的拦截高度不能比上次高。为了拦截下所有的炮弹,最少需要准备几套拦截系统?思路可能是语文没学好吧,一开始被题意卡了一下。(而且题目连数据范围也没给???) 比如这种数据: Input 7 500 400 300 350 120 200 150 Output 2 HINT 第一套系统:①5...

2018-04-20 11:19:24 116

原创 HDU 1525 - Euclid's Game ( 博弈 )

题意Stan和Ollie玩游戏,Stan先手。给出两个数字,可以用大数减去小数的整数倍,要求不能减到小于0。谁先将一个数字减到0,谁获胜。思路博弈 假设 a > b 比赛的时候想到了关于a - b > b ( a > 2 * b )状态下,可以决定必胜、必败态,故若a > 2 * b为必胜态。 若a%b == 0, a可以减去b的整数倍变为0,故谁达到...

2018-04-20 10:16:30 133

原创 CodeForces 233B - Non-square Equation ( 思路,暴力 )

题意对于公式 x2 + s(x)⋅x − n = 0x2 + s(x)·x − n = 0x^2 + s(x)·x - n = 0, 给出n(1 ≤ n ≤ 1018101810^{18}), 求是否存在x使得该式成立,其中s(x)代表数字x的数位之和。(如s(102) = 1 + 0 + 2 = 3)思路思路+暴力 为使公式成立,x可以取到 999999999 (再大就没必要枚...

2018-04-19 22:40:01 150

原创 HDU 1301 - Jungle Roads( Prim求最小生成树 )

题意给出n个编号为A~A+n的节点,和某些节点之间的距离,求最小生成树的总权值思路裸的Prim算法求最小生成树 算法细节: 最小生成树-Prim算法和Kruskal算法AC代码#include <iostream>#include <algorithm>#include <cstdio>#include <cstr...

2018-04-19 18:42:10 173

原创 POJ 1061 - 青蛙的约会 ( 扩展欧几里得,线性同余方程 )

题意两只青蛙A,B在一条纬度上,纬度线总长为L,A在x处,B在y处。他们同时朝西走,A每次能走m,B每次能走n。问这两只瓜皮青蛙是否有可能相遇,如果不能相遇输出”Impossible”,如果能相遇则输出跳跃的次数。思路这题虽然是个数论基础题,但是恶心了我零零碎碎快一天的时间…到最后POJ还挂了交不上去。先记录一下大体的思路吧。之后再补代码。首先,建模过程还是非常愉悦的: 设跳...

2018-04-18 21:54:59 634

原创 HDU 6182 - A Math Problem

题意输入一个n ( 0 <= n <= 1018101810^{18} ) 求有多少个k 使得 kk≤nkk≤n k^k≤n 思路这个题蜜汁爆llu 用计算器试一下就知道当k = 16时, kk=1616kk=1616k^k = 16^{16} 已经超过 1018101810^{18} 所以最多是15 故用最朴素的循环求kkkkk^k 就行AC代码#...

2018-04-17 11:42:50 364

原创 HDU 2141 - Can you find it? ( 二分查找 )

题意给出A, B, C三个数组, 长度分别为l, m, n ( 1 <= l, m, n <= 500 ) 给出s (1 <= s <= 1000)个查询, 查找是否存在x使得在A, B, C中各取一个数使得a+b+c == x思路500*500*500*1000 复杂度太高无法暴力求解 考虑到用二分查找 先将前两个数列相加产生ab[]数列,这时ab+...

2018-04-17 11:05:26 147

原创 HDU 6188 - Duizi and Shunzi ( 贪心 )

题意给出n张牌, 每张牌编号为ai, 有两种组成方式, 一种叫”对子”, 也就是两张牌牌面相同, 另一种叫”顺子”, 也就是三张牌牌面连续, 每张牌最多只能用一次, 求最多能组成多少组思路贪心 贪心方法 : 枚举每张牌面的数量, 先尽可能多的组成对子, 那么至多只能剩下一张, 若该牌面只剩一张, 就要想办法将其与后面的牌组成顺子, 首先要保证s[i+1] 和 s[i+2] 至少有...

2018-04-15 18:58:30 219

原创 HDU 6189 - Law of Commutation ( 规律 + 思路 )

题意给出n, a ( n ≤ 30, 1 ≤ a ≤ 109. ), m = 2^n, 求[1, m]范围内有多少个数b使得 a^b mod m == b^a mod m思路打表找规律 1. 若a为奇数 cnt == 1 2. 若a为偶数 : 当 b <= n 时, 因为数据量较小可以直接暴力求 当 b > n 时, a^b % m 必然 = 0 要求有b使得 ...

2018-04-15 18:39:57 377

原创 UVA 10054 - The Necklace ( 打印欧拉回路 )

题意 一种由彩色珠子组成的项链。每个珠子的两半由不同的颜色(最多50种颜色)组成。相邻的两个珠子在接触的地方颜色相同。现在有一些零碎的珠子,需要确定他们是否可以复原成完整的项链思路把每种颜色看成点, 每个珠子的两半连一条有向边, 转化为欧拉回路 后台数据很水, 连是否联通都不用判, 直接查每个颜色出现的次数是否为偶数即可. 重要的是欧拉回路的打印, dfs逆序输出就可以( ...

2018-04-13 13:33:53 189

原创 POJ 2236 - Wireless Network ( 并查集 )

题意一个计算机网络里的计算机都坏了, 现在有两种操作, “O p”代表修复了p机器, “S p q”代表检查 p, q 两台机器是否连接( 直线距离<=d或者中间有距离<=d的用来联通的机器 )思路比赛的时候愣是没读清楚题目意思, 还以为是什么搜索, 瞎瘠薄做了个MLE 没料到居然是个并查集, 注意应该是直线距离 <= d, 不是上下左右走的 每次修复一个机器...

2018-04-13 11:04:13 194

原创 HDU 6025 - Coprime Sequence ( 前缀gcd+后缀gcd )

题意给出一个数组, 删一个数使得剩余数字构成的gcd最大思路借鉴前缀和思路 求出前缀gcd+后缀gcd, 通过这两个数组来求最大gcd即可AC代码#include <iostream>#include <algorithm>#include <cstdio>#include <cstring>#define ...

2018-04-12 12:03:52 198

原创 HDU 6027 - Easy Summation ( 快速幂取模 )

题意给出n, k, 已知: f(i)=i^k , 求 sum = f(1)+f(2)+…+f(n) , 并将结果模10e9+7思路其实这个题直接暴力就能暴过去 用快速幂的时候忘了中间的a也要用LL结果WA了两发快速幂取模算法详解 快速幂 快速幂板子ll quickmi(ll a, ll b){ ll ans = 1; a %= mod;...

2018-04-11 17:57:21 172

原创 FZU 2278 - YYS (数学期望, 大数乘法)

题意阴阳师抽卡, 假设共n种卡片。 如果你想得到一张新卡,需要支付W硬币来抽卡。每次只能抽一张,所有牌出现的概率都是1 / n。 每天可以得到1枚硬币。 假设在第0天有0个硬币并且没有卡。每W天,可以用W个硬币来绘制卡。定义W =(n-1)! , 也就是每隔(n-1)!天就可以进行一次抽奖。 问收集齐所有卡片的期望天数。思路假设现在有a张卡片, 想要抽到第a+1张( n张内任意...

2018-04-10 21:21:44 486

原创 FZU 2282 - Wand (组合数学+错排公式)

题意n个人有n把魔杖, 求这n个人至少有k个人拿到属于自己的魔杖的排列方式种数思路组合数学 + 错排公式完全错排公式 : D(n)=(n-1)*(D(n-1)+D(n-2)) 题目意思就是n个数字里要求至少k个数字位置不变,其余进行错排的方案数,容易想到不变的数字从k枚举到n,每次取i(k <= i < n)个出来,对剩下的n-i个进行错排,即C(n, i)...

2018-04-10 11:59:09 192

原创 FZU 2275 - Game ( KMP字符串匹配 )

题意Alice和Bob玩游戏, 他们各自给出两个数字A, B ( 0<=A,B<=10^100000 ) 他们可以对这两个数字进行两种操作: 除10 或 反转数字 例如X=123456 , 除10变为12345(而不是 12345.6). 特别注意 0/0=0 (一个坑, 如果Bob给数字是0, 则Alice一定可以一直除10达到0, 也就是说B = 0, Alice一定赢 )...

2018-04-09 22:28:10 231

原创 Gym 101350I - Mirrored String II ( Manacher马拉车算法 -- 最长回文子串 )

题意给一个字符串, 求最长回文镜像子串长度思路Manacher + 镜像判断 算法实现 : Manacher算法总结AC代码 ( kuangbin板子 )#include <iostream>#include <algorithm>#include <cstdio>#include <cstring>#de...

2018-04-09 19:11:35 218

原创 POJ 2387 - Til the Cows Come Home ( dijkstra求最短路 )

题意有T条路, n个节点, 求从1->n的最短路思路模版题, dijkstra算法 ( 数据量大, 无负边 ) 特别注意输入的时候要对重边进行处理最短路径问题—Dijkstra算法详解AC代码#include <iostream>#include <algorithm>#include <cstdio>#incl...

2018-04-04 20:21:22 112

原创 UVa 11491 - Erasing and Winning ( 优先队列模拟 )

题意给出一个长度为n的数字串, 要求删去d个数字, 使得剩下的总数字最大 (1 ≤ d < n ≤ 10^5 ) 思路根据贪心策略, 越高位的数字越大越好. 但取高位数字时同时要保证剩余量能够满足一共选出n-d个数字 考虑到用优先队列 但同时要记录下刚才取出的数字所在位置, 每次把队列中位置在上次选出数字所在位置之前的元素弹出AC代码#include...

2018-04-03 14:35:58 173

原创 HDU 1003 - Max Sum (dp)

题意给出一个乱序数组, 求一个区间使得区间内的数字之和最大 输出最大和, 区间开始位置, 结束位置思路经典dp 由于是从前往后更新, 所以用一个dp数组就可以处理 递推关系 : 如果dp[i-1] < 0 说明前面的和是小于0的, 此时更新开始位置(mrk)标记为当前位置 如果dp[i-1] >= 0 ,更新为 dp[i] = dp[i] + dp[i-1]; ...

2018-04-03 10:41:27 137

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除