まず、とりあえず最初の玉をBに入れます。
その後、どちらに入れれば得かを考えながら入れていきます。
次の四通りが考えられます。
大きい数字が入っている方に入れた方が得です。
6 | ||
↓ | ||
B | C | |
2 | 4 |
この場合Cに入れた方が得。
Bに入れましょう。
Cに入れましょう。
「NO」と出力して終了しましょう。
// //A008.java // import java.io.*; public class A008{ public static void main(String[] args)throws IOException{ BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); //10個の玉の番号 int[] ball=new int[10]; //データを入力 for(int i=0;i<ball.length;i++){ ball[i]=Integer.parseInt(br.readLine()); } //筒Bと筒Cの一番上の玉 int b=0; int c=0; //玉を入れていく for(int i=0;i<ball.length;i++){ //最初はごちゃごちゃ言わずにBに入れる if(i==0){ b=ball[i]; continue; } if(ball[i]>b && ball[i]>c){ //BにもCにも入れられる場合 //大きい方に入れる if(b>c){ b=ball[i]; }else{ c=ball[i]; } }else if(ball[i]>b && ball[i]<c){ //Bにしか入れられない場合 b=ball[i]; }else if(ball[i]<b && ball[i]>c){ //Cにしか入れられない場合 c=ball[i]; }else{ //ムリ(おしまい) System.out.println("NO"); System.exit(0); } } //成功 System.out.println("YES"); } } |