博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
bzoj1044 [HAOI2008]木棍分割——前缀和优化DP
阅读量:5099 次
发布时间:2019-06-13

本文共 960 字,大约阅读时间需要 3 分钟。

题目:

咳咳...终于A了...

居然没注意到正着找pos是n方会TLE...所以要倒着找pos;

二分还写错了,改了半天...

小心前缀和取模后相减变成负数!!!!!!!!!

代码如下:

#include
#include
#include
using namespace std;int const maxn=50005,mod=10007;int n,m,a[maxn],s[maxn][3],f[maxn][3],ans,mn,sum,l,r,pos[maxn];bool pd(int x){ int s=0,cnt=0; for(int i=1;i<=n;i++) { if(s+a[i]>x) { cnt++; s=0; } s+=a[i]; } return cnt<=m;//m!! return 1;}void solve1(){ r=s[n][0]; int mid=(l+r)>>1; while (l<=r) { if (pd(mid)) mn=mid,r=mid-1; else l=mid+1; mid=(l+r)>>1; }}void solve2(){ for(int i=1;i<=n;i++) { if(s[i][0]<=mn)f[i][0]=1; else break; } for (int i=1;i<=n;i++) { if (s[i][0]<=mn) continue; for (int j=i-1;j>=0;j--) if (s[i][0]-s[j][0]>mn) {pos[i]=j+1;break;}// for(int j=0;j

 

转载于:https://www.cnblogs.com/Zinn/p/9146430.html

你可能感兴趣的文章
yii 跳转页面
查看>>
洛谷 1449——后缀表达式(线性数据结构)
查看>>
[最小割][Kruskal] Luogu P5039 最小生成树
查看>>
Data truncation: Out of range value for column 'Quality' at row 1
查看>>
Dirichlet分布深入理解
查看>>
(转)Android之发送短信的两种方式
查看>>
python第九天课程:遇到了金角大王
查看>>
字符串处理
查看>>
ECharts(Enterprise Charts 商业产品图表库)初识
查看>>
LeetCode Factorial Trailing Zeroes (阶乘后缀零)
查看>>
hdu 5402 Travelling Salesman Problem (技巧,未写完)
查看>>
[AIR] 获取U盘,打开U盘
查看>>
HtmlUnitDriver 网页内容动态抓取
查看>>
ad logon hour
查看>>
获得进程可执行文件的路径: GetModuleFileNameEx, GetProcessImageFileName, QueryFullProcessImageName...
查看>>
证件照(1寸2寸)拍摄处理知识汇总
查看>>
罗马数字与阿拉伯数字转换
查看>>
Eclipse 反编译之 JadClipse
查看>>
asp.net 获取IP地理位置的几个主要接口
查看>>
Python入门-函数
查看>>