안녕하세요. 오늘은 앵무새를 만들(?) 거예요.

문제

https://www.acmicpc.net/problem/28445

아이디어

일단 가능한 조합을 모두 해봅니다.
벡터에 저장을 합니다.
중복을 없애줍니다. 이때 unique함수를 씁니다.
출력을 합니다.

소스코드

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#define ll long long
using namespace std;


int main()
{
    ios_base::sync_with_stdio(false); cin.tie(NULL);
    string s[4];
    vector <pair <string, string> > v;

    for (ll i = 0; i < 4; i++)
        cin >> s[i];

    for (ll i = 0; i < 4; i++)
        for (ll j = 0; j < 4; j++)
            v.push_back({ s[i],s[j] });

    sort(v.begin(), v.end());
    v.erase(unique(v.begin(), v.end()), v.end());

    for (auto x : v)
        cout << x.first << ' ' << x.second << "\n";
}


감사합니다.

0개의 댓글