<JZOJ5907>轻功
dp大水题
由于未知错误wa了一个点
乱改了一下就A了
瘫
#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
#define rint register int
#define INF 9999999999
using std::min;
template <class T>inline void read(T &X)
{
X=;int W=;char ch=;
while(!isdigit(ch))W|=ch=='-',ch=getchar();
while(isdigit(ch))X=(X<<)+(X<<)+(ch^),ch=getchar();
X=W?-X:X;return;
}
int n,K,W,Q,a[],v[],mark[][]={},mk[]={};
long long dp[][],ans(INF);
bool boo=false;
void init()
{
read(n),read(K),read(W);
a[]=,v[]=;
for(rint i=;i<=K;++i)
{
read(a[i]),read(v[i]);
if(v[i]==)boo=true;
}
read(Q);
int x,k;
for(rint i=;i<=Q;++i)
read(x),read(k),mark[x][k]=,mk[k]=;
if(boo){printf("0\n");return;} for(rint i=;i<=n;++i)
for(rint j=;j<=K;++j)
dp[i][j]=INF;
for(rint j=;j<=K;++j)dp[][j]=;
}
int main()
{
// freopen("qinggong.in","r",stdin);
// freopen("qinggong.out","w",stdout);
init();
if(boo)return ;
for(rint i=;i<=n;++i)
{
for(rint j=;j<=K;++j)
{
if(a[j]>i)continue;
bool boo(false);
for(rint k=i-a[j];k<=i;++k)
{
if(!Q||!mk[j])break;
if(mark[k][j]){boo=true;break;}
}
if(boo)continue; for(rint lastj=;lastj<=K;++lastj)
{
if(i<a[j]+a[lastj])continue;
bool boo1(false);
for(rint k=i-a[j]-a[lastj];k<=i-a[j];++k)
{
if(k==)continue;
if(!Q||!mk[lastj])break;
if(mark[k][lastj]){boo1=true;break;}
}
if(boo1)continue; dp[i][j]=min(dp[i][j],dp[i-a[j]][j]+v[j]);
dp[i][j]=min(dp[i][j],dp[i-a[j]][lastj]+v[j]+W);
}
}
} for(rint j=;j<=K;++j)
ans=min(ans,dp[n][j]);
if(ans==INF)ans=-;
printf("%lld\n",ans);
return ;
}
<JZOJ5907>轻功的更多相关文章
- Bzoj3041 水叮当的舞步
Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 132 Solved: 75 Description 水叮当得到了一块五颜六色的格子形地毯作为生日礼物 ...
- 11.12模拟考T2(GCD)
2.梅花桩 (blossom.pas/c/cpp) [问题描述] 小x在练习一门轻功,这门轻功是在梅花桩上跳来跳去,这门轻功是严格按照直线从一个梅花桩直接跳到另外一个梅花桩上.因为小x有恐高症,所 ...
- 推些C语言与算法书籍
c语言系统学习与进阶: 1. C primer plus C primer plus 作为一本被人推崇备至的 c 入门经典,C primer plus 绝非浪得虚名.应该 算得上 C 教材里最好的入门 ...
- 从零开始写一个武侠冒险游戏-7-用GPU提升性能(2)
从零开始写一个武侠冒险游戏-7-用GPU提升性能(2) ----把地图处理放在GPU上 作者:FreeBlues 修订记录 2016.06.21 初稿完成. 2016.08.06 增加对 XCode ...
- 【wikioi】2495 水叮当的舞步(IDA*)
http://wikioi.com/problem/2495/ 这题我还是看题解啊囧.(搜索实在太弱.完全没想到A*,还有看题的时候想错了,.,- -) 好吧,估价还是那么的简单,判断颜色不同的数目即 ...
- Swift语言实战晋级-第9章 游戏实战-跑酷熊猫-1
学习目标 一.进一步学习Swift的游戏制作 二.掌握SKNode,SKSpriteNode的运用 三.了解SpriteKit的物理系统 四.掌握动作(SKAction)的运用 在这一章,我们要通过制 ...
- 【P1326】超级教主
DP优化 原题: LHX教主很能跳,因为Orz他的人太多了.教主跳需要消耗能量,每跳1米就会消耗1点能量,如果教主有很多能量就能跳很高.教主为了收集能量,来到了一个神秘的地方,这个地方凡人是进不来的. ...
- 【IDA*】codevs 2495:水叮当的舞步
2495 水叮当的舞步 题目描述 Description 水叮当得到了一块五颜六色的格子形地毯作为生日礼物,更加特别的是,地毯上格子的颜色还能随着踩踏而改变. 为了讨好她的偶像虹猫,水叮当决定在地毯上 ...
- web之困:现代web应用安全指南
<web之困:现代web应用安全指南>在web安全领域有“圣经”的美誉,在世界范围内被安全工作者和web从业人员广为称道,由来自google chrome浏览器团队的世界顶级黑客.国际一流 ...
随机推荐
- ZJNU 1164 - 考试排名——中级
1.如果一个单元为0,表示没做过这题,不计入成绩 2.如果一个单位为负数,表示做错了这题,不计入成绩 所以只要一个单元为正数(不论是否有括号)都说明做出了这一题,计入成绩 将名字和成绩都当作字符串读入 ...
- Vue 项目中应用
Vue使用 一.vue生命周期 # main.js import Vue from 'vue' import App from './App.vue' import router from './ro ...
- 一种循环buffer结构
最新数据循环在buffer[H] -> buffer[L] 放置,记录最新放置Index,对外接口获取数据时,进行两次数据拷贝,Index-H ,index-L 拷贝到数组里
- PyTorch基础——词向量(Word Vector)技术
一.介绍 内容 将接触现代 NLP 技术的基础:词向量技术. 第一个是构建一个简单的 N-Gram 语言模型,它可以根据 N 个历史词汇预测下一个单词,从而得到每一个单词的向量表示. 第二个将接触到现 ...
- java静态方法和静态字段
public class Dog{ public static void main(String[]args){ A a= new A(); a.add(); //java实例对象可以访问类的静态方法 ...
- 郑宇以城市计算研究膺选 MIT 科技创新35俊杰 (TR35)
MIT 科技创新35俊杰 (TR35)"> 编者按:<MIT Technology Review>于8月22日发布了令人瞩目的2013年全球杰出青年创新者(MIT TR35 ...
- Django实现注册,往邮箱发送验证链接
由于最近要做个平台,在GitHub上下载了一个系统框架,想着为了安全,实现注册时往一个邮箱发送注册信息,由管理员来确认是否同意其注册. 感谢博主:https://blog.csdn.net/geek_ ...
- 《C程序设计语言》练习 1-12
#include<stdio.h> /*编写一个程序,以每行一个单词的形式打印其输入*/ main() { int c; c=getchar(); while(c!=EOF) { if ( ...
- 基于STC89C516的多游戏实现
所用器件:STC89C516,矩阵键盘,LCD1602,16*16点阵,74HC595,无源蜂鸣器,晶振为11.0592MHZ 使用说明: 开机(复位)进入启动界面,1602显示Welcome.500 ...
- 因为AI,所以爱
作为技术驱动型公司 自我颠覆的核心就是技术上有所突破 2019技术奇点大会上,创始人行在提出 「未来,大数据和人工智能 将成为商业升级的智能发动机」 这与我们的使命不谋而合 时间退回到2016年的冬天 ...