博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU 6140 Hybrid Crystals
阅读量:4921 次
发布时间:2019-06-11

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

题意:这个题其实是题意很麻烦,这个题目上有很长的等式,这个等式我们仔细观察我们可以发现,这其实是由3部分组成的,每一部分是关于N,L,和D的,我们可以拆成三个等式看,代表的意思就是,每次加入的新区间的长度,都小于之前区间的长度,但是题目中指出,我们的第一个数是唯一的,所以我们可以的到一个-1,0,1的区间(0是代表第一个数不选的意思,所以就得到了0)这样我们每次扩展的都比之前所拥有的的区间长度小, 所以我们只用记录最小值和最大值就可以了

代码;

#include 
using namespace std;const int maxn=3005;int a[maxn];char ch[maxn];int main(){ int T; scanf("%d",&T); while(T--){ int n,k; scanf("%d%d",&n,&k); int l=-1,r=1; for(int i=1;i<=n;i++)scanf("%d",&a[i]); for(int i=1;i<=n;i++)cin>>ch[i]; for(int i=2;i<=n;i++){ if(ch[i]=='N'){ l-=a[i];r+=a[i]; } else if(ch[i]=='L'){ r+=a[i]; } else{ l-=a[i]; } } if(l<=k&&k<=r){ puts("yes"); } else{ puts("no"); } } return 0;}

 

转载于:https://www.cnblogs.com/lalalatianlalu/p/9256872.html

你可能感兴趣的文章
需求评审
查看>>
Calculate the distance between two lines in 3D space
查看>>
观察者模式(发布-订阅模式)
查看>>
HDU 1069 Monkey and Banana(DP)
查看>>
HDU 2577 How to Type(杭电300题纪念)
查看>>
CS224n学习笔记(二)
查看>>
pymysql模块
查看>>
面向对象chapter7
查看>>
关于gcc、glibc和binutils模块之间的关系
查看>>
NB的新技术
查看>>
让vim能完成代码提示~~
查看>>
【Android】java.lang.StackOverflowError: stack size 8MB
查看>>
12 个 CSS 高级技巧汇总
查看>>
Node.js 系列01
查看>>
源码下编译APK,却是总是提示,找不到符号:SystemProperties 。。。
查看>>
Apache Jmeter(1)
查看>>
Lattice Planner规划算法
查看>>
JS基础--问题记录
查看>>
简易代码生成器
查看>>
Spring对HibernateSession的管理之封装SessionFactory
查看>>