摘要:
题目链接 题目解析 反悔贪心。 一个比较简单的思路是,以截止时间为第一关键字,利润为第二关键字排序,依次选取。 但这个显然是错的,因为可以不选某一个利润小的,腾出时间来给一个截止时间在后面但是利润大的。 于是考虑反悔,按照之前的贪心方式,对于一个工作,当然是能做就做,不能做就尝试能否踢掉前面做过的一 阅读全文
摘要:
题目链接 (是纪中的题,不过我已经没有纪中的号了,于是翻出了我的古早博客 题目解析 复习的时候又做了一遍,还是想了一会儿的,并且由衷地觉得这真是一道好题。 考虑$SG$函数递推。 由于每次操作只能动最后一行和最后一列,那么设$sg(i,j)\(表示以\)(i,j)$结尾的矩阵的$SG$函数值。 转移 阅读全文
摘要:
题目链接 题目解析 还是数位$dp$,不过是从后往前$dp$,方便算后缀。 然后它是是否存在一个后缀,我们$dp$到前面的时候不知道前面有没有,所以还要再加一维状态表示是否已经存在一个能整除的后缀。 注意细节,比如那个模数。 ►Code View #include<cstdio> #include< 阅读全文
摘要:
题目链接 题目解析 稍微有点难度的数位$dp$ 这道题的话,你发现前导零需要特判一下,不然你就会把前导零数到$0$的个数里面去。 然后就是状态定义的不同 这道题把计数$sum$也放在记忆化数组里面了,理由详见代码注释。 如果不好判断的话,在空间足够的的情况下 ,把$dfs$里面的参数全部记忆化总没错 阅读全文
摘要:
题目链接 题目解析 我怎么连数位dp都不会喏,降智了,写了1h 顺便用这道数位$dp$入门题复习一下数位dp吧 这道题是否统计答案和数位和模$D$的余数相关,所以可以定义$f[i][j][k]$表示余数为$i$,算到到第$j$位 前缀是否与$k$完全一致(用于判断这一位上限) 然后记忆化搜索转移就 阅读全文
摘要:
题目链接 题目解析 刚开始的思路:我先钦定好,给每行每列一个家$1$,其它随便选,一共$n!k^{(n^2-n)}$ 但是会有重复,考虑去重。我们还是先给每行每列一个家,但是后面那个不能随便选,我们枚举一些行,一些列,然后让它们随便选,剩下的不能随便选,发现这样也有重复,所以考虑容斥。 看了题解之后 阅读全文