摘要: #include #include #include #include #include #include #include #include #include #include #include #include #include #define mkp make_pair using namespace std; const double EPS=1e-8; typ... 阅读全文
posted @ 2018-10-21 21:03 degvx 阅读(144) 评论(0) 推荐(0)
摘要: 就是背包,用O(n*m)的一维。 阅读全文
posted @ 2018-10-21 20:23 degvx 阅读(126) 评论(0) 推荐(0)
摘要: 搜索,最后判断一下是否结果为0就行。 阅读全文
posted @ 2018-10-21 19:57 degvx 阅读(100) 评论(0) 推荐(0)
摘要: 用dp[i][j]记录i个点,组成深度恰好为j的方案数。arr[i][j]记录i个点,深度<=j的方案数。那么dp[i][j]只有i为奇数时不为0。而arr[i][j]等于dp[i][j]的前缀和(i相同时)。而dp[i][j],i为奇数有值,等于左子树分奇数个,右子树分奇数个的所有情况,并且左子 阅读全文
posted @ 2018-10-21 15:34 degvx 阅读(117) 评论(0) 推荐(0)
摘要: 原本就想到dp,可是是我的思路是在串的各个位置都遍历一次set,看dp[i-st[k]]是否为1且前length(st[k])是st[k]。这样200000*200*10会超时。更好的办法是在i位取前len<=10个看dp[]和set中是否存在。只要200000*55*log200。 阅读全文
posted @ 2018-10-21 11:16 degvx 阅读(101) 评论(0) 推荐(0)
摘要: 就是模拟。同一个开关按2下相当于没按,那么,如果一共按0下,就是没按,按1下就是4个开关的1个,按2下可能相当于实际按了0下或按2下,按3下实际按了1下或3下,之后如果是奇数,相当于按1或3下,偶数相当于按0,2,4下。再看一下是否符合。数据太小根本不会超时。 阅读全文
posted @ 2018-10-21 09:41 degvx 阅读(162) 评论(0) 推荐(0)