题目链接:http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=2245

Time Limit: 500 MS Memory Limit: 50000 K
Total Submit: 129(38 users) Total Accepted: 66(34 users) Rating: Special Judge: No
Description

如图所看到的。Zoidtrip是一个休闲向小游戏……

玩家须要操纵一个以斜向下四十五度速度v不停前进的三角胞,不停地避开水平障碍物,每次点击屏幕能够变换行进方向。[能够将斜向左(右)45°变换为斜向右(左)45°]

如今,有n层障碍物。第i层障碍物能够从横坐标l[i]~r[i]的范围内穿过去(包含l[i]与r[i]),第i层障碍物与第i-1层障碍物之间的距离为d[i]。

请问,假定在能够无限变换方向的条件下,最多能够前进至第几层?

我们规定玩家出生位置为第0层、横坐标为0的地方。

你能够在随意实数时刻进行方向变换。

Input
多组測试数据。

每组測试数据第一行为两个正整数 n和v。

接下来n行,每行3个整数l[i] , r[i] , d[i]。

( N <= 2000000。0 <= 全部数据 < 2^31 )
Output
对于每组数据。输出一行,包括一个整数,代表最多前进至的层数。
Sample Input
3 7

1 3 1

4 10 5

8 10 1

4 1

1 1 1

2 5 10

1 1 1

3 5 2
Sample Output
2

4
Hint

“第i层障碍物与第i-1层障碍物之间的距离为d[i]”

因此d[1]是第一层和第零层的距离。

例子1解释例如以下:

我们能够出生位置向右下移动至第一层坐标为1的地方。

接下来能够继续一直向右下移动至第二层坐标为6的地方。

但不管怎样也无法移动至第三层的8~10之间。

例子2说明例如以下:

(0,0)->(1,1)->(2,2)->(3,1)->(4,3)

因此到达第四层。

Source
哈尔滨理工大学第五届ACM程序设计竞赛

PS:

把 三角胞在每一层能走到的且满足能避开障碍物的最左和最右的距离找出来!

代码例如以下:

#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;
#define LL long long
#define maxn 2000047
LL l[maxn], r[maxn], d[maxn]; int main()
{
LL n, v;
while(scanf("%lld%lld",&n,&v)!=EOF)
{
LL L = 0,R = 0;
int ans = 0;
for(int i=0; i<n; i++)
{
scanf("%lld%lld%lld",&l[i],&r[i],&d[i]);
}
for(int i = 0; i < n; i++)
{
if(l[i] > r[i])
{
LL t = r[i];
r[i] = l[i];
l[i] = t;
}
L-=d[i];
R+=d[i];
L = max(l[i],L);
R = min(r[i],R);
if(L > R)
{
break;
}
ans++;
}
if(v == 0)
ans = 0;
printf("%d\n",ans);
}
return 0;
}

