UVA - 1025
时间:2019-10-26
本文章向大家介绍UVA - 1025,主要包括UVA - 1025使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
https://vjudge.net/problem/UVA-1025
#include<iostream> #include<cstdio> #include<algorithm> #define ri register int #define u int namespace opt { inline u in() { u x(0),f(1); char s=getchar(); while(s<'0'||s>'9') { if(s=='-') f=-1; s=getchar(); } while(s>='0'&&s<='9') { x=(x<<1)+(x<<3)+s-'0'; s=getchar(); } return x*f; } } using opt::in; #define NN 55 #include<cstring> namespace mainstay { u N,T,m1,m2,s[NN]; u can[NN][205][2],f[205][NN]; inline void solve() { for(ri cas(1);; ++cas) { std::memset(can,0,sizeof(can)); std::memset(s,0,sizeof(s)); if(!(N=in())) return;T=in(); for(ri i(2); i<=N; ++i) s[i]=s[i-1]+in(); m1=in(); for(ri k(1); k<=m1; ++k) { u _a(in()); for(ri i(1); i<=N; ++i) { if(_a+s[i]<=T) can[i][_a+s[i]][1]=1; } } m2=in(); for(ri k(1); k<=m2; ++k) { u _a(in()); for(ri i(1); i<=N; ++i) { if(_a+s[N]-s[i]<=T) can[i][_a+s[N]-s[i]][0]=1; } } std::memset(f,0x3f,sizeof(f)); f[0][1]=0; for(ri t(1); t<=T; ++t) { for(ri x(1); x<=N; ++x) { f[t][x]=f[t-1][x]+1; if(x^1&&can[x][t][1]&&t-(s[x]-s[x-1])>=0){ f[t][x]=std::min(f[t][x],f[t-(s[x]-s[x-1])][x-1]); } if(x^N&&can[x][t][0]&&t-(s[x+1]-s[x])>=0){ f[t][x]=std::min(f[t][x],f[t-(s[x+1]-s[x])][x+1]); } } } if(f[T][N]<0x3f3f3f3f) printf("Case Number %d: %d\n",cas,f[T][N]); else printf("Case Number %d: impossible\n",cas); } } } int main() { //freopen("subway.in","r",stdin); //freopen("subway.out","w",stdout); mainstay::solve(); }
原文地址:https://www.cnblogs.com/ling-zhi/p/11743222.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- AkShare-期货数据-COMEX库存数据
- ESP8266和ESP32配置(需使用ROS1和ROS2)
- SpringBoot+Gradle+ MyBatisPlus3.x搭建企业级的后台分离框架
- frp 内网穿透远程桌面(Windows 10)配置
- 你来讲讲AQS是什么吧?都是怎么用的?
- Angular单元测试里pipe的mock设计
- 亿级数据判断 bitmap-布隆过滤器
- centOS8 安装MySQL8(亲测)
- 聊一聊微信小程序包内容
- 全面分析 MySQL并发控制
- Flink History Server
- 几种定时任务(Timer、TimerTask、ScheduledFuture)的退出—结合真实案例【JAVA并发】
- gitlab内存消耗大,频繁出现502错误的解决办法
- Java基于POI实现excel任意多级联动下拉列表——支持从数据库查询出多级数据后直接生成【附源码】
- Elasticsearch 通过Scroll遍历索引,构造pandas dataframe 【Python多进程实现】