眼帯 / paizaOnlineHackathon7

paiza.jp

#include <algorithm>
#include <iostream>
using namespace std;

void Solve(int n)   {
    int m1, m2, x, y, data[1000+1], count = 0;
    bool check[1000+1] = {false}, flg = false;

    cin >> m1;
    for (int i=0; i<m1; ++i)    {
        cin >> x;
        check[x] = true;
    }
    cin >> m2;
    for (int i=0; i<m2; ++i)    {
        cin >> y;
        if (!check[y])  {
            flg=true;
            data[count++] = y;
        }
    }
    sort(data,data+count);
    if (flg)    {
        for (int i=0; i<count; ++i)
            (i==0)? cout << data[i] : cout << " " << data[i];
        cout << endl;
    }
    else    cout << "None" << endl;
}

int main(void)  {
    int n;

    cin >> n;
    Solve(n);
    return 0;
}

フラグを立て比較。同じものがあった場合は昇順に出力。一つも該当するものがない場合はNoneを出力。
〜了〜