考題日期:2018/10/02
題號:12650
星等:1
語言:C++
題目:
題意:
有一個水壩的牆受到地震的影響受損了。事情緊急,必須馬上派人去修,以免水淹之患。 修護任務非常困難,還好現在有 n 個志願者。 政府製作了編號 1~n,總共n個號碼牌。每個志願者在去修理之前,會發給他一個號碼牌。 任務結束後,志願者把他的號碼牌交還回來。 現在水壩安全了,但不幸的是並不是每個志願者都有回來。有些志願者壯烈的犧牲了。你的任務是根據交還回來的號碼牌,找出有哪些號碼牌的志願者犧牲了。
程式:
#include <iostream>
using namespace std;
int main()
{
    int a,b,k;
    while(cin>>a>>b)
    {
        bool key = false;
        bool peo[10001];
        for(int i = 0 ; i < b ; i++)
        {
            cin>>k;
            peo[k] = true;
        }
        if(a == b)
            cout<<"*";
        else
        {
            for(int i = 1 ; i <= a ; i++)
            {
                if(peo[i] == false)
                {
                    if(key)
                        cout<<" ";
                    key = true;
                    cout<<i;
                }
            }
        }
        cout<<endl;
    }
    return 0;
}
測資: