結果

問題 No.334 門松ゲーム
ユーザー 37zigen37zigen
提出日時 2016-05-05 23:12:32
言語 Java
(openjdk 23)
結果
AC  
実行時間 158 ms / 2,000 ms
コード長 1,026 bytes
コンパイル時間 2,010 ms
コンパイル使用メモリ 80,684 KB
実行使用メモリ 55,168 KB
最終ジャッジ日時 2024-10-05 10:02:18
合計ジャッジ時間 5,245 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 13
権限があれば一括ダウンロードができます

ソースコード

diff #

package yukicoder;
import java.util.Arrays;
import java.util.Scanner;
public class Main{
	public static void main(String[] args)throws Exception{
		new Main().solve();
	}
	void solve(){
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
		int[] k=new int[n];
		for(int i=0;i<n;i++)k[i]=sc.nextInt();
		if(judge(k)){
			System.out.println(ans[0]+" "+ans[1]+" "+ans[2]);
		}else{
			System.out.println(-1);
		}
	}
	int[] ans=new int[3];
	boolean judge(int[] k){
		int n=k.length;
		for(int i=0;i<n;i++){
			for(int j=i+1;j<n;j++){
				for(int l=j+1;l<n;l++){
					if(isKadomatsu(k[i],k[j],k[l])){
						int[] d=Arrays.copyOf(k, k.length);
						d[i]=d[j]=d[l]=-1;
						if(!judge(d)){
							ans[0]=i;
							ans[1]=j;
							ans[2]=l;
							return true;
						}
					}
				}
			}
		}
		return false;
	}
	
	
	boolean isKadomatsu(int x,int y,int z){
		if(x==-1||y==-1||z==-1)return false;
		else if(x==y||y==z||z==x)return false;
		else if(x<y&&y>z)return true;
		else if(x>y&&z>y)return true;
		else return false;
	}
}
0