上一页 1 ··· 19 20 21 22 23 24 25 26 27 ··· 31 下一页
摘要: /* 开始没啥好的思路 暴力吧 T的太严重 加了k>n的特判 结果没数据…..然后又暴力生成了几组答案 打表 然而有没有数据 华丽的爆零了 正解 回溯+DP 回溯生成k数组 然后DP找最优解更新 */ #include #include #include using namespace std; int n,k,f[550],a[55],ans[55],Ans; void Judge()/... 阅读全文
posted @ 2016-06-07 20:05 一入OI深似海 阅读(238) 评论(1) 推荐(0) 编辑
摘要: /* 下标字典序最小 */ #include #include #include #define maxn 10010 using namespace std; int n,a[maxn],f[maxn],pre[maxn],len=1,k=1,ans[maxn],size; int main() { //freopen("maxxl.in","r",stdin); //fre... 阅读全文
posted @ 2016-06-06 11:33 一入OI深似海 阅读(491) 评论(4) 推荐(1) 编辑
摘要: /* 要求每个最优 即累加前k优解 注意不用去重 */ #include #include #include #define maxn 210 #define maxm 5010 #define maxk 60 using namespace std; int n,m,k,w[maxn],v[maxn],f[maxm][maxk]; int x[maxk],y[maxk],a,b,z,ans;... 阅读全文
posted @ 2016-06-06 08:44 一入OI深似海 阅读(136) 评论(0) 推荐(0) 编辑
摘要: /* 01背包第k优解问题 f[i][j][k] 前i个物品体积为j的第k优解 对于每次的ij状态 记下之前的两种状态 i-1 j-w[i] (选i) i-1 j (不选i) 分别k个 然后归并排序并且去重生成ij状态的前k优解 */ #include #include #include #define maxn 1010 using namespace std; int T,n,m,k,c... 阅读全文
posted @ 2016-06-06 08:43 一入OI深似海 阅读(259) 评论(0) 推荐(1) 编辑
摘要: /* 95 最后一个点T了 qian lv ji qiong 了 没学过树剖 听chx听xzc说的神奇的方法 Orz 首先求出每个计划的路径长度 这里写的倍增 然后二分答案 对于每个ans 统计>他的路径条数 tot 并维护最大差值 dec 并且对于每条不合法的路径维护每个点的经过次数 然后枚举点 如果经过次数==tot说明每一条不合法的都经过他 然后尝试把它建成虫洞 如果他对应边的权值>... 阅读全文
posted @ 2016-06-04 20:43 一入OI深似海 阅读(2189) 评论(3) 推荐(0) 编辑
摘要: /* 维护区间最小值 数据不超int 相反如果long long的话会有一组数据超时 无视掉 ll int */ #include #include #include #define maxn 1000010 #define ll int #define inf 0x7fffffff using namespace std; ll n,m,num,a[maxn],falg; struct n... 阅读全文
posted @ 2016-06-04 15:01 一入OI深似海 阅读(312) 评论(0) 推荐(0) 编辑
摘要: /* 再来个题练练手 scanf longlong 有bug....... */ #include #include #include #define ll long long using namespace std; ll n,m,x,y,x0,g; ll f[3][3],a[3][3]; ll slow_mul(ll a,ll b,ll c) { ll ans=0; ... 阅读全文
posted @ 2016-06-02 20:50 一入OI深似海 阅读(197) 评论(0) 推荐(0) 编辑
摘要: /* 裸地矩阵乘法 矩阵很好想的 1 1 0 0 0 1 1 0 0 */ #include #include #include #define mod 1000000007 #define ll long long using namespace std; int T,n; ll f[4][4],a[4][4]; void mul(ll a[4][4],ll b[4][4]) { ... 阅读全文
posted @ 2016-06-02 20:13 一入OI深似海 阅读(222) 评论(0) 推荐(0) 编辑
摘要: /* 数字可以重复 显然想要最优的话是没有1的 我们列举几个看看规律 5-> 2*3 6-> 3*3 7-> 2*2*3 8-> 2*3*3 9-> 3*3*3 10的话我们分解成2个5 也就是2*2*3*3 也就是说若ai>=5我们就分成x*2+y*3 若ai==4我们就分成2*2 剩下的就不用分了 这样的话我们就把n分成了 x*2+y*3 且3越多... 阅读全文
posted @ 2016-06-02 16:37 一入OI深似海 阅读(202) 评论(0) 推荐(1) 编辑
摘要: /* 数字不重复 将一个正整数分解成若干的整数的和 数字不重复 且数字不相同 保证不重复的话 贪心策略是从2开始分 然后把最后剩下的数均匀分到后面 证明嘛 这里写的可能不是很严谨 对于一个n 如果我们先分解成了两个a1 a2 我们设 x为a2-a1 若x>=3显然我们把x拿出来 即变成 x a1 a2-x 这样会更优 然后我们要保证不重复 从2开始拆 每次+1 把剩下的给后面的每个+1 ... 阅读全文
posted @ 2016-06-01 22:00 一入OI深似海 阅读(207) 评论(0) 推荐(0) 编辑
上一页 1 ··· 19 20 21 22 23 24 25 26 27 ··· 31 下一页