摘要: Problem Solution T1. T2. f[i][j]表示原串使用了前i个字符,添加了j个字符后的总代价。 同时记录上一次使用的决策是哪一个。 复杂度是O((n+k)*k)。 #include<bits/stdc++.h> using namespace std; const int N= 阅读全文
posted @ 2019-09-25 20:26 jian_song 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 不同时间复杂度的数据范围 O(n)的算法数据范围n < 1e8。O(n *logn)的算法数据范围n <= 1e6。O(n*sqrt(n) )的算法数据范围n < 1e5。O(n^2)的算法数据范围n<5000。O(n^3)的算法数据范围n <300。O(2^n)的算法数据范围n < 25。O(n! 阅读全文
posted @ 2019-09-24 21:27 jian_song 阅读(360) 评论(0) 推荐(0) 编辑
摘要: 多维动态规划 P1508 Likecloud-吃、吃、吃 因为每行状态只影响下一行,故可以直接更改a。注意不能只选眼前三个选项中最大的,整个路线都要考虑,所以每个位置都要dp。敲代码之前反复学习题面&样例的重要性。 #include <iostream> using namespace std; i 阅读全文
posted @ 2019-09-23 21:51 jian_song 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 【P1372】又是毕业季I 这k个数就是x,x*2,...,x*k,所以符合条件的x即为答案,x*k<=n,x<=n/k,因此答案即n/k。 #include<bits/stdc++.h> using namespace std; int n,k; int main(){ scanf("%d%d", 阅读全文
posted @ 2019-09-22 16:19 jian_song 阅读(137) 评论(0) 推荐(0) 编辑