結果
| 問題 | No.267 トランプソート |
| コンテスト | |
| ユーザー |
Rittai_3D
|
| 提出日時 | 2016-10-07 01:34:25 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.89.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,343 bytes |
| 記録 | |
| コンパイル時間 | 2,025 ms |
| コンパイル使用メモリ | 174,984 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-11-21 19:01:57 |
| 合計ジャッジ時間 | 2,918 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 5 WA * 15 |
ソースコード
#include<bits/stdc++.h>
using namespace std;
using trump = pair< int, int >;
template< typename Range >
void output( Range&& rng )
{
for_each(
begin( rng ),
end( rng ),
[]( auto&& t )
{
cerr << t.first << " " << t.second << endl;
}
);
}
int main()
{
static constexpr char illust[] = { 'D', 'C', 'H', 'S', };
static constexpr char number[] = { 'A', '2', '3', '4', '5', '6', '7', '8', '9', 'T', 'J', 'Q', 'K', };
int n {};
cin >> n;
vector< trump > v( n );
for( auto&& i : v ) {
string s {};
cin >> s;
for( int j=0 ; j<4 ; ++j ) {
if( illust[j] == s[0] ) {
i.first = j;
break;
}
}
for( int j=0 ; j<14 ; ++j ) {
if( number[j] == s[1] ) {
i.second = j;
break;
}
}
}
sort( begin( v ), end( v ), []( auto&& f, auto&& s ) { return f.second < s.second; } );
sort( begin( v ), end( v ), []( auto&& f, auto&& s ) { return f.first < s.first; } );
for_each(
begin( v ),
end( v ),
[&]( auto&& r )
{
cout << illust[ r.first ] << number[ r.second ] << ( --n == 0 ? "\n" : " " );
}
);
}
Rittai_3D