随笔分类 - (A)AtCoder
摘要:题意 https://vjudge.net/problem/AtCoder-2565 将一个H*W的矩形切成三份,每一次只能水平或者垂直切,问最大块的面积-最小快的面积 的最小值是多少。 思路 先枚举水平切第一块的高i,那么剩余部分h-i要么继续水平切、要么垂直切,因为要使最大快-最小快 最小,那么
阅读全文
摘要:题意 https://vjudge.net/problem/AtCoder-2282 告诉你sx,sy,tx,ty,问从s走到t,再从t走到s,再从s走到t,再从t回到s的最短路,每次只能上下左右选一个走1,除了s和t,其他点只能走一次。 思路 这是个沙雕构造题,我画出来了却没看出来。。太沙雕了。
阅读全文
摘要:题意 求n!的因子数%1e9+7。 思路 由唯一分解定理,一个数可以拆成素数幂之积,即2^a * 3^b *……,n!=2*3*……*n,所以计算每个素因子在这些数中出现的总次数(直接对2~n素因子分解即可),再用唯一分解定理公式,因子数=(a+1)*(b+1)*……。 代码 #include<bi
阅读全文
摘要:题意 https://vjudge.net/problem/AtCoder-2140 每次告诉你新的a:b,计算最后最小的a+b。 思路 如 3 2 3 1 1 3 2 先令a=2,b=3,发现新的为1:1,那么用a/1,b/1,发现b/1=3更大,所以要尽可能满足b(票数不能减少),所以就变成a=
阅读全文
摘要:题意 https://vjudge.net/problem/AtCoder-2037 选一些数使得和的平均值等于a,问方案数。 思路 设dp[i][j]为选i个数和为j的方案数,如果当前选了x,那么dp[j+1][w+x]+=dp[j][w]。 令dp[0][0]=1,注意倒序遍历j 代码 #inc
阅读全文