YunYan

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 37 下一页

2020年2月2日

摘要: 一看到题目就觉得是一个背包问题,但是不知道怎么写。 题解:直接求背包容量为2*h时所需要的花费。然后h~2h都是满足条件的,去最小值即可。 code: #include<bits/stdc++.h> using namespace std; typedef long long ll; const l 阅读全文
posted @ 2020-02-02 22:00 Target--fly 阅读(189) 评论(0) 推荐(0) 编辑

2020年2月1日

摘要: 题目大意:有n座塔,塔高h[i],每次给定高度H对他们进行削切,要求每次削掉的所有格子数不能超过k个,输出最少削几次才能使所有塔的高度相同。 思路一:差分+贪心 对于每一个高度h,用一个数组让1~h的数,每一个都加一。用差分求一下后缀和可以完成。 AC code: #include<bits/std 阅读全文
posted @ 2020-02-01 23:45 Target--fly 阅读(148) 评论(0) 推荐(0) 编辑

2020年1月31日

摘要: 中国剩余定理(大神博客):https://www.cnblogs.com/MashiroSky/p/5918158.html 中国剩余定理(大神板子):https://www.cnblogs.com/czsharecode/p/9736807.html 欧拉函数:欧拉函数是小于x的整数中与x互质的数 阅读全文
posted @ 2020-01-31 16:17 Target--fly 阅读(274) 评论(0) 推荐(0) 编辑

2020年1月30日

摘要: 妈耶,,,被B题卡到哭,C题一发就过了。。。 字符串问题。首先用vector记录每个字符出现的位置,然后对字符串t的每个字符,用二分查找函数查找,注意用upper_bound查找,对于字符i,首先用变量pre记录第i-1个字符的位置。然后第i个字符的位置只能比 第i-1个字符位置大,所以用二分查一下 阅读全文
posted @ 2020-01-30 21:59 Target--fly 阅读(242) 评论(0) 推荐(0) 编辑

摘要: 天哪!!菜到家啦。 数学+思维。 首先求出一个周期内cnt0-cnt1=c的个数,如果C=0,那么只要在一个周期内有前缀等于x,那么答案就是-1,否则答案就是0 如果C!=0,列一下方程x=t*c+a.即x-a=t*c。,要求t为大于等于0的整数,也就是我们的判断条件。。。。唉。 #include< 阅读全文
posted @ 2020-01-30 20:43 Target--fly 阅读(213) 评论(0) 推荐(0) 编辑

2020年1月29日

摘要: 作为DIV2的D题来讲,这个题目不算难。 题目大意:再规定的时间内寻找宝藏,第i个宝藏的位置为a*x(i-1)+b,a*y(i-1)+b。然后给出初始位置xs,ys和时间t让求再时间t内能够寻找到多少宝藏。 题解: 两相邻的宝藏的坐标差一定是最小的。所以答案一定是连续的一组坐标。注意数据范围x的范围 阅读全文
posted @ 2020-01-29 20:44 Target--fly 阅读(200) 评论(0) 推荐(0) 编辑

2020年1月28日

摘要: 题解: 题目要求求出u和v两点在最短路径上的异或和。怎么确定最短路径呢?,就是U到LCA(u,v)的路径加上V到LCA(u,v)。根据异或的性质,如k^a^a=k,即异或一个值两边等于原数值。 所以维护一个数组dp[i]指的是根节点s到点i的异或和,所以答案应该是dp[u]^dp[v]^dp[lca 阅读全文
posted @ 2020-01-28 23:47 Target--fly 阅读(143) 评论(0) 推荐(0) 编辑

摘要: 题解: 注意每一列与每一列之间互不影响,所以贪心地求出没一列的最小操作值,然后累加起来。 怎么求没一列的最小值呢?维护一个数组same表示其中same[i]=j表示将该序列向上翻滚i次有j个元素归位,那么会有n-j个没有归位,所以我们要修改他们,一共修改n-j次,所以总计n-j+i次。 所以每一列的 阅读全文
posted @ 2020-01-28 21:31 Target--fly 阅读(172) 评论(0) 推荐(0) 编辑

2020年1月24日

摘要: 题目大意:n*m的矩阵中,找到两行数,可以形成两个一维数组,数组1的位置i和数组2的位置i去最大构成新数组b的元素b[i],最终目的要使数组b中最小的数尽可能的大 题解: m的范围是(1,8),比较小,我们用二分答案加按位与或来做,维护一个二维数组,当arr[i][j]>=x时,记为1,否则记为0。 阅读全文
posted @ 2020-01-24 22:49 Target--fly 阅读(206) 评论(0) 推荐(0) 编辑

2020年1月23日

摘要: https://blog.csdn.net/qq_39670434/article/details/78454033 差分可以用来解决区间加问题。比如q次操作,每次操作输入两个数x,y;表示对区间[x,y]加上数k。 具体做法:维护一个数组tt[N]。。tt[x]+=k,tt[y+1]-=k; 然后 阅读全文
posted @ 2020-01-23 21:17 Target--fly 阅读(168) 评论(0) 推荐(0) 编辑

上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 37 下一页