http://codeforces.com/problemset/problem/730/I 题意:有n个人参加两种比赛,其中每个人有两个参加比赛的属性,如果参加了其中的一个比赛,那么不能参加另一个比赛,每种比赛有一个参加的限制人数,求让两种比赛的属性值最大的方案. 思路:如果往网络流方面想,就挺容易想到最小费用流的. 学习了一个技巧:把费用设为负,最后再反过来,就可以求最大费用流了. 将S和每个人相连,容量为1, 费用为0,再把每个人和T1点相连(代表第一个属性),容量为1,费用为-a[i],…
A. Olympiad 题目链接:http://codeforces.com/problemset/problem/937/A time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output The recent All-Berland Olympiad in Informatics featured n participants with e…
/* 不要低头,不要放弃,不要气馁,不要慌张 题意: 给两行n个数,要求从第一行选取a个数,第二行选取b个数使得这些数加起来和最大. 限制条件是第一行选取了某个数的条件下,第二行不能选取对应位置的数. 思路: 比赛的时候一直在想如何dp.没有往网络流的方向多想想.赛后看到tag想了想,咦,费用流可做. 所以思路是最小费用最大流,dp如今都不知如何做. 将一个位置拆分成3个点,从超级源点分别到1号点连容量为a,价值为0 的边,往2号点连容量为b,价值为0的边. 对于每个位置,从1号点和2号点分别向…
第一行给出两个个数字k和n,第二三行分别有k个数字,求将第二.三行之间的数字相互组合,求最多有多少个组合的和不小于n 纯粹暴力 #include <iostream> #include <cstdio> #include <algorithm> #include <vector> using namespace std; int n,x; ],s2[]; int main() { scanf("%d%d",&n,&x);…
这套题目做完后,一定要反复的看! 代码经常出现的几个问题: 本机测试超时: 1.init函数忘记写. 2.addedge函数写成add函数. 3.边连错了. 代码TLE: 1.前向星边数组开小. 2.用了memset,慎用. 1. CodeForces 498C  Array and Operations 我发现cf上的网络流的建图思路都非常好,准备着重练习一下. 此题枚举每一个质因子,对每个质因子建图,确实是很好的思路. #include <bits/stdc++.h> using name…
A.Toda 2 思路:可以有二分来得到最后的数值,然后每次排序去掉最大的两个,或者3个(奇数时). /************************************************ *Author* : Ray(siludose) *Created Time* : 2016��10��24�� ����һ 15ʱ00��28�� **Problem** : /media/ray/708898B888987E72/Users/Administrator/Desktop/2016…
A. Toda 2 按题意模拟即可. #include <bits/stdc++.h> using namespace std ; typedef pair < int , int > pii ; #define clr( a , x ) memset ( a , x , sizeof a ) const int MAXN = 105 ; pii a[MAXN] ; int G[MAXN * MAXN][MAXN] ; int n , x ; void solve () { int…
1. CF730I Olympiad in Programming and Sports 大意: $n$个人, 第$i$个人编程能力$a_i$, 运动能力$b_i$, 要选出$p$个组成编程队, $s$个组成运动队, 每个队的收益为队员能力和, 求最大收益. 费用流做法很显然, 开两个点$X,Y$表示编程和运动, 源点向每个人连边, 代价为$0$, 每个人向$X$连边, 代价为编程能力, 每个人向$Y$连边, 代价为运动能力, $X$向汇点连边容量为$p$, $Y$向汇点连边, 容量为$s$,…
Tree Construction CodeForces - 675D During the programming classes Vasya was assigned a difficult problem. However, he doesn't know how to code and was unable to find the solution in the Internet, so he asks you to help. You are given a sequence a, c…
今天做了这两道题真的好高兴啊!!我一直知道自己很渣,又贪玩不像别人那样用功,又没有别人有天赋.所以感觉在ACM也没有学到什么东西,没有多少进步.但是今天的B题告诉我,进步虽然不明显,但是只要坚持努力的学习,改变就会默默发生啦~真的好高兴,感觉自己又有了动力!自己现在虽然还不会什么算法,都是三脚猫功夫,但是已经真切的感觉到自己已经会用一点算法的思想了,哎呀我也不知道怎么说好,总之就是看到了自己的改变. A - Array Time Limit:2000MS     Memory Limit:262…