这道题的巧妙之处在于建图的巧妙,我们可以把每条权值都扩大一个倍数,如扩大K倍,K>n,n为公司的数量。这样最后算出的总权值/K即为实际的总权值。然后对题目中给出的匹配的每条边都加1,即在选择原来边的时候有优势,这样在用KM算法时,就会避免本来不需要改变的匹配被改变。即使是最优匹配为原匹配,最后求的结果为x*K+n,x为实际的总的匹配,因为K>n,所以用结果/K,取整,还是x,1.85合击传奇,即为实际的总的最优匹配,传奇私服客户端下载。求需要改变匹配的数量时,只需用n-求的结果%K即可。
http://poj.org/problem?id=1595加深理解下面求素数的方法素数筛法是这样的: 1.开一个大的bool型数组prime[],大小就是n+1就可以了.先把所有的下标为奇数的标为true,下标为偶数的标为false. 2.然后: for(i=3;i 3.最后输出bool数组中的值为true的单元的下标,就是所求的n以内的素数了。 原理很简单,就是当i是质(素)数的时候,i的所有的倍数必然是合数。如果i已经被判断不是质数了,那么再找到i后面的质数来把这...