結果

問題 No.548 国士無双
ユーザー mikan765
提出日時 2017-07-28 23:13:41
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 26 ms / 2,000 ms
コード長 2,237 bytes
コンパイル時間 789 ms
コンパイル使用メモリ 76,200 KB
最終ジャッジ日時 2025-01-05 01:57:14
ジャッジサーバーID
(参考情報)
judge3 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 24
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <iostream>
#include <stdio.h>
#include <string>
#include <list>
#include <vector>
#include <algorithm>

#define rep(i,n) for(int i = 0;i < n;i++)
#define REP(i,n,k) for(int i = n;i < k;i++)
#define P(p) cout << (p) << endl;//print
using namespace std;

int main(){
    cin.tie(0);
   	ios::sync_with_stdio(false);
    string s;
    int mozi[13]={};
    cin >> s;
    rep(i,13){
        char c = s[i];
        cin >> c;
        if(c=='a'){
            mozi[0]++;
        }else if(c=='b'){
            mozi[1]++;
        }else if(c=='c'){
            mozi[2]++;
        }else if(c=='d'){
            mozi[3]++;
        }else if(c=='e'){
            mozi[4]++;
        }else if(c=='f'){
            mozi[5]++;
        }else if(c=='g'){
            mozi[6]++;
        }else if(c=='h'){
            mozi[7]++;
        }else if(c=='i'){
            mozi[8]++;
        }else if(c=='j'){
            mozi[9]++;
        }else if(c=='k'){
            mozi[10]++;
        }else if(c=='l'){
            mozi[11]++;
        }else if(c=='m'){
            mozi[12]++;
        }
    }
    int a;
    bool isZero = false;
    bool isTwo = false;
    rep(i,13){
        if(mozi[i]==0){
            if(!isZero){
                isZero=true;
                a=i;
            }else{
                P("Impossible");
                return 0;
            }
        }else if(mozi[i]==2){
            if(!isTwo){
                isTwo=true;
            }else{
                P("Impossible");
                return 0;
            }
        }
    }
    if(isTwo){
        switch(a){
            case 0:P('a');break;
            case 1:P('b');break;
            case 2:P('c');break;
            case 3:P('d');break;
            case 4:P('e');break;
            case 5:P('f');break;
            case 6:P('g');break;
            case 7:P('h');break;
            case 8:P('i');break;
            case 9:P('j');break;
            case 10:P('k');break;
            case 11:P('l');break;
            case 12:P('m');break;
        }
    }else{
        P('a');
        P('b');
        P('c');
        P('d');
        P('e');
        P('f');
        P('g');
        P('h');
        P('i');
        P('j');
        P('k');
        P('l');
        P('m');
    }
}
0