2011年2月18日金曜日

Aizu Online Judge 0140 Bus Line

■0140 Bus Line

適当な場合分けによる冗長なコード.

  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 s, g;  
  17.  int n;  
  18.   
  19.  void run(){  
  20.   n=sc.nextInt();  
  21.   for(int i=0; i<n; i++){  
  22.    s=sc.nextInt();  
  23.    g=sc.nextInt();  
  24.    solve();  
  25.   }  
  26.  }  
  27.   
  28.  void solve(){  
  29.   LinkedList<Integer> list=new LinkedList<Integer>();  
  30.   if(s<g){  
  31.    for(int i=s; i<=g; i++){  
  32.     list.add(i);  
  33.    }  
  34.   }else{  
  35.    if(s<=5){  
  36.     for(int i=s; i>=g; i--){  
  37.      list.add(i);  
  38.     }  
  39.    }else{  
  40.     int i=s;  
  41.     boolean f=false;  
  42.     for(; i<=9; i++){  
  43.      list.add(i);  
  44.      if(i==g){  
  45.       f=true;  
  46.       break;  
  47.      }  
  48.     }  
  49.     if(!f){  
  50.      for(i=5; i>=0; i--){  
  51.       list.add(i);  
  52.       if(i==g){  
  53.        f=true;  
  54.        break;  
  55.       }  
  56.      }  
  57.     }  
  58.     if(!f){  
  59.      for(i=1; i<=g; i++){  
  60.       list.add(i);  
  61.       if(i==g){  
  62.        f=true;  
  63.        break;  
  64.       }  
  65.      }  
  66.     }  
  67.    }  
  68.   }  
  69.   for(int i=0; i<list.size(); i++){  
  70.    print(list.get(i)+(i==list.size()-1?"\n":" "));  
  71.   }  
  72.  }  
  73.   
  74.  void debug(Object... os){  
  75.   System.err.println(Arrays.deepToString(os));  
  76.  }  
  77.   
  78.  void print(String s){  
  79.   System.out.print(s);  
  80.  }  
  81.   
  82.  void println(String s){  
  83.   System.out.println(s);  
  84.  }  
  85.   
  86.  public static void main(String[] args){  
  87.   // System.setOut(new PrintStream(new BufferedOutputStream(System.out)));  
  88.   new Main().run();  
  89.  }  
  90. }  

0 件のコメント: