結果
問題 | No.267 トランプソート |
ユーザー |
![]() |
提出日時 | 2019-03-26 14:23:20 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 2 ms / 1,000 ms |
コード長 | 3,483 bytes |
コンパイル時間 | 1,987 ms |
コンパイル使用メモリ | 189,936 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-10-11 01:22:52 |
合計ジャッジ時間 | 2,824 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 20 |
ソースコード
#include <cassert>#include <cctype>#include <cerrno>#include <cfloat>#include <ciso646>#include <climits>#include <clocale>#include <cmath>#include <csetjmp>#include <csignal>#include <cstdarg>#include <cstddef>#include <cstdio>#include <cstdlib>#include <cstring>#include <ctime>#include <ccomplex>#include <cfenv>#include <cinttypes>#include <cstdbool>#include <cstdint>#include <ctgmath>#include <cwchar>#include <cwctype>// C++#include <algorithm>#include <bitset>#include <complex>#include <deque>#include <exception>#include <fstream>#include <functional>#include <iomanip>#include <ios>#include <iosfwd>#include <iostream>#include <istream>#include <iterator>#include <limits>#include <list>#include <locale>#include <map>#include <memory>#include <new>#include <numeric>#include <ostream>#include <queue>#include <set>#include <sstream>#include <stack>#include <stdexcept>#include <streambuf>#include <string>#include <typeinfo>#include <utility>#include <valarray>#include <vector>#include <array>#include <atomic>#include <chrono>#include <condition_variable>#include <forward_list>#include <future>#include <initializer_list>#include <mutex>#include <random>#include <ratio>#include <regex>#include <scoped_allocator>#include <system_error>#include <thread>#include <tuple>#include <typeindex>#include <type_traits>#include <unordered_map>#include <unordered_set>//#include <boost/foreach.hpp>//#include <boost/range/algorithm.hpp>#define rep(i,j,k) for(int i=(int)j;i<(int)k;i++)#define ll long long#define Sort(v) sort(all(v))#define INF 1e9#define LINF 1e18#define END return 0#define pb push_back#define se second#define fi first#define pb push_back#define all(v) (v).begin() , (v).end()#define MP make_pair#define MOD 1000000007LL#define int long longusing namespace std;int day[12]={31,28,31,30,31,30,31,31,30,31,30,31};int dx[]={0,1,0,-1};int dy[]={1,0,-1,0};struct edge{int to,cost;};typedef pair<int,int> P;bool isupper(char c){if('A'<=c&&c<='Z')return 1;return 0;}bool islower(char c){if('a'<=c&&c<='z')return 1;return 0;}bool isPrime(int x){if(x==1)return 0;if(x==2)return 1;if(x%2==0)return 0;for(int i=3;i*i<=x;i++)if(x%i==0)return 0;return 1;}bool iskaibun(string s){for(int i=0;i<s.size()/2;i++)if(s[i]!=s[s.size()-i-1])return 0;return 1;}bool isnumber(char c){return ('0'<=c&&c<='9');}bool isalpha(char c){return (isupper(c)&&islower(c));}void print(vector<int> v){rep(i,0,v.size()){if(i)cout<<" ";cout<<v[i];}cout<<endl;}void printl(vector<int> v){rep(i,0,v.size()){cout<<v[i]<<endl;}}struct S{char c;int x;};bool cmp(S a,S b){map<char,int> mp;mp['D']=0;mp['C']=1;mp['H']=2;mp['S']=3;int pa=mp[a.c];int pb=mp[b.c];if(a.c==b.c)return a.x<b.x;else return pa<pb;}signed main (){map<char,int> mp;mp['A']=1;mp['T']=10;mp['J']=11;mp['Q']=12;mp['K']=13;vector<S> v;int n;cin>>n;rep(i,0,n){char c;char x;cin>>c>>x;if(isnumber(x))v.push_back(S{c,x-'0'});else v.push_back(S{c,mp[x]});}sort(all(v),cmp);map<int,char> mpp;mpp[1]='A';mpp[10]='T';mpp[11]='J';mpp[12]='Q';mpp[13]='K';rep(i,0,n){if(i)cout<<" ";if(v[i].x==1 or v[i].x>=10)cout<<v[i].c<<mpp[v[i].x];else cout<<v[i].c<<v[i].x;}cout<<endl;}/*021302130213*/