HOJ 2245 浮游三角胞(数学啊 )的更多相关文章

  1. Pythagorean Triples毕达哥斯拉三角(数学思维+构造)

    Description Katya studies in a fifth grade. Recently her class studied right triangles and the Pytha ...

  2. 牛客 136J-洋灰三角 +高中数学博大精深

    参考学习:http://www.cnblogs.com/l609929321/p/9500814.html 牛客 136J-洋灰三角 题意: 在一个1 * n的棋盘中,第一格放1,之后的每一个放前一个 ...

  3. 分享2D Unity游戏的动画制作经验

    作者:Alex Rose Unity近期宣布推出额外的2D游戏支持,加入了Box 2D物理和一个精灵管理器. 但这里还是有些技巧须要牢记在心.逐帧更改图像仅仅是动画制作的冰山一角,若要让你的游戏出色执 ...

  4. 【Java学习笔记之八】java二维数组及其多维数组的内存应用拓展延伸

    多维数组声明 数据类型[][] 数组名称; 数据类型[] 数组名称[]; 数据类型数组名称[][]; 以上三种语法在声明二维数组时的功能是等价的.同理,声明三维数组时需要三对中括号,中括号的位置可以在 ...

  5. Unity3D初学之2D动画制

    作者:Alex Rose Unity最近宣布推出额外的2D游戏支持,添加了Box 2D物理和一个精灵管理器. 但这里还是有些技巧需要牢记在心.逐帧更改图像只是动画制作的冰山一角,若要让你的游戏出色运行 ...

  6. python 玩具代码

    脚本语言的第一行,目的就是指出,你想要你的这个文件中的代码用什么可执行程序去运行它,就这么简单 #!/usr/bin/python是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python ...

  7. codeforces707C:Pythagorean Triples

    Description Katya studies in a fifth grade. Recently her class studied right triangles and the Pytha ...

  8. 【Java学习笔记之九】java二维数组及其多维数组的内存应用拓展延伸

    多维数组声明 数据类型[][] 数组名称; 数据类型[] 数组名称[]; 数据类型数组名称[][]; 以上三种语法在声明二维数组时的功能是等价的.同理,声明三维数组时需要三对中括号,中括号的位置可以在 ...

  9. NOIP提高真题整理(2011-2018)-标签

    加粗的后面应该会有相应的简单解析(如果没咕的话:)). 2011 day1 T1:铺地毯:逆着铺 T2:选择客栈:按颜色分类枚举+二分答案 T3:Mayan游戏:大模拟dfs+剪枝 day2 T1:计 ...

随机推荐

  1. PHP升级之后$SESSION丢失

    要在生产环境为一个内部系统升PHP版本,由5.3升成5.4.16 生成以后发现不能login,一路打断点过去,发现服务器端两个页面跳转的时候,取不到$SESSION 悲催的上网找解决方案,结果发现各种 ...

  2. ZOJ 3594 年份水题 【注意:没有0年】

    #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #i ...

  3. 常见Linux服务器操作系统版本中自带的OpenSSL版本

    下表是常见服务器操作系统版本中自带的OpenSSL版本: 从上表可以看出,目前常用的服务器版本中,默认OpenSSL为1.0.2的只有Ubuntu 16.04 LTS.其他版本如果要升级OpenSSL ...

  4. Struts2+Spring+Hibernate step by step 03 整合Spring之中的一个(在DAO层验证username和password)

    注:该系列文章部分内容来自王健老师编写SSH整合开发教程 目的:通过Spring创建数据库的连接,并通过Spring进行事务管理. 第一步:将Spring的包拷贝至当前项目的lib文件夹下,例如以下图 ...

  5. Android如何监听蓝牙耳机的按键事件

    写在前面: 直接想要代码很简单,你直接把滚动条拉到最底端就可以看到.如果想要十分地了解为什么,那就按照我规划的一步一步来理解.以下测试环境以手头上有的「Bluedio + 红米手机」. 1.蓝牙耳机的 ...

  6. UVA 11292 - The Dragon of Loowater (water)

    http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=sh ...

  7. 深入浅出 消息队列 ActiveMQ(转)

    一. 概述与介绍 ActiveMQ 是Apache出品,最流行的.功能强大的即时通讯和集成模式的开源服务器.ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provide ...

  8. 项目.c文件和.h文件关系

                "如有不正确之处,请指出,谢谢"       --Mood 对于一个项目,我们应该要很好的处理众多的.c和.h文件. 1.通过头文件调用库功能:#inclu ...

  9. java基础之&amp; 和 &amp;&amp; 的差别

    &和&&都能够用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,仅仅要有一方为false,则结果为false. ...

  10. PS大头照的背景

    给同事ps一个大头照,只是修改一下背景颜色,以前没有做过,这次算是小练习了一把,与大家分享一下.修改大头照背景重要的是如何选中背景的区域,如果用魔棒选择的话,头与背景的边处理的不好,说说我的处理方法吧 ...