题目链接

题意:最开始可以选择任意位置,在一个坐标轴上,依次走到一个区间里面,可以选择走一步两步,求最小步数。

思路:贪心,刚开始合并区间,确定初始位置以及方向。往右走肯定到左端点,往左走先到右端点,判断下个区间的和下下个区间的方向是否一致,一致如果到是奇数,则当偶数处理位置,反之,仍然走到

端点上。wa了很多次,细节没注意好。

#include<iostream>
#include<algorithm>
#include<string>
#include<cstring>
#include<cstdio>
#include<cmath>
#include<map>
#include<queue>
#define ll long long
using namespace std;
const int N=;
int l[],r[];
int t,n;
struct Node
{
int a,b;
}e[];
int main()
{
scanf("%d",&t);
while(t--)
{
memset(l,,sizeof(l));
memset(r,,sizeof(r));
scanf("%d",&n);
for(int i=;i<n;i++)
{
scanf("%d%d",&e[i].a,&e[i].b);
}
int ans=;
l[]=e[].a;
r[]=e[].b;
int j=;
for(int i=;i<n;i++)
{
if(e[i].a>=r[j]||e[i].b<=l[j])
{
j++;
l[j]=e[i].a;
r[j]=e[i].b;
}
else if(e[i].a>l[j]&&e[i].b<r[j])
{
l[j]=e[i].a;
r[j]=e[i].b;
}
else if(e[i].a>l[j]&&e[i].b>r[j]&&e[i].a<r[j])
{
l[j]=e[i].a;
}
else if(e[i].a<l[j]&&e[i].b>l[j]&&e[i].b<r[j])
{
r[j]=e[i].b;
}
}
int s;
if(l[]>r[])
{
s=r[];
}
else
{
s=l[];
}
int tmp;
for(int i=;i<=j;i++)
{
if(r[i]<l[i-])
{
tmp=s-r[i];
s=r[i];
if(tmp%&&l[i]<s&&i+<=j&&r[i+]<l[i])
{
tmp++;
s--;
}
}
else if(l[i]>r[i-])
{
tmp=l[i]-s;
s=l[i];
if(tmp%&&r[i]>s&&i+<=j&&l[i+]>r[i])
{
tmp++;
s++;
}
}
if(tmp%)
ans+=tmp/+;
else
ans+=tmp/;
}
printf("%d\n",ans);
}
return ;
}

最新文章

  1. js代码中的闭包
  2. Android应用主界面底部菜单实现
  3. 使用SSIS创建同步数据库数据任务
  4. hdu 4582 树状DP
  5. innerHtml写法
  6. 《Spark大数据处理:技术、应用与性能优化》【PDF】
  7. C# DataTable抽取Distinct数据(不重复数据)
  8. CSS深入理解流体特性和BFC特性下多栏自适应布局
  9. [PHP]一些坑
  10. 使用 R 语言挖掘 QQ 群聊天记录
  11. GitHub学习一-本地电脑与GitHub绑定
  12. FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. com/mongodb/util/JSON
  13. VULKAN学习笔记-inter教学四篇
  14. 工作中遇到的一道SQL应用题
  15. Boatloader的工作流程
  16. linux根文件系统 /etc/resolv.conf 文件详解(转)
  17. ASP.NET Core - 初期准备
  18. KONG -- 配置 service 并添加 key-auth
  19. 用DD-WRT自建计费WiFi热点
  20. Centos5设置静态IP地址

热门文章

  1. R语言中的几种数据结构
  2. 基于Quartz.net 的任务调度平台Weiz.TaskManager
  3. java RMI 远程调用
  4. Android安全测试(一)数字签名检测
  5. layui中获取全部提交的数据
  6. 如何实现动态水球图 --》 echars结合echarts-liquidfill实现
  7. 高性能JavaScript模板引擎实现原理详解
  8. VirtualStringTree常用类和属性
  9. mybatis-plus&amp;springboot
  10. java SSM框架 代码生成器 快速开发平台 websocket即时通讯 shiro redis