fragment-header
fragment-markdown
홈
로그인
로그아웃
내 블로그
설정
로그인
백준 28250 (C++) 이브, 프시케 그리고 푸른 MEX의 아내
최초 업로드: 2025-09-14 11:07:05
최근 수정 시간: 2025-09-14 11:07:05
게시자: rlatjwls3333
카테고리: 백준
조회수: 4
# [Silver II] 이브, 프시케 그리고 푸른 MEX의 아내 [문제 링크](https://www.acmicpc.net/problem/28250) ## 문제 설명 <p>$\textrm{mex}(S)$는 집합 $S$에 포함되지 않은 가장 작은 음이 아닌 정수이다.</p> <p>$N$개의 $0$ 이상의 정수 $A_1, A_2, \dots, A_N$이 주어질 때, 다음 값을 구하는 프로그램을 작성하시오.</p> <p>$$\sum_{i=1}^{N-1} \sum_{j=i+1}^{N} \textrm{mex}(\{A_i, A_j\})$$</p> ## 입력 <p>첫째 줄에 정수 $N$이 주어진다. ($2 \le N \le 200\,000$)</p> <p>둘째 줄에 $N$개의 정수 $A_1, A_2, \dots, A_N$이 공백으로 구분되어 주어진다. ($0 \le A_i \le 100\,000$)</p> ## 출력 <p>문제에서 요구하는 값을 출력한다.</p> ## 풀이 0, 1, 2의 개수를 각각 세서 0을 2개 선택할 경우, 0과 1을 선택할 경우, 0과 2를 선택할 경우 세 가지 경우를 더해주었습니다. ``` c++ #include<bits/stdc++.h> using namespace std; typedef long long ll; ll cnt[3]; int main() { ios::sync_with_stdio(0); cin.tie(0); int n; cin >> n; while(n--) { int num; cin >> num; cnt[min(num, 2)]++; } cout << cnt[0]*(cnt[0]-1)/2 + cnt[0]*cnt[1]*2 + cnt[0]*cnt[2]; } ```