济南学习D2T1__折纸带
他
【问题描述】
一张长度为n的纸带,我们可以从左至右编号为0 −n(纸带最左端标号为
0) 。现在有m次操作,每次将纸带沿着某个位置进行折叠,问所有操作之后纸带
的长度是多少。
【输入格式】
第一行两个数字n,m如题意所述。
接下来一行m个整数代表每次折叠的位置。
【输出格式】
一行一个整数代表答案。
【样例输入】
5 2
3 5
【样例输出】
2
【样例解释】
树上有只鸟。
【数据规模与约定】
60%的数据,n,m ≤ 3000。
对于100%的数据,n≤ 10 18 ,m ≤ 3000。
_____________________________________________________________________________
题意很简单,主要就是更改以后折的点,60分可以用并查集维护,100更简单,读入所有的折点,暴力更改m2.
做题中出了点小问题,CENA测试时,我用的lld,忘了这个版本用I64d,笨啊!!!!!!!!!
_____________________________________________________________________________
#include<cstdio>
#include<iostream>
#include<cstring> using namespace std;
long long n,m;
long long sz[];
long long l,r;
int main()
{
freopen("he.in","r",stdin);
freopen("he.out","w",stdout);
scanf("%I64d%I64d",&n,&m);
l=;r=n;
for(long long i=;i<m;i++)scanf("%I64d",sz+i);
for(long long i=;i<m;i++)
{
long long dn=sz[i];
if(r-dn>dn-l)
{
for(long long j=i+;j<m;j++)
{
if(sz[j]>=l&&sz[j]<dn)
{
sz[j]=dn-sz[j]+dn;
}
}
l=dn;
}
else
{
for(long long j=i+;j<m;j++)
{
if(sz[j]>dn&&sz[j]<=r)
{
sz[j]=dn-sz[j]+dn;
}
}
r=dn;
}
}
cout<<r-l<<endl;
fclose(stdin);
fclose(stdout);
return ;
}
济南学习D2T1__折纸带的更多相关文章
- Css--深入学习之折角效果
本文是作者从别的网站和文章学习了解的知识,简单做了个笔记,想要学习更多的可以参考这里:[css进阶]伪元素的妙用--单标签之美,奇思妙想 代码: /*建立一个带圆角的矩形,并使用线性渐变将其从左到底透 ...
- 2016.10.30 济南学习 Day2 下午 T1
他 [问题描述] 一张长度为N的纸带,我们可以从左至右编号为0 − N(纸带最左端标号为 0).现在有M次操作,每次将纸带沿着某个位置进行折叠,问所有操作之后纸带 的长度是多少. [输入格式] 第一行 ...
- 济南学习D3T1__线性筛和阶乘质因数分解
[问题描述] 从1− N中找一些数乘起来使得答案是一个完全平方数,求这个完全平方数最大可能是多少. [输入格式] 第一行一个数字N. [输出格式] 一行,一个整数代表答案对100000007取模之后的 ...
- 济南学习D2T2__数学分析题
[问题描述]有N个数,随机选择一段区间,如果这段区间的所有数的平均值在[l,r]中则你比较厉害.求你比较厉害的概率.[输入格式]第一行有三个数N,l,r,含义如上描述.接下来一行有N个数代表每一个数的 ...
- 济南学习 Day 5 T1 pm
欧拉函数(phi)题目描述: 已知(N),求phi(N). 输入说明: 正整数N. 输出说明: 输出phi(N). 样例输入: 8 样例输出: 4 数据范围: 对于20%的数据,N<=10^5 ...
- 济南学习 Day 4 T1 pm
幸运数字(number)Time Limit:1000ms Memory Limit:64MB题目描述LYK 最近运气很差,例如在 NOIP 初赛中仅仅考了 90 分,刚刚卡进复赛,于是它决定使用一些 ...
- 济南学习 Day 4 T2 am
LYK 与实验室(lab)Time Limit:5000ms Memory Limit:64MB题目描述LYK 在一幢大楼里,这幢大楼共有 n 层,LYK 初始时在第 a 层上.这幢大楼有一个秘密实验 ...
- 济南学习 Day 4 T1 am
完美的序列(sequence)Time Limit:1000ms Memory Limit:64MB题目描述LYK 认为一个完美的序列要满足这样的条件:对于任意两个位置上的数都不相同.然而并不是所有的 ...
- 济南学习 Day 3 T3 pm
仙人掌(cactus)Time Limit:1000ms Memory Limit:64MB题目描述LYK 在冲刺清华集训(THUSC) !于是它开始研究仙人掌,它想来和你一起分享它最近研究的结果. ...
随机推荐
- (MST) HDOJ 1102 Constructing Roads
怎么说呢 这题就是个模板题 但是 hud你妹夫啊说好的只有一组数据呢??? 嗯??? wa到家都不认识了好吗 #include <cstdio> #include <cstring& ...
- strcat函数的使用需要注意的问题
曾被这个函数困扰了好久,然后各种假设,验证:但是最后却发现这个函数并没有什么好讲的,原来的过错一切都源于忽略了“*dst去掉\0,然后加上*src,最后返回*dst”这句话的真正含义:给*dst分配的 ...
- MongoDB学习笔记四:索引
索引就是用来加速查询的.创建数据库索引就像确定如何组织书的索引一样.但是你的优势是知道今后做何种查询,以及哪些内容需要快速查找.比如:所有的查询都包括"date"键,那么很可能(至 ...
- CSS3实现背景颜色渐变
CSS3渐变色生成网站:http://gradients.glrzad.com/ 本文参考:前端设计之用CSS3做线性渐变效果http://webskys.com/css3/10.html 在CSS3 ...
- Python 100道题深入理解
# -*- coding: utf-8 -*-# 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?# 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所 ...
- python-RabbitMQ基础篇
一.RabbitMQ简单介绍 RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统.他遵循Mozilla Public License开源协议. MQ全称为Message Queue, ...
- php微信接口实例
<?php /** * wechat php test */ //define your token //定义TOKEN秘钥 define("TOKEN", "we ...
- C语言面试题
#include <stdio.h> int main() { ] = {, , , , }; ); // <==> (unsigned int)&a+sizeof(* ...
- (转)AVI文件格式解析+AVI文件解析工具
AVI文件解析工具下载地址:http://download.csdn.net/detail/zjq634359531/7556659 AVI(Audio Video Interleaved的缩写)是一 ...
- QT学习之路--创建一个对话框
Q_OBJECT:这是一个宏,凡是定义信号槽的类都必须声明这个宏. 函数tr()全名是QObject::tr(),被他处理过的字符串可以使用工具提取出来翻译成其他语言,也就是做国际化使用. 对于QT学 ...