Recommanded Free YOUTUBE Lecture: <% selectedImage[1] %>

문제

다음과 같은 구조체를 가진 2개의 배열이 있다.
struct Score
{
   int did;
   int score;
} 
이 두 개의 배열에 대해서 합집합 연산을 하는 코드를 작성한다. 다음과 같은 조건이 주어진다.
  1. 배열은 did를 기준으로 정렬되어 있다.
  2. 합집합연산은 did를 기준으로 한다.
  3. 중복되는 did에 대해서는 두개의 score를 더한 결과를 입력한다.
  4. 언어는 제한이 없다. C++(:12)을 사용할 경우 STL(:12)을 사용해서 정렬된 셈플배열을 쉽게 생성할 수 있을 것이다.
예:
 +------------------------+
 | 1 5 8 10 15 20 100 101 | did 
 | 5 8 2 3  1  4  2   9   | score
 +------------------------+                         +------------------------------------+
                          ------------------> Union | 1 5 6 8 10 15 18 20 21 100 101 102 | did
 +------------------------+                         | 7 8 1 2 6  1  5  4  7  2   13  9   | score
 | 1 6 10 18 21 101 102   | did                     +------------------------------------+
 | 2 1 3  5  7  4   9     | score
 +------------------------+
위의 합집합연산을 위한 코드가 만들어졌다면, 교집합연산을 위한 코드도 쉽게 생성할 수 있을 것이다.

해답

제목 저자 변경일