본문 바로가기
코테/백준

[백준] 1764 듣보잡 - C++

by gayoungeeda 2023. 7. 19.
728x90

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

 

문제 설명


문제 풀이

#include<stdio.h>
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;

string arr[500001];
string answer[500001];
int main()
{
    int i, n, m, cnt = 0;

    scanf("%d%d", &n, &m);

    for(i = 0; i < n+m; i++) {
        cin >> arr[i];
    }

    sort(arr, arr+n+m);

    for(i = 1; i < n+m; i++) {
        if(arr[i] == arr[i-1])
            answer[cnt++] = arr[i];
    }

    cout << cnt << "\n";

    for(i = 0; i < cnt; i++) {
        cout << answer[i] << "\n";
    }

    return 0;
}

각 명단에는 중복되는 이름이 없다는 조건이 전제되어 있으므로

두 명단에 모두 속해있는 사람 = 두 명단을 한번에 입력받아 정렬했을 때 이름이 두개 들어있음 = 배열의 i번째와 i-1번째를 비교해서 같음

'코테 > 백준' 카테고리의 다른 글

[백준] 10815 숫자 카드 - C++  (0) 2023.07.20
[백준] 2805 나무 자르기 - C++  (0) 2023.07.20
[백준] 10798 세로읽기 - C++  (0) 2023.07.19
[백준] 17608 막대기 - C++  (0) 2023.07.18
[백준] 10828 스택 - C++, Java  (0) 2023.07.18