부실 자산

면접 대비

시간 제한1초메모리 제한128 MB

요약
기초 자산의 현재 가치와 비순환 파생상품 정의가 주어질 때, 이들로 구성된 포트폴리오의 현재 가치를 계산한다.
난이도

쉬움10점 중 3점

유형
동적 계획법, 수학, 구현
정답자
아직 제출이 없습니다

문제

주택 압류가 경제에 그토록 큰 충격을 준 이유 중 하나는, 여러 금융기관이 주택담보대출을 기반으로 한 파생상품을 만들어 냈기 때문입니다. 주택담보대출 상환금을 받을 권리를 하나의 투자 상품으로 묶은 뒤, 잘게 쪼개어 다른 투자자들에게 팔았습니다. 이렇게 쪼갠 조각들은 다시 다른 투자와 섞이고, 새로 포장되어 또 팔려 나갔습니다. 그 결과, 파생상품의 실제 가치는 추적하기 어려운 기초 주택담보대출에 좌우됩니다. 모든 파생상품이 뿌리를 두고 있는 기초 구성 요소의 가치가 바뀌면, 지금 내 포트폴리오가 실제로 얼마짜리인지 알아내기가 결코 쉽지 않습니다. 여러 파생상품으로 이어진 사슬을 따라가며 계산해야 할 수도 있습니다.

이 문제는 다음과 같이 모형화합니다. 당신은 주택담보대출과 같은 몇 개의 기초 투자를 가지고 있습니다. 각 기초 투자는 예전에는 한 단위가 $1이었고, 지금 한 단위가 얼마인지 주어집니다. 그 위에 파생상품이 있습니다. 각 파생상품은 하나 이상의 기초 투자나 다른 파생상품으로 이루어지며, 각 구성 요소가 차지하는 비율이 함께 주어집니다(비율의 합은 항상 1입니다). 각 파생상품은 기초 투자나 자신보다 번호가 작은 파생상품만으로 구성되므로 순환은 없습니다. 마지막으로, 당신의 포트폴리오가 각 투자로 이루어진 비율이 주어집니다. 예전에는 한 단위가 $1이던 포트폴리오가 지금은 얼마인지 구하세요.

이 모형은 실제 상황을 단순화한 것으로, 우리가 이해한 최선의 근사일 뿐입니다. 사실 경제가 어려웠던 또 다른 이유는, 이런 파생상품이 어떻게 작동하는지 제대로 이해한 사람이 거의 없었다는 데 있습니다.

입력

첫 줄에 데이터 집합의 수 KK가 주어집니다. 이어서 KK개의 데이터 집합이 다음 형식으로 주어집니다.

각 데이터 집합의 첫 줄에는 두 정수 BB와 DD가 주어집니다. BB는 기초 투자의 수(1≤B≤1001 \le B \le 100), DD는 파생상품의 수(0≤D≤1000 \le D \le 100)입니다. 기초 투자에는 1,…,B1, \dots, B번을, 파생상품에는 B+1,…,B+DB+1, \dots, B+D번을 매깁니다.

다음 줄에는 BB개의 음이 아닌 실수가 주어지며, 각 기초 투자 한 단위의 현재 가치를 순서대로 나타냅니다.

이어서 DD개의 줄이 주어집니다. 그중 dd번째 줄에는 B+d−1B + d - 1개의 음이 아닌 실수가 있으며, 파생상품 B+dB + d가 투자 1,…,B+d−11, \dots, B + d - 1로 각각 몇 퍼센트씩 구성되는지를 나타냅니다. 이 값들의 합은 항상 1이며, 어떤 파생상품도 자신보다 번호가 큰 파생상품을 포함하지 않습니다.

마지막 줄에는 합이 1인 B+DB + D개의 음이 아닌 실수가 주어지며, 포트폴리오가 각 투자로 이루어진 비율을 나타냅니다.

출력

각 데이터 집합마다 먼저 Data Set x:를 한 줄에 출력하세요. 여기서 xx는 데이터 집합의 번호입니다. 다음 줄에는 포트폴리오 한 단위의 현재 가치를 소수점 아래 둘째 자리까지 반올림하여 출력하세요. 연속한 데이터 집합 사이는 빈 줄 하나로 구분합니다.

예제2

  1. 예제 1

    입력
    1
    3 4
    0.01 1.1 0.4
    0.5 0.25 0.25
    0.9 0 0 0.1
    0 0 0 0.5 0.5
    0 0.5 0 0 0.3 0.2
    0 0 0.2 0.2 0.2 0.2 0.2
    
    예상 출력
    Data Set 1:
    0.33
    
  2. 예제 2

    입력
    1
    2 0
    2.0 3.0
    0.5 0.5
    
    예상 출력
    Data Set 1:
    2.50