結果
問題 | No.267 トランプソート |
ユーザー | kou6839 |
提出日時 | 2015-08-22 19:00:42 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 169 ms / 1,000 ms |
コード長 | 894 bytes |
コンパイル時間 | 2,433 ms |
コンパイル使用メモリ | 83,924 KB |
実行使用メモリ | 43,428 KB |
最終ジャッジ日時 | 2024-07-18 12:48:47 |
合計ジャッジ時間 | 6,187 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 20 |
ソースコード
import java.util.*; public class Main { static char[] mark ={'D','C','H','S'}; static char[] number ={'A','2','3','4','5','6','7','8','9','T','J','Q','K'}; static int to_int(String string){ int tmp=0; for(int i=0;i<4;i++){ if(string.charAt(0)==mark[i]) tmp+=i*13; } for(int i=0;i<13;i++){ if(string.charAt(1)==number[i])tmp+=i+1; } return tmp; } static String to_string(int a){ String ret = ""; ret+=mark[(a-1)/13]; ret+=number[a-((a-1)/13)*13-1]; return ret; } public static void main(String[] args){ // TODO 自動生成されたメソッド・スタブ Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int[] in = new int[N]; for(int i=0;i<N;i++) in[i]=to_int(sc.next()); Arrays.sort(in); String ans = ""; for(int i=0;i<N;i++) ans+=to_string(in[i])+" "; System.out.println(ans.trim()); } }