結果
| 問題 |
No.267 トランプソート
|
| コンテスト | |
| ユーザー |
hanorver
|
| 提出日時 | 2015-08-21 22:44:02 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 2 ms / 1,000 ms |
| コード長 | 1,335 bytes |
| コンパイル時間 | 575 ms |
| コンパイル使用メモリ | 67,028 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-07-18 11:46:51 |
| 合計ジャッジ時間 | 1,267 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 20 |
コンパイルメッセージ
main.cpp: In function ‘int main()’:
main.cpp:28:42: warning: ‘suit_num’ may be used uninitialized in this function [-Wmaybe-uninitialized]
28 | cards.push_back(suit_num * 100 + card_num);
| ~~~~~~~~~^~~~~
ソースコード
#include<iostream>
#include<vector>
#include<algorithm>
int main() {
int card_num;
std::cin >> card_num;
std::vector<int> cards;
for (int i = 0; i < card_num; i++) {
char suit, card;
int suit_num, card_num;
std::cin >> suit >> card;
if (suit == 'D') suit_num = 0;
else if (suit == 'C') suit_num = 1;
else if (suit == 'H') suit_num = 2;
else if (suit == 'S') suit_num = 3;
if (card == 'T') card_num = 10;
else if (card == 'J') card_num = 11;
else if (card == 'Q') card_num = 12;
else if (card == 'K') card_num = 13;
else if (card == 'A') card_num = 1;
else card_num = card - '0';
cards.push_back(suit_num * 100 + card_num);
}
std::sort(cards.begin(), cards.end());
for (std::vector<int>::iterator it = cards.begin(); it != cards.end(); it++) {
int num, suit_num;
num = *it % 100; *it /= 100;
suit_num = *it;
if (suit_num == 0)std::cout << 'D';
else if (suit_num == 1)std::cout << 'C';
else if (suit_num == 2)std::cout << 'H';
else if (suit_num == 3)std::cout << 'S';
if (num == 10) std::cout << 'T';
else if (num == 11) std::cout << 'J';
else if (num == 12) std::cout << 'Q';
else if (num == 13) std::cout << 'K';
else if (num == 1) std::cout << 'A';
else std::cout << num;
if (it != cards.end() - 1) std::cout << " ";
}
std::cout << std::endl;
return 0;
}
hanorver