摘要:
【BZOJ1802】[AHOI2009]checker(动态规划) 题面 "BZOJ" "洛谷" 题解 首先自己观察一波,发现如果有相邻两个格子都是红色的话,那么显然可以在任意位置都存在一个跳棋。可以让两个位置反复互相跳就好了。这样子第一问的答案显然就是$0$,否则的话第一问的答案就是偶数位置上$0 阅读全文
摘要:
【BZOJ1876】[SDOI2009]SuperGCD(数论,高精度) 题面 "BZOJ" "洛谷" 题解 那些说数论只会$gcd$的人呢?我现在连$gcd$都不会,谁来教教我啊? 显然$gcd$除了辗转相除之外还可以辗转相减,然而辗转相减对于这题而言显然还不够优秀。 我们这样子来做。 如果当前$ 阅读全文
摘要:
【BZOJ1800】[AHOI2009]飞行棋(暴力) 题面 "BZOJ" "洛谷" 题解 预处理一下前缀和就可以$O(1)$计算两点间的距离了,直接$O(n^4)$暴力枚举即可。 cpp include include using namespace std; int n,s[50],ans; i 阅读全文
摘要:
【BZOJ1799】[AHOI2009]同类分布(动态规划) 题面 "BZOJ" "洛谷" 题解 很容易想到数位$dp$,然而数字和整除原数似乎不好记录。没关系,直接枚举数字和就好了,这样子就可以把整除原数的余数直接记下来,然后就很好写了。 cpp include include include i 阅读全文
摘要:
【BZOJ1797】[AHOI2009]最小割(网络流) 题面 "BZOJ" "洛谷" 题解 最小割的判定问题,这里就当做记结论吧。(源自$lun$的课件) 我们先跑一遍最小割,求出残量网络。然后把所有还有流量的边拿出来跑$Tarjan$缩$SCC$。 如果一条满流边的两个端点不在同一个$SCC$中 阅读全文
摘要:
【BZOJ2257】[JSOI2009]瓶子和燃料(数论) 题面 "BZOJ" "洛谷" 题解 很明显就是从$n$个数里面选$K$个数让他们的$gcd$最大。 暴力找所有数的因数,拿个什么东西存一下就好了。 阅读全文
摘要:
【BZOJ1560】[JSOI2009]火星藏宝图(贪心,动态规划) 题面 "BZOJ" "洛谷" 题解 既然所有的位置的权值都大于$0$,那么就可以直接贪心,按照行为第一关键字,列为第二关键字,来转移。显然如果一个点可以从某一列的一些位置转移过来,那么显然从行最大的那个位置转移过来是最优的,这个随 阅读全文