【題解】Codeforces 1348B. Phoenix and Beauty

【題目敘述】http://codeforces.com/contest/1348/problem/B

#include <iostream>
#include <set>
#include <vector>
using namespace std;
 
int t, n, k, a[105];
set <int> st;
vector <int> v;
vector <int> ans;
 
int main() {
    cin >> t;
    while (t--){
        cin >> n >> k;
        st.clear();
        v.clear();
        for (int i = 0; i < n; i++){
            cin >> a[i];
            st.insert(a[i]);
        }
        for (auto i:st){
            v.push_back(i);
        }
        if (v.size() < k){
            for (int i = k-v.size(); i > 0; i--){
                v.push_back(v.back());
            }
        }
        ans.clear();
        for (int i = 0; i < n; i++){
            for (int j:v){
                ans.push_back(j);
            }
        }
        cout << ans.size() << "\n";
        for (int i:ans){
            cout << i << " ";
        }
        cout << "\n";
    }
}
分享本文 Share with friends