http://codeforces.com/contest/1075/problem/C

题意:一个长宽均为1e9的棋盘,n个垂直障碍在x列无限长,m个水平障碍在第y行从第x1列到x2列。可以水平和垂直走。问从(1,1)走到(1e9,*)最少需要消除多少个障碍。

思路:只有遇到从1开始的水平障碍和一个垂直障碍相交时,棋子一定需要消除一个障碍,不从1开始的水平障碍都没有意义。只考虑第一个垂直障碍左边的情况,需要消除的障碍数时与第一个垂直障碍相交的水平障碍数。当选择消掉第一个垂直障碍时,可能会因为这一次消除而造成之前若干个水平障碍的消除是无用的。并且水平障碍的顺序可以任意,因而可以先升序排序,这样可以降低复杂度。所以,应该优先考虑消除垂直障碍。遍历从左开始消除垂直障碍的所有情况,取最小值。

    #include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std; const int N=;
const int M=; int main()
{
int n,m,cb[N],rb[N];
while(scanf("%d%d",&n,&m)!=EOF)
{
for(int i=; i<=n; i++)
scanf("%d",&cb[i]);
cb[n+]=M;
int cntrb=;
for(int i=; i<m; i++)
{
int x1,x2,y;
scanf("%d%d%d",&x1,&x2,&y);
if(x1==)
rb[cntrb++]=x2;
}
sort(cb,cb+n+);
sort(rb,rb+cntrb);
int ans=*N;
if((n==&&m==)||(cntrb==))
ans=;
int tj=;
for(int i=; i<=n+; i++)
{
for(int j=tj; j<cntrb; j++)
{
if(rb[j]>=cb[i])
{
int tmp=cntrb-j+i-;
ans=min(ans,tmp);
tj=j;
break;
}
if(j==cntrb-)
ans=min(ans,i-);
}
}
printf("%d\n",ans);
}
return ;
}

codeforces_1075_C. The Tower is Going Home的更多相关文章

  1. Tower是个不错的项目管理开放平台

    简单,易用,轻量级,挺多大项目都在用. 目前公司的项目也在使用,但是从高层到底下,随意惯了,最终没有用起来. 感觉适合年轻激情的创业公司团队来使用. 附上地址:https://tower.im/

  2. dwarf tower

    dwarf tower(dwarf.cpp/c/pas)[问题描述]Vasya在玩一个叫做"Dwarf Tower"的游戏,这个游戏中有n个不同的物品,它们的编号为1到n.现在Va ...

  3. HDU1329 Hanoi Tower Troubles Again!——S.B.S.

    Hanoi Tower Troubles Again! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (J ...

  4. ZOJ-1239 Hanoi Tower Troubles Again!

    链接:ZOJ1239 Hanoi Tower Troubles Again! Description People stopped moving discs from peg to peg after ...

  5. Ansible-Tower快速入门-6.查看tower的仪表板【翻译】

    查看tower的仪表板 到这一步,我们已经可以在屏幕上看到tower的仪表板了,我们可以看到你目前"主机""资产清单"和"项目"的汇总信息, ...

  6. 自动运维:Ansible -ansible tower

    文档主页:http://docs.ansible.com/参考文档:http://docs.ansible.com/ansible/参考文档:http://docs.ansible.com/ansib ...

  7. dp --- hdu 4939 : Stupid Tower Defense

    Stupid Tower Defense Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/ ...

  8. 塔吊力矩限制器,塔吊黑匣子,塔吊电脑,tower crane

    塔机力矩限制器,tower crane 适用于各种类型的固定臂塔机和可变臂塔机 塔机力矩限制器是塔式起重机机械的安全保护装置,本产品采用32位高性能微处理器为硬件平台,软件算法采用国内最先进的三滑轮取 ...

  9. UVa 437 The Tower of Babylon(经典动态规划)

    传送门 Description Perhaps you have heard of the legend of the Tower of Babylon. Nowadays many details ...

随机推荐

  1. div+css布局教程系列2

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. JFreeChart教程(一)(转)

    JFreeChart教程(一) 分类: java Component2007-05-31 15:53 35268人阅读 评论(30) 收藏 举报 jfreechartimportdataset图形ap ...

  3. java web框架收集

    一.前端框架: 1.vue.js 2.angular.js 二.后端框架: 1.struts2 2.springmwc 三.数据库映射框架: 1.hibernate 2.mybatis 四.数据库: ...

  4. 用UNIX的cat命令用于给文本加行号 (转载)

    转载:http://blog.csdn.net/vicant/article/details/2317721 有时候需要给文本加上行号,用UNIX的cat命令可以进行这项工作. cat命令的用法如下: ...

  5. 本地通信实例(AF_UNIX) (转载)

    转自:http://www.groad.net/bbs/thread-1709-1-1.html 程序说明:  程序里包含服务端和客户端两个程序,它们之间使用 AF_UNIX 实现本机数据流通信.使用 ...

  6. 切换或者用户登录时 出现 显示 -bash-4.2$ 问题 的解决

    集群的普通用户在登录用户或者切换用户时,出现 -bash-4.2$ 的状态: [goldwind@TR-OS-DB 9.4]#su postgres bash-4.2$ 原因:在linux下通过use ...

  7. .NET CORE技术路线图

    分享一张图.来自微信.不做解释.

  8. ssh 公钥登录远程主机 并禁止密码登录

    https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys-on-centos7 如果在新的机器上,得先用密码登录一 ...

  9. CAD中的相对坐标和绝对坐标

    绝对坐标就是你作图的整个界限的原点,也就是CAD系统默认的原点坐标. 相对坐标就是相对于当前的点的坐标. 这两种坐标都有,可以根据习惯和需要自己看使用哪种. 一.绝对坐标 ①笛卡尔坐标(X,Y,Z) ...

  10. hdu 5335 Walk Out (搜索)

    题目链接: hdu 5335 Walk Out 题目描述: 有一个n*m由0 or 1组成的矩形,探险家要从(1,1)走到(n, m),可以向上下左右四个方向走,但是探险家就是不走寻常路,他想让他所走 ...