Uva The skyline Problem
Code:
#include<stdio.h>
#include<stdlib.h>
#include<iostream>
#include<algorithm>
#include<string.h>
using namespace std;
int main()
{
int arr[10005];
memset(arr,0,sizeof(arr));
int a,b,c;
int maxn=0;
while(scanf("%d %d %d",&a,&b,&c)!=EOF)
{
for(int i=a; i<c; i++)
{
if(arr[i]<b) arr[i]=b;
}
if(maxn<c) maxn=c;
}
bool start=true;
for(int i=0; i<=maxn; i++)
{
if(start==true && arr[i]!=0)
{
printf("%d %d ",i,arr[i]);
start=false;
}
else if(start==false && arr[i]!=arr[i-1])
{
if(i==maxn) printf("%d %d",i,arr[i]);
else printf("%d %d ",i,arr[i]);
}
}
printf("\n");
return 0;
}
留言
張貼留言