(1).백준 2979번 트럭 주차는 주차 시간에 따른 비용을 계산해야 하는 문제로
1, 2, 3대마다 요금이 다르기 때문에 해당 주차 시간대를 비교해야 했다.
100시간까지라고 했기 때문에 1~100시간을 구성하는 배열을 생성한 다음
각각의 주차 시간대에 포함될 경우 1씩 증가시켜서 0~3대 주차로 볼 수 있게 했다.
주차 대수에 따라 주어진 요금을 적용해서 합산했는데 틀렸다는 결과가 나왔고
잘 생각해보니 주차 시작, 종료 시간을 기준으로 했을 때 1시간 마다 요금이 나오기 때문에
시작 시점이 아닌 시작 시점 +1시간을 카운팅하는 것으로 변경 후 통과할 수 있었다.
const input = `10 8 6
15 30
25 50
70 80`.split('\n').map(el => el.split(' ').map(Number))
const parking = new Array(101).fill(0)
let sum = 0
const add = (start, end) => {
for(let i = start+1 ; i <= end ; i++){
parking[i]++
}
}
add(input[1][0], input[1][1])
add(input[2][0], input[2][1])
add(input[3][0], input[3][1])
for(let i = 1 ; i <= 100 ; i++){
if(parking[i] == 1){
sum += input[0][0]
}
else if(parking[i] == 2){
sum += input[0][1] * 2
}
else if(parking[i] == 3){
sum += input[0][2] * 3
}
}
console.log(sum)
'회고' 카테고리의 다른 글
[개발일지] - 358 (0) | 2024.06.24 |
---|---|
[개발일지] - 357(주말) (0) | 2024.06.23 |
[개발일지] - 355 (0) | 2024.06.21 |
[개발일지] - 354 (0) | 2024.06.20 |
[개발일지] - 353 (0) | 2024.06.19 |