結果
問題 | No.267 トランプソート |
ユーザー |
![]() |
提出日時 | 2016-05-11 15:07:15 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 164 ms / 1,000 ms |
コード長 | 2,629 bytes |
コンパイル時間 | 2,380 ms |
コンパイル使用メモリ | 84,796 KB |
実行使用メモリ | 54,532 KB |
最終ジャッジ日時 | 2024-10-05 13:42:18 |
合計ジャッジ時間 | 6,720 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 20 |
ソースコード
import java.util.ArrayList;import java.util.Collections;import java.util.Scanner;public class Main {public static void main(String[] args) {try (Scanner scan = new Scanner(System.in)) {int n = Integer.parseInt(scan.next());ArrayList<Integer> D = new ArrayList<>();ArrayList<Integer> C = new ArrayList<>();ArrayList<Integer> H = new ArrayList<>();ArrayList<Integer> S = new ArrayList<>();for(int i=0; i<n; i++) {String v = scan.next();if(v.charAt(0) == 'D') {D.add(toNumber(v.charAt(1)));} else if(v.charAt(0) == 'C') {C.add(toNumber(v.charAt(1)));} else if(v.charAt(0) == 'H') {H.add(toNumber(v.charAt(1)));} else if(v.charAt(0) == 'S') {S.add(toNumber(v.charAt(1)));}}Collections.sort(D);Collections.sort(C);Collections.sort(H);Collections.sort(S);ArrayList<String> list = new ArrayList<>();for(int i=0; i<D.size(); i++) {list.add("D"+toChar(D.get(i)));}for(int i=0; i<C.size(); i++) {list.add("C"+toChar(C.get(i)));}for(int i=0; i<H.size(); i++) {list.add("H"+toChar(H.get(i)));}for(int i=0; i<S.size(); i++) {list.add("S"+toChar(S.get(i)));}for(int i=0; i<list.size(); i++) {if(i > 0) System.out.print(" ");System.out.print(list.get(i));}}}static int toNumber(char c) {int ret = 0;if(c >= '2' && c <= '9') {ret = c - '0';} else if(c == 'A') {ret = 1;} else if(c == 'T') {ret = 10;} else if(c == 'J') {ret = 11;} else if(c == 'Q') {ret = 12;} else if(c == 'K') {ret = 13;}return ret;}static char toChar(int i) {char c = '0';if(i >= 2 && i <= 9) {c = (char)(i + '0');} else if(i == 1) {c = 'A';} else if(i == 10) {c = 'T';} else if(i == 11) {c = 'J';} else if(i == 12) {c = 'Q';} else if(i == 13) {c = 'K';}return c;}}