24h購物| | PChome| 登入
2009-09-06 19:35:15| 人氣2,673| 回應0 | 上一篇 | 下一篇

ACM 105 Q105: The Skyline Problem

推薦 0 收藏 0 轉貼0 訂閱站台

/**********************************************************/

#include<stdio.h>
#include<stdlib.h>
main()
{
  int L,H,R,M=0,a;
  int LL[10001]={0};
  while(scanf("%d %d %d",&L,&H,&R)==3)
     {
        if(R>M)   M=R;
        for(a=L;a<R;a++)
           if(H>LL[a])
              LL[a]=H;
     }
  int last=0;
     for(a=0;a<M;a++)
        if(LL[a]!=last)
          {
             printf("%d %d ",a,LL[a]);
             last=LL[a];
          }
          printf("%d %d\n",M,0);
  return 0;
}

/*******************************************************/

下面這是PASCAL

var l,r,h,i,j,t,maxh: longint;  
    a : array[1..10000] of longint;  
function max(a,b:longint):longint;  
  begin 
    if a>=b then max:=a  
      else max:=b;  
  end;  
begin 
  maxh:=0;
  while not eof do begin 
    readln(l,r,h);  
    maxh:=max(h,maxh);
    for i:=l to h-1 do 
      a[i]:=max(a[i],r);
  end;  
  t:=0;
  for j:=0 to maxh-1 do 
    if a[j]<>t then begin
      t:=a[j];  
      write(' ',j,' ',a[j]);  
    end;  
   write(' ',maxh,' ',0);
end. 

台長: 來源不明
人氣(2,673) | 回應(0)| 推薦 (0)| 收藏 (0)| 轉寄
全站分類: 數位資訊(科技、網路、通訊、家電) | 個人分類: ACM |
此分類下一篇:ACM 10023 10023 - Square root
此分類上一篇:ACM 10856 Q10856: Recover Factorial

是 (若未登入"個人新聞台帳號"則看不到回覆唷!)
* 請輸入識別碼:
請輸入圖片中算式的結果(可能為0) 
(有*為必填)
TOP
詳全文