컴공생의 다이어리

볼링공 고르기 본문

Development/Algorithm & Coding Test

볼링공 고르기

컴공 K 2020. 12. 18. 22:44

A, B 두 사람이 볼링을 치고 있다. 서로 무게가 다른 볼링공을 고르려고 한다. 볼링공은 총 N개가 있으며 각 볼링공마다 무게가 적혀 있고, 공의 번호는 1번부터 순서대로 부여된다. 또한 같은 무게의 공이 여러 개 있을 수 있지만, 서로 다른 공으로 간주한다. 볼링공의 무게는 1부터 M까지의 자연수 형태로 존재한다.

 

질문

N개의 공의 무게가 각각 주어질 때, 두 사람이 볼링공을 고르는 경우의 수를 구하는 프로그램을 작성하시오.

 

 

구현한 코드

아래는 파이썬으로 구현한 코드이다.

N,M=map(int,input().split())
ball=list(map(int,input().split()))

arr=[0]*11
for x in ball:
          arr[x]+=1
result=0

for i in range(1,M+1):
          N-=arr[i]
          result+=arr[i]*N

print(result)

 

아래는 c/c++으로 구현한 코드이다.

#include<iostream>
#include<algorithm>

int main() {
	int N,M;
	int ball;
	int* arr = new int[11]{ 0, };
	int result = 0;

	std::cin >> N >> M;
	for (int i = 0; i < N; i++) {
		std::cin >> ball;
		arr[ball] += 1;
	}
	for (int i = 1; i < M+1; i++) {
		N -= arr[i];
		result += arr[i] * N;
	}
	std::cout << result;
	return 0;
}

 

 

 

www.kyobobook.co.kr/product/detailViewKor.laf?mallGb=KOR&ejkGb=KOR&barcode=9791162243077

 

이것이 취업을 위한 코딩 테스트다 with 파이썬 - 교보문고

IT 취준생이라면 누구나 가고 싶어 하는 카카오, 라인, 삼성전자의 2016년부터 2020년까지의 코딩 테스트와 알고리즘 대회의 기출문제를 엄선하여 수록하였다. 최근 5년간의 코딩 테스트 기출문제

www.kyobobook.co.kr

 

728x90

'Development > Algorithm & Coding Test' 카테고리의 다른 글

상하좌우  (0) 2020.12.21
[프로그래머스] Greedy - 체육복  (0) 2020.12.18
만들 수 없는 금액  (0) 2020.12.18
문자열 뒤집기  (0) 2020.12.18
곱하기 혹은 더하기  (0) 2020.12.18
Comments