Pipe Fitter and the Fierce Dogs

Pipe Fitter and the Fierce Dogs

[JAG Asia 2016]

理解题意之后,就是一个非常傻的DP

然后难在理解题意,理解非法状态

#include <bits/stdc++.h>

using namespace std;
const int maxn = 1e4+2;
int dp[maxn][3];
bool mp[maxn][maxn];
int main(){
    int w,h,k,n;
    scanf("%d%d%d%d",&w,&h,&k,&n);
    for(int i=1,u,v;i<=n;++i){
        scanf("%d%d",&u,&v);
        mp[v][u]=1;
    }
    int sp=(w+1)>>1;
    if(!(w&1)) --w;
    if(k<sp){
        puts("-1");
        return 0;
    }
    k-=sp;
    int all=sp*((h+1)/2-1);
    int ans=0;
    for(int i=3;i<=h;i+=2){
        dp[1][0]=0x3f3f3f3f;
        dp[1][1]=1+mp[i-1][1];
        dp[1][2]=1+mp[i-1][2];
        for(int j=3;j<=w;j+=2){
            dp[j][0]=dp[j-2][2]+mp[i-1][j-1]+1;
            dp[j][1]=min(dp[j-2][0],dp[j-2][1])+mp[i-1][j]+1;
            dp[j][2]=min(dp[j-2][0],dp[j-2][1])+mp[i-1][j+1]+1;
        };
        ans+=min(dp[w][0],dp[w][1])-sp;
    }
    if(ans>=k){
        ans-=k;
        all-=k;
        all+=ans;
        printf("%d\n",all);
    }else{
        all-=k;
        printf("%d\n",max(0,all));
    }
    return 0;
}

原文地址:https://www.cnblogs.com/smallocean/p/11518450.html

时间: 2024-08-30 18:16:01

Pipe Fitter and the Fierce Dogs的相关文章

式鞍关Templagenics.Digital.Pipe.Fitter.v1.9缠绕

式鞍关Templagenics.Digital.Pipe.Fitter.v1.9缠绕 现在,数字管道安装工包括节点关节用于桁架结构.使用此软件,您可以打印管切割模板的各种各样的关节.选择你想要的类型的关节,输入管大小和所需的尺寸,在你的打印机打印模板,模板缠绕管,切.那就是易于创建模板模式鞍关节,米高,王寅,抵消,分段等等.Invensys.SimSci-Esscor.DYNSIM.V5.2.1 动态模拟软件OLI Systems 2010(OLI Analyzer v3.1.3 + OLI S

弱校连萌 10.3

A.Best Matched Pair B.Help the Princess! C.We don't wanna work! D.Parentheses E.Similarity of Subtrees F.Escape from the Hell G.Share the Ruins Preservation H.Pipe Fitter and the Fierce Dogs I.Multisect J.Compressed Formula K.Non-redundant Drive

全功能试验SebecTec.IPTimelapse.v2.7.1005.0 1CD延时相机

全功能试验SebecTec.IPTimelapse.v2.7.1005.0 1CD延时相机 IPTimelapse上传jpeg图像安排和延时视频到你的网站.功能包括图像天气.标志.裁剪和日出/日落选 项.容易操作mulitple相机.IPTimelapse低带宽是它只读取jpeg快照而不是连续的视频.7天全功能试验 .选择你的相机选项下面的软件下载和购买选择.IPTimelapse连接到你的相机自动产生一个施工间隔拍摄 视频监控.网站推广.天气摄像头和安全.可以把任何IP相机变成一个延时相机.

转涡轮机械流综合仿真Numeca.Fine.Turbo.Design.v11.1.Win64.&amp;.Linux64 3DVD

转涡轮机械流综合仿真Numeca.Fine.Turbo.Design.v11.1.Win64.&.Linux64 3DVD NUMECA软件主要包括:流体动力学分析软件和设计优化软件两大类. 1.流体动力学分析软件包 分 析软件包有FINETM/TURBO和FINETM/HEXA等,其中均包括前处理,求解器和后处理三个部分.FINE/TURBO用 于内部和外部流动, FINE/HEXA也用于内部或外部流动,但为非结构自适应网格. FINETM/TURBO:可 用于任何可压或不可压.定常或非定常.

Fraunhofer SCAI MpCCI 4.3.1-2

Cadence ADW v16.50.014 Linux 1CD Cadence CONFRML v11.10.320 Linux 1CD Cadence EDI v11.11.001 Linux 2DVD Cadence ET v11.10.102 Linux 1DVD Cadence ETS v11.11.001 Linux 2DVD Cadence EXT v10.13.065 Linux 1CD Cadence MMSIM v11.10.445 Linux 5DVD Cadence ZY

TWI.CrackWIZE.v4.3.18509 断裂分析软件+CSI.PERFORM-3D

ATP-EMTP v11.4 1CD BETA CAE Systems v15.3.0 Win64 & Linux64 2DVD Intelligent Light FieldView v15 Win64 & Linux64 2CD JewelCAD.Pro.v2.2.3 1CD Mathworks Matlab R2015a MacOSX64-ISO 1DVD PointWise 17.3 R2 for Win32_64 & Linux64 MacOSX64 4CD PSCAD

Java NIO (五) 管道 (Pipe)

Java NIO 管道是2个线程之间的单向数据连接.Pipe有一个source通道和一个sink通道.数据会被写到sink通道,从source通道读取. 如下图: 向管道写数据: 从管道读数据: 1. 从读取管道的数据,需要访问source通道. 2. 调用source通道的read()方法来读取数据

linux下,pipe的容量的讨论与查看

1.pipe的容量 2.6标准版本的linux内核,pipe缓冲区是64KB,尽管命令ulimit -a看到管道大小8块,缓冲区的大小不是4 k,因为内核动态分配最大16"缓冲条目",乘64 k.这些限制是硬编码的 2.如何查看自己pc上的pipe多大 1)通过ulimit -a查看到 pipe size 一次原子写入为:512Bytes*8=4096Bytes 查看缓冲条目个数:cat /usr/src/kernels/3.10.0-327.el7.x86_64/include/li

Java-NIO(九):管道 (Pipe)

Java NIO 管道是2个线程之间的单向数据连接.Pipe有一个source通道和一个sink通道.数据会被写到sink通道,从source通道读取. 代码使用示例: 1 @Test 2 public void testPipe() throws IOException { 3 // 1.获取通道 4 Pipe pipe = Pipe.open(); 5 6 // 2.获取sink管道,用来传送数据 7 Pipe.SinkChannel sinkChannel = pipe.sink(); 8