문제
이번 ACM-ICPC 대회의 자리는 참가자들이 직접 정한다. 참가자들은 예비 소집일에 자신이 원하는 자리를 미리 정해놓았고, 대회 당일에 어제 적어놓은 자리에 앉으면 된다. 여러명이 같은 자리를 적어논 경우에는, 먼저 도착한 사람이 그 자리에 앉게되고, 앉지 못한 사람은 대회에 참가할 수 없다.
각 사람이 선호하는 자리가 주어졌을 때, 대회에 참가하지 못하는 사람의 수를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 테스트 케이스의 개수 K가 주어진다. 각 테스트 케이스는 다음과 같이 구성되어 있다.
첫째 줄에 참가자의 수 P와 자리의 수 M이 주어진다. (1 ≤ P, M ≤ 500) 다음 P개 줄에는 각 참가자가 원하는 자리가 주어진다. 자리는 1번부터 M번까지 있다. 입력으로 주어지는 참가자가 도착하는 순서이다.
출력
각 테스트 케이스에 대해서, 대회에 참가하지 못하는 사람의 수를 출력한다.
Solved.ac 레벨
브론즈 II
풀이
#include <bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int testCase;
cin >> testCase;
for(int i = 0 ; i < testCase; i++){
int p = 0, m = 0;
vector<int> chair;
cin >> p >> m;
for(int j = 0 ; j < p; j++){
int nNum = 0 ;
cin >> nNum;
chair.push_back(nNum);
}
sort(chair.begin(), chair.end());
chair.erase(unique(chair.begin(), chair.end()), chair.end());
cout << p - chair.size() << endl;
}
return 0;
}
'Study (etc) > Problem Solving' 카테고리의 다른 글
[BOJ / C++] 10821번 : 정수의 개수 (0) | 2022.04.01 |
---|---|
[BOJ / C++] 10809번 : 알파벳 찾기 (0) | 2022.04.01 |
[BOJ / C++] 2693번 : N번째 큰 수 (0) | 2022.03.28 |
[BOJ / C++] 1037번 : 약수 (0) | 2022.03.28 |
[BOJ / C++] 2750번 : 수 정렬하기 (0) | 2022.03.28 |