UVA 105 - The Skyline Problem(暴力枚举)

2014-11-24 10:15:45 · 作者: · 浏览: 0

题意:给定一些房子的左高右,求出各个房子高度变化的转折点

思路:直接暴力,记录下每个点的最大高度,然后for一遍输出即可。

代码:

#include 
  
   
#include 
   
     const int N = 10005; int l, h, r; int vis[N]; int main() { while (~scanf(%d%d%d, &l, &h, &r)) { for (int i = l; i < r; i++) { if (vis[i] < h) vis[i] = h; } } int bo = 0; for (int i = 1; i <= 10000; i++) { if (vis[i] == vis[i - 1]) continue; if (bo++) printf( ); printf(%d %d, i, vis[i]); } printf( ); return 0; }