07 2020 档案
摘要:地址:http://codeforces.com/contest/1389/problem/C 题意: 含0~9的字符串,删除最少的字符,实现: t2t3....tnt1==tnt1t2......tn-1 解析: 可以发现,当长度为奇数的时候,t1=t2=t3...tn,这个时候,整个字符串必须全
阅读全文
摘要:地址:http://codeforces.com/contest/1389/problem/B 题意: 长度为n的a[],规定走k步,最多z次向左走。不能连续向左走。求获得的最大分数。 解析: 看z范围就知道,可以对z进行枚举,找到每次的落脚点,直接算分数即可。 需要反复横跳的地点,是最大的相邻和值
阅读全文
摘要:地址:http://codeforces.com/contest/1389/problem/A 题意: 不说了,很清晰了。 解析: 我们选择的x,y越大,lcm(x,y)就会更大,越有可能越R这个右界限 所以L做为最小,如果2*L越界,是一定无解的。 #include<bits/stdc++.h>
阅读全文
摘要:地址:https://ac.nowcoder.com/acm/contest/5671/C 题意: 给出n*m的矩阵,求子矩阵的最大压强:压力F为子矩阵所有元素之和,受力面积为子矩阵最后一行的元素之和 子矩阵可以不连续 解析: 给出一个比较极端的情况: 1 100 1 100 1 1 第一列压强为:
阅读全文
摘要:地址:https://ac.nowcoder.com/acm/contest/5671/E 题意: 构造一个只含1~n的序列,使得对于每一个长度在[1,n]的i,序列都存在一段长度为i的连续子序列,它的和%n==k 解析: 正着看不好看,来倒着分析 首先是i==n的情况,也就是序列总和,如果它%n!
阅读全文
摘要:洛谷地址:https://www.luogu.com.cn/problem/CF1038D 题意: n只史莱姆,每一个史莱姆可以吃相邻的左或右,它的分数就变成:它的分数-被吃的分数 求最大的剩余值。 解析: 如果对过程进行太多的分析的话,问题就会变得很复杂。刚开始想的是,把所有能算出来的负数弄出来,
阅读全文
摘要:洛谷地址:https://www.luogu.com.cn/problem/CF1250B 题意: n个人,k个队伍,每个人属于队伍ai,汽车一次至多载两只队伍(全员),费用为车的容量*载人次数,问最少花费。 解析: 对k个组的人数进行从小到大的排序。 那么车容量至少为ak,才能保证按条件运送所有队
阅读全文
摘要:地址:http://codeforces.com/contest/1384/problem/A 题意: 输出n+1个字符串,si和si+1的公共前缀长为ai 解析: 一个一个补的话,会很麻烦。 看范围:ai<=50,就是说前缀最长为50,那么考虑把所有字符串长度都构造为长度>50,那么对于每一个ai
阅读全文
摘要:地址:https://www.jianshu.com/p/b74eb79c5c01 建议严格按作者的idea版本进行安装,其他版本可能会出错,比如打开闪退的情况。
阅读全文
摘要:A:http://codeforces.com/contest/1382/problem/A 题意: 找出最短数组c[],保证它同时是a[]和b[]的子序列 解析: 如果a[]和b[]存在相同数字,直接输出它 否则不存在 #include <bits/stdc++.h> #define ll lon
阅读全文
摘要:地址:https://ac.nowcoder.com/acm/contest/5669/B 解析: 题意如此,主要是要先看懂这个公式。 由于是每次都是c*c*c...所以不用看c了,直接分解n 要想max最大,很明显需要尽量多次得分解n,那么每次找n的最大因子x,gcd(n,x) 举几个例子,计算方
阅读全文
摘要:地址:https://ac.nowcoder.com/acm/contest/5668/B 题意: 给定字符串s n次操作 M: x x>0,将左边x个字符般到右边。x<0,将右边数x个字符搬到左边 A: x 询问当前第x个字符 解析: 思路:维护变化后的第一个字符,在原字符里出现的位置 上样例:
阅读全文
摘要:地址:https://ac.nowcoder.com/acm/contest/5667/C 题意: 给定一个k个节点的无根树,求最少的链覆盖树上的所有边。并输出覆盖方式(链的两边的节点编号) 解析: 保证每一个边都有被覆盖,肯定与叶子节点有关系。 有结论: 用最少条链来覆盖一棵树的时候,最优解: (
阅读全文
摘要:地址:https://ac.nowcoder.com/acm/contest/5667/F 题意: n*m的矩阵,mp[i][j]=lcm(i,j) 求每个k*k矩阵的最大值之和 解析一,DP做法: 针对k>1的情况,我们把每个2*2矩阵的最大值放在右下角。 k*k的矩阵,它是由若干个2*2的矩阵组
阅读全文
摘要:洛谷地址:https://www.luogu.com.cn/problem/CF425A 题意: 给一个长为 n 的序列,以及交换次数 k,每次可以在原先的序列 中任意交换两个数 交换后找一个最大子串和,输出其可能的最大值。 1 <= n <= 200; 1 <=k <=10 解析: n=200,可
阅读全文
摘要:A:http://codeforces.com/contest/1372/problem/A 解析: 没得说,没想到这次A这么简单,全输出1就行了 #include<cstdio> #include<stack> #include<map> #include<set> #include<queue>
阅读全文
摘要:洛谷地址:https://www.luogu.com.cn/problem/CF985C 题意: 你有一共m=n*k个木板。第i个木板的长度为ai。你必须用其中的每k条木板组成n个木桶。每条木板只能且必须属于一个木桶。我们把第j个木桶的最短的木板长度作为这个木桶的容积vj 你想要让这组合起来的n个木
阅读全文
摘要:洛谷地址:https://www.luogu.com.cn/problem/CF909A 来自洛谷的题意: 给定两个用空格分隔的字符串,分别取两字符串的任意非空前缀,将两前缀合并为一个新的字符串,求可行字典序最小的字符串。 解析: 给定s1 s2 已知取两者非空前缀,所以s2只需要取首就可以了。 那
阅读全文
摘要:来自:https://blog.csdn.net/sdau20171989/article/details/79230721?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.none
阅读全文
摘要:地址:https://www.luogu.com.cn/problem/P1208 解析: 单价p,可完成数x 要想保证花费最少,有贪心思路: 1:单价从小到大排列。保证花费最小 2:单价相同,可完成数从大到小排列。保证能尽量多的用花费少的一方。 #include<cstdio> #include<
阅读全文
摘要:地址:https://www.luogu.com.cn/problem/P1090 解析: 要想最后花费最少,肯定每次要加入两个最小值。 所以贪心思路,就是每次取剩余堆的两个最小值相加,相加以后,把它放入队列。 使用优先队列实现: priority_queue<int,vector<int>,gre
阅读全文
摘要:地址:http://acm.hdu.edu.cn/showproblem.php?pid=2570 解析: 想让最后的体积最大,肯定是先加入浓度小的。 所以贪心思路是,浓度从小到大加入。 注意: n种同体积的浓度分别为a,b,c...那么混合以后浓度为:(a+b+c+..)/n 所以从小到大加入即可
阅读全文
摘要:地址:https://www.luogu.com.cn/problem/P2082 解析: 刚开始自己写的代码: 我对L递增排列,L相等按R递增排列。 直接逐个判断,相交,或者不相交。 但让每一个区间只和它前一个区间发生关系,显然是错误的。 比如: [1,5] [2,4] [3,6] 答案应该是6,
阅读全文
摘要:地址:http://acm.hdu.edu.cn/showproblem.php?pid=2037 解析: 每个节目,有开始时间和结束时间。 考虑3个贪心策略: 1:节目持续时间最短 2:最早开始 3:最早结束 可以发现,对于第2种,如果某个节目最早开始,但是迟迟不结束,那么其他节目就没得看了。 第
阅读全文
摘要:地址:http://codeforces.com/contest/1375/problem/C 题意: 1~n的全排列。 操作:对i,如果存在ai<ai+1,可移除它俩的任意一个。 问是否能让数组只剩一个数。 解析: 移除的过程,是不会改变整体的顺序,所以从首尾入手。 规定a1<an a1~~an
阅读全文
摘要:地址:https://www.luogu.com.cn/problem/P2651 题意如此 解析: 要想分数可化为整数,那么分子与分母的最大公因数为分母本身。 a1,a2,......an 可以得出,不管怎么变换顺序,a1必为分子,a2必为分母。 要想分子能整除分母,那么分子一定要包含分母的所有因
阅读全文
摘要:地址:http://codeforces.com/enter?back=%2Fcontest%2F1374%2Fproblem%2FD 题意: n个数,k x初始为0, 操作1:+ai,x++ 操作2:x++ 问使得所有数均能整除k的最小操作数。每个数只能被加一次。 解析: 假设有俩数:2 2 k=
阅读全文
摘要:A:http://codeforces.com/contest/1371/problem/A 题意: 1~n个棒子,长度依次为1~n。可两两合成,求能得到的最多相同长度棒子数。 解析: 偶数,直接/2即可。 奇数,比如对5, 1,2,3,4,5 1~4,可合成为:5,5,加上末尾5,结果为3。 所以
阅读全文

浙公网安备 33010602011771号