문제
A, B 두 사람이 볼링을 치고 있다. 두 사람은 서로 무게가 다른 볼링공을 고르려고 한다. 볼링공은 총 N개이며 각 볼링공마다 무게가 적혀있고 공의 번호는 1번부터 순서대로 부여된다. 같은 무게의 공이 두 개 있을 수 있지만 서로 다른 공으로 간주한다. 볼링공의 무게는 1부터 M까지의 자연수 형태로 존재한다. 이때 두 사람이 서로 다른 볼링공을 고르는 경우의 수를 구하라. 예를 들어 볼링공이 5개이고 각 볼링공이 번호 순서대로 1, 3, 2, 3, 2라면, 경우의 수는 8이다. |
코드
#include <stdio.h>
#include <iostream>
using namespace std;
int main() {
int N, M, num, result = 0;
int B[11] = { 0 };
scanf_s("%d %d", &N, &M);
for (int i = 0; i < N; i++) {
cin >> num;
B[num] += 1;
}
for (int i = 1; i < M + 1; i++) {
N -= B[i];
result += B[i] * N;
}
cout << result;
}
풀이
'코테 > Greedy' 카테고리의 다른 글
[C/C++] 백준 1931, Greedy (0) | 2023.02.09 |
---|---|
[C/C++] 프로그래머스 스쿨 무지의 먹방라이브, Greedy (0) | 2023.02.08 |
[C/C++] 나동빈 만들 수 없는 금액, Greedy (0) | 2023.02.07 |
[C/C++] 백준 1439, Greedy (0) | 2023.02.06 |
[C/C++] 나동빈 곱하기 혹은 더하기, Greedy (0) | 2023.02.06 |