bzoj5311: 贞鱼
还是年轻啊算的时候少乘一个4000被卡二分上界了。。。%%%%bright教我超级快速读D飞bzoj垃圾卡常数据
我们容易写出这样的DP方程:f[i][j]=f[k][j-1]+val(k+1,j)
然后可以发现g(j)是单调减而且是下凸的
那么我们就可以愉快的上wqs二分了
那么f[i]就表示无限分最优解,就有f[i]=f[j]+val(j+1,i)+C
而这个明显是四边形不等式优化的形式
O(nlognlogw)踩了
#include<cstdio>
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<cmath>
using namespace std;
typedef long long LL; const int MAXSIZE=<<;
char buf[MAXSIZE],*p1=buf,*p2=buf;
#define gc p1==p2&&(p2=(p1=buf)+fread(buf,1,MAXSIZE,stdin),p1==p2)?EOF:*p1++
int read()
{
int x=,f=;char ch=gc;
while(ch<''||ch>''){if(ch=='-')f=-;ch=gc;}
while(ch>=''&&ch<=''){x=x*+ch-'';ch=gc;}
return x*f;
} int n,s[][];
int val(int j,int i){return (s[i][i]-s[i][j]-s[j][i]+s[j][j])/;}
struct node
{
int l,r,id;
node(){}
node(int L,int R,int ID){l=L;r=R;id=ID;}
}q[];int f[],g[];
void check(int C)
{
int h=,t=;q[++t]=node(,n,);
f[]=;g[]=;
for(int i=;i<=n;i++)
{
if(q[h].r<i)h++;
q[h].l=i;
f[i]=f[q[h].id]+val(q[h].id,i)+C;
g[i]=g[q[h].id]+; if(h>t||f[i]+val(i,n)<=f[q[t].id]+val(q[t].id,n))
{
while(h<=t&&f[i]+val(i,q[t].l)<=f[q[t].id]+val(q[t].id,q[t].l))t--;
if(h>t)q[++t]=node(,n,i);
else
{
int l=q[t].l,r=q[t].r,ans;
while(l<=r)
{
int mid=(l+r)/;
if(f[i]+val(i,mid)>f[q[t].id]+val(q[t].id,mid))
{
ans=mid;
l=mid+;
}
else r=mid-;
}
q[t].r=ans;
q[++t]=node(ans+,n,i);
}
}
}
}
int main()
{
freopen("a.in","r",stdin);
freopen("a.out","w",stdout);
int K;
n=read(),K=read();
for(int i=;i<=n;i++)
for(int j=;j<=n;j++)
{
s[i][j]=read();
s[i][j]+=s[i-][j]+s[i][j-]-s[i-][j-];
} int l=,r=(<<)-,ans;
while(l<=r)
{
int mid=(l+r)/;
check(mid);
if(g[n]>=K)
{
ans=f[n]-K*mid;
l=mid+;
}
else r=mid-;
}
printf("%d\n",ans);
return ;
}
bzoj5311: 贞鱼的更多相关文章
- BZOJ5311 贞鱼(动态规划+wqs二分+决策单调性)
大胆猜想答案随k变化是凸函数,且有决策单调性即可.去粘了份fread快读板子才过. #include<iostream> #include<cstdio> #include&l ...
- [CF321E]Ciel and Gondolas&&[BZOJ5311]贞鱼
codeforces bzoj description 有\(n\)个人要坐\(k\)辆车.如果第\(i\)个人和第\(j\)个人同坐一辆车,就会产生\(w_{i,j}\)的代价. 求最小化代价.\( ...
- 【BZOJ5311/CF321E】贞鱼/Ciel and Gondolas(动态规划,凸优化,决策单调性)
[BZOJ5311/CF321E]贞鱼/Ciel and Gondolas(动态规划,凸优化,决策单调性) 题面 BZOJ CF 洛谷 辣鸡BZOJ卡常数!!!!!! 辣鸡BZOJ卡常数!!!!!! ...
- BZOJ5311,CF321E 贞鱼
题意 Problem 5311. -- 贞鱼 5311: 贞鱼 Time Limit: 3 Sec Memory Limit: 162 MBSubmit: 677 Solved: 150[Subm ...
- ROJ 1166 超级贞鱼
1166: 超级贞鱼 Time Limit: 1 Sec Memory Limit: 128 MB [Submit][Status] 传送门 Description 马达加斯加贞鱼是一种神奇的双脚贞 ...
- 【Codeforces 321E / BZOJ 5311】【DP凸优化】【单调队列】贞鱼
目录 题意: 输入格式 输出格式 思路: DP凸优化的部分 单调队列转移的部分 坑点 代码 题意: 有n条超级大佬贞鱼站成一行,现在你需要使用恰好k辆车把它们全都运走.要求每辆车上的贞鱼在序列中都是连 ...
- bzoj 4769: 超级贞鱼 -- 归并排序
4769: 超级贞鱼 Time Limit: 1 Sec Memory Limit: 128 MB Description 马达加斯加贞鱼是一种神奇的双脚贞鱼,它们把自己的智慧写在脚上——每只贞鱼的 ...
- 【BZOJ4769】超级贞鱼 归并排序求逆序对
[BZOJ4769]超级贞鱼 Description 马达加斯加贞鱼是一种神奇的双脚贞鱼,它们把自己的智慧写在脚上——每只贞鱼的左脚和右脚上各有一个数.有一天,K只贞鱼兴致来潮,排成一列,从左到右第i ...
- 贞鱼传教&&贞鱼传教(数据加强版)
http://acm.buaa.edu.cn/problem/1381/ 贞鱼传教[问题描述] 新的一年到来了,贞鱼哥决定到世界各地传授“贞教”,他想让“贞教”在2016年成为世界第四大宗教.说干就干 ...
随机推荐
- Python学习笔记(2)——Python的函数、模块、包和库
Table of Contents 1. 函数. 2. 模块. 3. 包(package) 4. 库(library) 初识Python,对于没有接触过编程的我,恐怕只能听懂什么是函数,这里介绍一下几 ...
- 全国高校绿色计算大赛 预赛第三阶段(Python)(随机数)
只提交了随机数 (真心不会 T-T ) import csv import random import pandas as pd import numpy as np # 预测结果文件:src/ste ...
- [Luogu] P4460 [CQOI2018]解锁屏幕
题目背景 使用过Android 手机的同学一定对手势解锁屏幕不陌生.Android 的解锁屏幕由3X3 个点组成,手指在屏幕上画一条线,将其中一些点连接起来,即可构成一个解锁图案.如下面三个例子所示: ...
- python爬虫入门02:教你通过 Fiddler 进行手机抓包
哟~哟~哟~ hi起来 everybody 今天要说说怎么在我们的手机抓包 通过 python爬虫入门01:教你在Chrome浏览器轻松抓包 我们知道了 HTTP 的请求方式 以及在 Chrome 中 ...
- Python随笔day01
环境变量的配置: 配置Python的安装目录到path变量中,例如C:\Python37 标识符的命名规则: 变量名只能以数字,字母,下划线组成. 不能以数字开头,保留字不能被使用. 建议使用下划线分 ...
- i2c精简总结
基本的i2c的编程包括:读数据,写命令,写数据 有关i2c的时序需要的话查看这里http://blog.csdn.net/qqliyunpeng/article/details/41511347 1. ...
- topcoder SRM 639 div2
见这里 http://ygdtc.sinaapp.com/?p=257
- [K/3Cloud] 代码中设置某个字段必录
Control ctl = this.GetControl(fieldKey); FieldEditor editCtl = ctl as FieldEditor; if (editCtl != nu ...
- SharedPreferences保存用户偏好参数
package com.example.administrator.myapplication; import android.content.Context; import android.cont ...
- Less Time, More profit 最大权闭合子图(最大流最小割)
The city planners plan to build N plants in the city which has M shops. Each shop needs products fro ...