자라는 개발자/문제풀이

백준 c++ 4158 CD

자란다 2022. 2. 3. 21:43
728x90
반응형

4158 CD

 

문제 풀이

#include <iostream>
#include <vector>
using namespace std;
void fast_io(void)
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
}
int main()
{
    fast_io();
    while (1)
    {
        int n, m;
        int res = 0, num;
        int posiA = 0, posiB = 0;
        vector<int> a;
        vector<int> b;

        cin >> n >> m;
        if (n == 0 && m == 0)
        {
            break;
        }
        for (int i = 0; i < n; i++)
        {
            cin >> num;
            a.push_back(num);
        }
        for (int i = 0; i < m; i++)
        {
            cin >> num;
            b.push_back(num);
        }
        while (1)
        {
            if (posiA == a.size() || posiB == b.size())
                break;
            else if (a[posiA] < b[posiB])
                posiA++;
            else if (a[posiA] > b[posiB])
                posiB++;
            else
            {
                posiA++;
                posiB++;
                res++;
            }
        }
        cout << res << '\n';
    }
}

오름차순으로 CD의 번호를 받기때문에
두사람의 CD 번호를 비교해서 전체개수까지 비교한뒤 결과를 출력한다.

728x90
반응형

'자라는 개발자 > 문제풀이' 카테고리의 다른 글

백준 c++ 1966 프린터 큐  (0) 2022.02.06
백준 c++ 1417 국회의원 선거  (0) 2022.02.04
백준 c++ 15815 천재 수학자 성필  (0) 2022.02.01
백준 c++ 17413 단어 뒤집기 2  (0) 2022.01.31
백준 c++ 7568 덩치  (0) 2022.01.29