摘要:http://codeforces.com/gym/101498/problem/F 对于知道使用情况的置换算法,最优解是找一个最后需要使用的物品替换掉 也就是,如果一个物品后面已经不需要用到,就要拿出来了,碍地方 #include <bits/stdc++.h> #define IOS ios::
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=5920 http://www.cnblogs.com/xudong-bupt/p/4015226.html 把前半部分复制过去,如果太大,那么早到第一个会使得其太大的点,减1,然后对应的中间的变成9 #includ
阅读全文
摘要:https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=5158 这样的受到两个东西限制的,很容易想到要排序,然后加进去multiset,加的时候保证
阅读全文
摘要:http://codeforces.com/gym/100269/attachments 首先建图,然后图中每条边的权值是会变化的,是由dis[x] + dis[y] > dis[make],然后就相当于新增加一个原点0,求0到1的最短距离 如果用了2更新4失败,但是2本来不是最优的,就是可以用7和
阅读全文
摘要:https://csacademy.com/contest/round-39/task/seven-segment-display/ 可以知道,只有1是无解 而且肯定是选出来的位数约小越好。 位数 = (k + 6) / 7,因为总是可以通过买7来最大化缩小位数 然后枚举每一位选什么,选的时候,需要
阅读全文
摘要:https://csacademy.com/contest/round-36/summary/ C题是一个贪心,最坏情况是,一开始肯定是每一对袜子都抽一个,然后就需要N个袜子了。后面的情况就是相同的了。 就是,整个数组变成了1、1、1、1、1、1、1、1、1这样,之后任意拿一个袜子,都会增加1pai
阅读全文
摘要:http://codeforces.com/problemset/problem/700/B 题意是,在一颗树中,有k个大学,要求两两匹配,他们之间的距离作为贡献,使得距离总和最大。 一开始的时候无从下手,一路在想某一个点应该和哪一个点去匹配。但是这样是错误的思路。 正解是观察边的贡献,如果某两个学
阅读全文
摘要:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1625&judgeId=203076 一开始的时候,还想着枚举每一行的总和,和每一列的总和,然后选一个最小的来变就好。 然后wa了,只剩下一组数据,然后看到还是大数据,调试不
阅读全文
摘要:http://codeforces.com/problemset/problem/337/C 题意是给出n个题目,那个人答对了m道,然后如果连续答对了k道,就会把分数double 求最小的分数是什么。 思路是首先看看n个位置能放下多少个(k - 1),也就是先保证不double 比如8能放下多少个3
阅读全文
摘要:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1163 首先如果时间大于n,也就是相当于不限时了,因为完成前n - 1项任务需要时间n - 1,不影响我的第n项。 首先按价值排序,然后这个价值安排在它准备过期的那一天,如果
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=6011 先把数字从小到大排好,比如是-6、3、4这样, 然后处理出后缀和,当后缀和 <= 0的时候马上停止就好了。 证明: 假如现在是去到了第二个,也就是那个3,后缀和是7,那么我选不选-6呢? 如果选, 结果是:
阅读全文
摘要:http://codeforces.com/contest/747/problem/D 大概的思路就是找到所有两个负数夹着的线段,优先覆盖最小的长度。使得那时候不用换鞋,是最优的。 但是这里有个坑点,就是最后一段,如果最后一段的长度和中间某一段的长度相等,那么应该优先覆盖中间那段,因为中间的那些,如
阅读全文
摘要:http://codeforces.com/contest/746/problem/D 首先说下一定是NO的情况。 假设a > b 那么,b最多能把a分成b + 1分,如果每份刚好是k的话,那么就最多能支持a的最大值是(b + 1) * k 其实就好比如,分成3分的话,x1 + x2 + x3 =
阅读全文
摘要:https://biancheng.love/contest-ng/index.html#/123/problems 如果只是输出最小的值,那么好办,a升序,b降序,这样是最优的。 但是需要次数,这就麻烦了。 但是注意到它说数字互不相同。 那么,用个数组book[a[i]]表示a[i]需要匹配的是那
阅读全文
摘要:http://codeforces.com/contest/734/problem/C 因为有两种操作,那么可以这样考虑, 1、都不执行,就是开始的答案是n * x 2、先执行第一个操作,然后就会得到一个time和left。就是你会得到一个新的用时,和一个剩下的魔法数,然后在第二个操作数中二分,二分
阅读全文
摘要:1191: 冰法斗神龙 Description 强大的冰魔法师zz一路过关闯将,终于独自一人杀到了神龙面前。神龙的血量值为HP,正常状态下每秒进行一次攻击,伤害值为DAMAGE。zz精通n种瞬发冰控魔法(在同一秒内,zz发动的冰魔法要比神龙的攻击快上一点),第i(1<=i<=n)种魔法伤害值为dam
阅读全文
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=5676 这题的正解因该是dfs的,但是有18个位,然后我一算,全排列的话,有18!个啊,那不是很大?但是有很多是相同的,因为4477和第一个和第二个数字调转的结果是一样的。 先说说我模拟的方法。 真的很麻烦,不想看
阅读全文
摘要:http://codeforces.com/gym/101149/problem/G 一开始还以为要用二分图去做,但是复杂度也太高了,O(n * m)的话直接爆炸。 考虑贪心,考虑第i个东西优先选一个能选的,而且这个东西的值尽量小。 就是如果要<3, 3>的话,我希望找到有序对<x, y>,其中x和
阅读全文
摘要:http://codeforces.com/gym/101149/problem/H 一开始的时候还真不会做,一边模拟一边贪心,但是很明显,只满足前面i个的解,是错误的贪心。 也找了不少数据,坑了很多。最终还是wa58滚粗 下面的这些数据都是可行的。加粗的那个比较有代表性。 (((((???????
阅读全文
摘要:http://codeforces.com/gym/101149/problem/J 给出n个数字,表示第i条街有a[i]个照片存在过,其中,每个照片可以覆盖一段连续的区间, 就是一张照片可以覆盖[2, 5]这样,所以第[2, 5]条街出现的次数都要+1 有点贪心的思想,就是每张照片都要覆盖一段能覆
阅读全文