03 2019 档案

摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 https://blog.csdn.net/V5ZSQ/article/details/70873661 看这个人的吧。 【代码】 cpp include define ll long long using namespace std; 阅读全文
posted @ 2019-03-31 23:17 AWCXV 阅读(113) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 给你一棵树 但是每个节点只告诉你出度个数 以及所有和它相连的点的异或和. 让你还原这棵树 【题解】 叶子节点的话,他所有节点的异或和就是它那唯一的一个爸爸 因此,弄个拓扑排序,从最下层一直往上面进行拓扑排序,每次找到它的爸爸之后,就将这个儿子删掉.让爸爸 阅读全文
posted @ 2019-03-31 20:41 AWCXV 阅读(96) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 我们可以从左到右枚举一轮。 定义一个cost表示这一轮花费的钱数 如果cost+a[i]beforeT cost beforeT/(1+x) x cost x beforeT/(1+x) x cost beforeT/(1/x+1) x 阅读全文
posted @ 2019-03-30 23:08 AWCXV 阅读(199) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 参考这篇题解:https://blog.csdn.net/mitsuha_/article/details/82825862 为什么可以保证m gcd(2 n,k)/k是一个整数? 因为先前已经判断过 2 n m/k是可以整除的。 显然k 阅读全文
posted @ 2019-03-30 21:53 AWCXV 阅读(157) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 四个大角 然后每个大角里面包着一些其他颜色的就好 【代码】 java include using namespace std; const int N = 50; const long long M = 15e6; int a,b,c,d 阅读全文
posted @ 2019-03-29 16:10 AWCXV 阅读(146) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 设原来n个数字的gcd为g 减少某些数字之后 新的gcd肯定是g的倍数 即g x 我们可以枚举这个x值(x =2) 看看原来的数字里面有多少个是g x的倍数就可以了 (开个数组_cnd[i]表示数字i有多少个) 为了方便起见 可以先把每个 阅读全文
posted @ 2019-03-29 15:14 AWCXV 阅读(107) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 每次都选择剩余个数最多的3个不同数字组成一组. 优先消耗剩余个数多的数字 这样能尽量让剩余的数字总数比较多,从而更加可能得到更多的3个组合 【代码】 java include using namespace std; const int 阅读全文
posted @ 2019-03-28 23:08 AWCXV 阅读(115) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 考虑怎么得到数字x2=N,假设是质数p的倍数 那么x1肯定在x2 p+1~x2这个范围内才行 因为p的倍数要刚好大于等于x1, 所以x1肯定是在这两个倍数之间才行 结果已经很显然了 肯定让p的值越大越好。 这样得到的x1才可能越小。 枚举 阅读全文
posted @ 2019-03-28 16:22 AWCXV 阅读(146) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 设第i天总共的线数为t[i] 水平线上线数为m[i]是固定的 水平线下的线数设为d[i] 则d[i]+m[i]+1=t[i] 也就是说问题可以转化为使得t[i]最小 我们可以列出关于t[i]的不等式 t[i]= max{t[i 1],m[ 阅读全文
posted @ 2019-03-27 16:24 AWCXV 阅读(108) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 设dis[v]表示v以上的点到达这个点的最大权值(肯定是它的祖先中的某个点到这个点) 类似于最大连续累加和 当往下走(x,y)这条边的时候,设其权值为w,以及到目前为止走过的最大权值和cur 如果cura[x]那么它以及它下面的所有节点都 阅读全文
posted @ 2019-03-27 13:25 AWCXV 阅读(156) 评论(1) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 从小到大枚举天数. 然后贪心地,从大到小分配a[i]到各个天当中。 a[n]分配到第1天,a[n 1]分配到第2天,...然后a[n x]又分到第一天。 这样能保证优先让大的数字能够无损失地加进去。 从而尽可能快的凑够m天 【代码】 ja 阅读全文
posted @ 2019-03-26 15:05 AWCXV 阅读(178) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 枚举三分线(离散后)的位置 然后根据预处理的前缀和,快速算出两个队伍的分数。 【代码】 java include using namespace std; const int N = 2e5; int n,m; int a[N+10],b 阅读全文
posted @ 2019-03-26 15:03 AWCXV 阅读(75) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 同一个联通块里面答案都一样。 把每个联通块的答案都算出来 然后赋值就好 【代码】 java include using namespace std; const int N = 1000; int n,m,k; int dx[4] = { 阅读全文
posted @ 2019-03-25 10:59 AWCXV 阅读(109) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 相当于让你确定每个数字前面的系数是 1还是+1 有个结论是这样每次和相邻的减的话, 任何出除了全" 1"和全"+1"之外的其他系数组合都能得到。 分初始的时候每个数字的正负贪心地取一下就好 【代码】 java include using 阅读全文
posted @ 2019-03-25 09:31 AWCXV 阅读(106) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 设cnt表示s1和s2不同的字符的个数 如果cnt 2 t 因为这cnt个位置肯定至少有一边不同 显然肯定会有一个f(s,S)的值大于t的 如果t 【代码】 阅读全文
posted @ 2019-03-24 23:08 AWCXV 阅读(112) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 设pre[i]表示i往前一直递增能递增多远 设aft[i]表示i往后一直递增能递增多远 如果aft[l]+pre[r] =(r l+1)那么就ok否则no 【代码】 阅读全文
posted @ 2019-03-23 23:45 AWCXV 阅读(223) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 因为原序列没有任何长度超过2的回文串。 所以,我们在改变的时候,只要时刻保证改变位置s[i]和s[i 1]以及s[i 2]都不相同就好。 因为只改变一个位置的话是不会产生长度超过3的回文串的 我们按照从后到前,从小到大的顺序,尝试增加第i 阅读全文
posted @ 2019-03-23 23:28 AWCXV 阅读(216) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你把n个字符串重新排序,然后按顺序连接在一起 使得这个组成的字符串的"sh"子序列最多 【题解】 StringBuilder比直接用字符串的"+"来得快 【代码】 java import java.io. ; import java.util. ; p 阅读全文
posted @ 2019-03-22 23:19 AWCXV 阅读(298) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 把1~n的n!种排列依次连接成一个长度为n n!的序列。 让你在这个序列当中找长度为n的连续段,使得连续段中的数字的和为n (n 1)/2 输出符合要求的连续段的个数 【题解】 也就是让你找到长度为n的连续段,然后里面1~n各出现一次 考虑相邻的两个排列 阅读全文
posted @ 2019-03-22 16:14 AWCXV 阅读(238) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 设f[i]表示i作为序列的最后一个数字,最长的连续序列的长度。 用f[i]和f[i 1]+1来转移即可 【代码】 阅读全文
posted @ 2019-03-21 23:10 AWCXV 阅读(234) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你把一个包含数字1,6,8,9的数字重新组合,使得组合成的数字能被7整除 【题解】 我们先提取出来1,6,8,9各1个 然后把剩余的len 4个数字除了0之外放在前面 那么这len 4个除了0之外的数字组成的十进制数字对7的取余结果肯定是0~6之间。 阅读全文
posted @ 2019-03-21 23:08 AWCXV 阅读(221) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 依次序将数字插入到排序二叉树当中 问你每个数字它的父亲节点上的数字是啥 【题解】 按次序处理每一个数字 对于数字x 找到最小的大于x的数字所在的位置i 显然,x要放在这个x的左子树里面 所以如果x的左子树为空那么直接放上去就好 否则,左子树不为空的话,对 阅读全文
posted @ 2019-03-20 23:54 AWCXV 阅读(114) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你找到(a,b,c,d)的个数 这4个点之间有4条边有向边 (a,b)(b,c) (a,d)(d,c) 即有两条从a到b的路径,且这两条路径分别经过b和d到达c 【题解】 我们枚举a,c 然后找到这样的b的个数cntb,其中a到b有一条边,b到c也有一 阅读全文
posted @ 2019-03-20 23:00 AWCXV 阅读(219) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 每个节点的度数不超过k 让你重构一个图 使得这个图满足 从某个点开始到其他点的最短路满足输入的要求 【题解】 把点按照dep的值分类 显然只能由dep到dep+1连边 设cnt[dep]表示到起点的距离为dep的点的集合 如果cnt[dep].size 阅读全文
posted @ 2019-03-19 23:23 AWCXV 阅读(83) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你求出所有x的和 其中 (x div b)是(x mod b)的倍数 且x mod b不等于0 且(x div b)除(x mod b)的值(假设为k),k∈[1..a] 【题解】 枚举k从1~a 这样k就固定了 n = x / b; m = x % 阅读全文
posted @ 2019-03-19 16:07 AWCXV 阅读(118) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你找到(x0,y0)到(x1,y1)的一条最短路 走过的点必须在所给的n个横向路径上 【题解】 因为n条横向路径上的点最多不会超过10的5次方个,所以我们可以把这10的5次方个点全都 和数字1~10^5一一对应。 然后对于这每一个点,分别于相邻的8个点 阅读全文
posted @ 2019-03-14 21:22 AWCXV 阅读(282) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你在n个数字中再加入一个数字 使得这n+1个数字排序之后 相邻两个数字的差都相同 【题解】 注意相邻为0的情况 这种情况 只有全都相同才行 只有一种情况 然后就是样例里的a[i] a[i 1]只有两种数字 然后较小的a[i] a[i 1]有n 2个,较 阅读全文
posted @ 2019-03-14 18:28 AWCXV 阅读(142) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你将一个字符串删掉一些字符。 使得字符串中不包含子序列"hard" 删掉每个字符的代价已知为ai 让你求出代价最小的方法. 【题解】 设dp[i][j]表示前i个字符,已经和"hard"匹配前j个的最小花费。 对于dp[i][j] 对s[i+1]分类讨 阅读全文
posted @ 2019-03-13 23:01 AWCXV 阅读(147) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你把" "用至少一个右括号代替 使得整个括号序列合法 【题解】 首先我们不要考虑井号 考虑最简单的括号序列 并且把左括号看成1,右括号看成是 1 然后用a[]表示它的一个前缀和(a[0]=0) 这样 这个括号序列合法的充要条件就是 ①a[i] =0 ( 阅读全文
posted @ 2019-03-13 20:29 AWCXV 阅读(206) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你求出只由3个非0数字组成的数字在[li,ri]这个区间里面有多少个. 【题解】 只由3个非0数字组成的数字在1~10^18中只有60W个 dfs处理出来之后排序做个二分查找一下区间里有多少个就好。 【代码】 java import java.io. 阅读全文
posted @ 2019-03-12 17:22 AWCXV 阅读(235) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 连续相同的数字分为一段 你可以改变其中0为1~m中的某个数字(改变成不同数字需要不同花费) 问你最后如果要求分成恰好k段的话,最少需要多少花费 【题解】 dp[i][j][k]前i棵树,分成j段,第j段最后一棵树颜色为m的最小花费 很好转移了,分情况就好 阅读全文
posted @ 2019-03-12 16:34 AWCXV 阅读(208) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 给你一棵树 让你选择若干个修理点. 这些修理点被选中之后,节点i到1号节点之间的所有"坏路"都会被修好 问最少需要选择多少个点才能将所有的坏路修好 【题解】 以1为根节点建立一棵树 对于每一棵子树,如果里面有"坏路",必然要选择一个修理点,怎么选择呢? 阅读全文
posted @ 2019-03-11 23:40 AWCXV 阅读(164) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 笔和笔盖 笔有颜色和直径 笔盖也有颜色和直径 笔盖和笔如果直径相等 那么称为good 如果笔盖和笔直径相等、颜色也相等,那么称为very good 问你怎样安排笔和笔盖才能让good最多的情况下very good也最多. 【题解】 将直径相同的笔和笔盖放 阅读全文
posted @ 2019-03-10 20:44 AWCXV 阅读(169) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 在天平上放砝码 你要在左边放一下然后到右边放一下 一直重复这样放m次 每次你放在其中一边都要让另外一边的重量比你少 你可以用1~10中的某些砝码 问你要怎样放才行,或者告知系统不能放m次 【题解】 动态规划 设dp[i][j][k]表示第i轮结束之后,左 阅读全文
posted @ 2019-03-10 16:02 AWCXV 阅读(285) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你把长为a,宽为b的房间扩大(长和宽都能扩大)。 使得它的面积达到6 n 问你最小的能满足要求的面积是多少 输出对应的a和b 【题解】 假设aceil(sqrt(6 n))的话 得到的newb = ceil(sqrt(6 n))/newa newb肯定 阅读全文
posted @ 2019-03-10 15:14 AWCXV 阅读(208) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你在一个递增数组中选择一个最长子序列使得gcd(a[i],a[i+1]) 1 【题解】 设f[i]表示以一个"含有素因子i的数字"作为序列的结尾的最长序列的长度 显然更新的时候 假设枚举到了a[i] 先求出它所有的素因子p[] 因为要和前面一个数字不互 阅读全文
posted @ 2019-03-09 21:08 AWCXV 阅读(129) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 n为奇数时3 n和7 n+1奇偶性不同 n为偶数时也是如此 然后交换任意一对数 逆序对的对数的奇偶性会发生改变一次 求出逆序对 对n讨论得出答案。 【代码】 java import java.io. ; import java.util. 阅读全文
posted @ 2019-03-08 23:21 AWCXV 阅读(237) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你找到所有和x颜色的点中,和该颜色的点颜色不同的相邻的点的个数(重复颜色算一次) 求出哪种颜色的所要求的点的数量最多. 【题解】 对于每一条边只会被查到两次。 所以按照题意暴力枚举的时间复杂度就是O(n+m)级别的 至于查重 只要对找过的点打个标记就很 阅读全文
posted @ 2019-03-08 11:01 AWCXV 阅读(257) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 傻逼模拟题 【代码】 java import java.io. ; import java.util. ; public class Main { static InputReader in; static PrintWriter out 阅读全文
posted @ 2019-03-07 21:19 AWCXV 阅读(241) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你把一个奇数n分成最多个质数的和 【题解】 10的9次方以内,任意两个质数之间的差距最大为300 因此可以这样,我们先从i=n 2开始一直递减直到i变成最大的p(p 【代码】 java import java.io. ; import java.uti 阅读全文
posted @ 2019-03-07 17:36 AWCXV 阅读(129) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 每次你可以将一个字符变成一个不同于本身的字符. 每个人需要改变n次(且不能不改变) 设每个人的字符串中出现次数最多的字符出现的次数为cnt[0~2] 问你谁的cnt值最大 如果最大的两个cnt相同 输出draw 【题解】 模拟就好 注意这种情况(n=1) 阅读全文
posted @ 2019-03-06 19:50 AWCXV 阅读(178) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 给你一个数组A[]经过a[i][j] = gcd(A[i],A[j])的规则生成的二维数组 让你求出原数组A 【题解】 我们假设原数组是A 然后让A数组满足A[i] 【代码】 cpp import java.io. ; import java.util. 阅读全文
posted @ 2019-03-06 11:45 AWCXV 阅读(127) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 长度为n的一个序列,其中有一些部分可能是空的,一些部分是长度为a的物品的一部分 (总共有k个长度为a的物品,一个放在位置i长度为a的物品会占据i,i+1,....i+a 1这a个格子 (物品之间必须要有至少一个空格,不能相邻 现在有一个人猜了m个不同的位 阅读全文
posted @ 2019-03-05 20:33 AWCXV 阅读(231) 评论(2) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 题意 【题解】 模拟题、用set模拟下就好 【代码】 cpp import java.io. ; import java.util. ; public class Main { static InputReader in; static PrintWri 阅读全文
posted @ 2019-03-05 12:55 AWCXV 阅读(134) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 如果任意行之间可以重新排序。 问你最大的全是1的子矩阵中1的个数 【题解】 设cnt[i][j] 表示(i,j)这个点往右连续的1的个数 我们枚举列j 然后对于第j列的cnt[1..n][j] 我们把这n个数字排个序(升序) 然后顺序枚举这n个数字 假设 阅读全文
posted @ 2019-03-04 23:19 AWCXV 阅读(209) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你把一个字符串分成左右两个部分 形成两个正数 使得这两个正数一个能被a整除,一个能被b整除 找到任意一个解就可以 【题解】 枚举分割的断点i 枚举的时候用同余率算出来s[1..i]和a以及b取余的结果 怎么得到s[i+1..len 1]呢? 只要用s[ 阅读全文
posted @ 2019-03-04 13:57 AWCXV 阅读(117) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你求出b[i][j]=s[i] s[j]规则构成的矩阵 的所有子矩阵中子矩阵的和为a的子矩阵的个数 【题解】 (x,y,z,t) 会发现它的和就是sum(x,y) sum(z,t) sum(x,y)=a[x]+a[x+1]+...+a[y] 因为这个子 阅读全文
posted @ 2019-03-03 23:08 AWCXV 阅读(224) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 环里面的点只需要一个点就能全都保护 问你最少需要多少花费以及最少的点才能将所有的点都保护 【题解】 有向图的强连通分量求出所有的联通分量 显然每个联通分量里面只需选择最小那个点就好 如果有多个最小的点,那么这个环就有多个选择。 每个环的最小点个数连乘一下 阅读全文
posted @ 2019-03-03 17:09 AWCXV 阅读(234) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你从一个集合中找出来一个子集 使得这个子集中任意两个数相减的绝对值是2^的整数次幂 且集合的大小最大 【题解】 考虑子集的个数为4个或4个以上 那么我们找到最小的4个a[1],a[2],a[3],a[4] 显然 dis(1,2)=2^a dis(2,3 阅读全文
posted @ 2019-03-02 16:09 AWCXV 阅读(118) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 让你判断一个序列是否可能为一个bfs的序列 【题解】 先dfs出来每一层有多少个点,以及每个点是属于哪一层的。 每一层的bfs如果有先后顺序的话,下一层的节点的出队也是有先后顺序的 因此x是当前层只是一个简单的判断条件,还需要更深入的判断 也就是说它是不 阅读全文
posted @ 2019-03-02 15:23 AWCXV 阅读(119) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 你可以往左最多x次,往右最多y次 问你从x,y出发最多能到达多少个格子 只能往上下左右四个方向走到没有障碍的格子 【题解】 假设我们从(r,c)出发想要到固定某个点(i,j)的最短距离 我们设x0为向左走动的次数,y0为向右走动的次数 显然(j c)=y 阅读全文
posted @ 2019-03-01 23:23 AWCXV 阅读(113) 评论(0) 推荐(0) 编辑
摘要:【链接】 "我是链接,点我呀:)" 【题意】 n个人矩形m场比赛 每场比赛由编号为li~ri且之前没有被淘汰的人进行。 已知第i场的winner是xi winner会把这一场其他所有的人都淘汰。 问你n个人每个人都是被谁给淘汰的. 【题解】 并查集 初始条件f[i] = i,nex[i] = i + 阅读全文
posted @ 2019-03-01 16:24 AWCXV 阅读(220) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示