2011年3月25日金曜日

Aizu Online Judge 0231 Dangerous Bridge

■0231 Dangerous Bridge

時刻aと時刻b-1について調べるだけ.
  1. import java.util.*;  
  2. import java.lang.*;  
  3. import java.math.*;  
  4. import java.io.*;  
  5.   
  6. import static java.lang.Math.*;  
  7. import static java.util.Arrays.*;  
  8.   
  9. public class Main{  
  10.   
  11.  Scanner sc=new Scanner(System.in);  
  12.   
  13.  int INF=1<<28;  
  14.  double EPS=1e-9;  
  15.   
  16.  int n;  
  17.  int[] m, a, b;  
  18.   
  19.  void run(){  
  20.   for(;;){  
  21.    n=sc.nextInt();  
  22.    if(n==0){  
  23.     break;  
  24.    }  
  25.    m=new int[n];  
  26.    a=new int[n];  
  27.    b=new int[n];  
  28.    for(int i=0; i<n; i++){  
  29.     m[i]=sc.nextInt();  
  30.     a[i]=sc.nextInt();  
  31.     b[i]=sc.nextInt();  
  32.    }  
  33.    solve();  
  34.   }  
  35.  }  
  36.   
  37.  void solve(){  
  38.   for(int j=0; j<n; j++){  
  39.    int sum1=0, sum2=0;  
  40.    for(int i=0; i<n; i++){  
  41.     if(a[i]<=a[j]&&a[j]<b[i]){  
  42.      sum1+=m[i];  
  43.     }  
  44.     if(a[i]<=b[j]-1&&b[j]-1<b[i]){  
  45.      sum2+=m[i];  
  46.     }  
  47.    }  
  48.    if(sum1>150||sum2>150){  
  49.     println("NG");  
  50.     return;  
  51.    }  
  52.   }  
  53.   println("OK");  
  54.  }  
  55.   
  56.  void debug(Object... os){  
  57.   System.err.println(Arrays.deepToString(os));  
  58.  }  
  59.   
  60.  void print(String s){  
  61.   System.out.print(s);  
  62.  }  
  63.   
  64.  void println(String s){  
  65.   System.out.println(s);  
  66.  }  
  67.   
  68.  public static void main(String[] args){  
  69.   // System.setOut(new PrintStream(new BufferedOutputStream(System.out)));  
  70.   new Main().run();  
  71.  }  
  72. }  

0 件のコメント: