(1).백준 13496번 The Merchant of Venice는 베니스의 상인에 관련된 문제였다.
각각의 테스트케이스 내부에서 도착 예정인 배들과
여유있는 날짜 및 배의 속도를 기본 값으로 제공해준 다음
각각의 배들이 남은 거리와 배에 담긴 화물의 가치를 보고
변제일 이전에 도착한 금액을 테스트케이스별로 구해서 출력해야 하는 문제였다.
테스트케이스를 일단 나눠준 다음
날짜 및 배의 속도를 곱해서 그 값보다 남은 거리가 적은 경우
해당 배에 담긴 화물의 가치를 테스트케이스 내부에서 모두 합해주고
최종적으로 테스트케이스가 마무리될 때 해당 값을 result에 담았다가
테스트케이스들까지 모두 순회한 다음 원하는 요청 형태대로 출력하기 위해 '\n\n'으로 줄바꿈했다.
const input = `2
3 20 31
42 70
1000 2000
512 121
3 10 3
29 1
30 2
31 4`.split('\n').map(el => el.split(' ').map(Number))
const result = []
let setCount = 1
for(let i = 1 ; i < input.length ; i++){
const [n,s,d] = input[i]
let sum = 0
for(let j = 1 ; j <= n ; j++){
const [days, value] = input[i + j]
if(days <= s * d){
sum += value
}
}
result.push(`Data Set ${setCount}:
${sum}`)
setCount++
i+=n
}
console.log(result.join('\n\n'))
'회고' 카테고리의 다른 글
[개발일지] - 343(주말) (0) | 2024.06.09 |
---|---|
[개발일지] - 342 (0) | 2024.06.07 |
[개발일지] - 340 (1) | 2024.06.05 |
[개발일지] - 339 (0) | 2024.06.04 |
[개발일지] - 338 (0) | 2024.06.03 |