結果
| 問題 | No.564 背の順 | 
| コンテスト | |
| ユーザー |  ohagi_1182 | 
| 提出日時 | 2017-10-11 21:11:10 | 
| 言語 | Java (openjdk 23) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 155 ms / 2,000 ms | 
| コード長 | 1,893 bytes | 
| コンパイル時間 | 3,133 ms | 
| コンパイル使用メモリ | 84,944 KB | 
| 実行使用メモリ | 54,352 KB | 
| 最終ジャッジ日時 | 2024-11-17 09:45:33 | 
| 合計ジャッジ時間 | 5,699 ms | 
| ジャッジサーバーID (参考情報) | judge2 / judge3 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 | 
| other | AC * 9 | 
ソースコード
import java.util.Arrays;
import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int h = sc.nextInt();
		int n = sc.nextInt();
		int[] x = new int[n - 1];
		for(int i = 0 ; i < n  - 1 ; i++) x[i] = sc.nextInt();
		Arrays.sort(x);
		int level = 1;
		for(int i = n - 2 ; i >= 0 ; i--) {
			if(h > x[i]) {
				if(level < 10) {
					if(level == 1) {
						System.out.println(level + "st");
						return;
					} else if(level == 2) {
						System.out.println(level + "nd");
						return;
					} else if(level == 3) {
						System.out.println(level + "rd");
						return;
					} else {
						System.out.println(level + "th");
						return;
					}
				} else if(level < 100) {
					if(level % 10 == 1) {
						System.out.println(level + "st");
						return;
					} else if(level % 10 == 2) {
						System.out.println(level + "nd");
						return;
					} else if(level % 10 == 3) {
						System.out.println(level + "rd");
						return;
					} else {
						System.out.println(level + "th");
						return;
					}
				} else {
					System.out.println(level + "th");
					return;
				}
			} else {
				level++;
			}
		}
		if(level < 10) {
			if(level == 1) {
				System.out.println(level + "st");
				return;
			} else if(level == 2) {
				System.out.println(level + "nd");
				return;
			} else if(level == 3) {
				System.out.println(level + "rd");
				return;
			} else {
				System.out.println(level + "th");
				return;
			}
		} else if(level < 100) {
			if(level % 10 == 1) {
				System.out.println(level + "st");
				return;
			} else if(level % 10 == 2) {
				System.out.println(level + "nd");
				return;
			} else if(level % 10 == 3) {
				System.out.println(level + "rd");
				return;
			} else {
				System.out.println(level + "th");
				return;
			}
		} else {
			System.out.println(level + "th");
			return;
		}
	}
}
            
            
            
        