Beta Round #59-A: Sinking Ship

解法

やるだけ。適当にコンパレータを定義してstable_sortしてもよさげ。

import java.util.*;

public class Main {

	void run(){
		Scanner in = new Scanner(System.in);
		ArrayList<String> rats = new ArrayList<String>();
		ArrayList<String> child = new ArrayList<String>();
		ArrayList<String> man = new ArrayList<String>();
		ArrayList<String> captain = new ArrayList<String>();
		int N = in.nextInt();
		for(int i=0; i<N; i++){
			String name = in.next();
			String group = in.next();
			if(group.equals("rat")){
				rats.add(name);
			}
			else if(group.equals("woman") || group.equals("child")){
				child.add(name);
			}
			else if(group.equals("man")){
				man.add(name);
			}
			else if(group.equals("captain")){
				captain.add(name);
			}
		}
		for(int i=0; i<rats.size(); i++){
			System.out.println(rats.get(i));
		}
		for(int i=0; i<child.size(); i++){
			System.out.println(child.get(i));
		}
		for(int i=0; i<man.size(); i++){
			System.out.println(man.get(i));
		}
		for(int i=0; i<captain.size(); i++){
			System.out.println(captain.get(i));
		}

	}


	public static void main(String args[]){
		new Main().run();
	}
}