
😎풀이
energy는 소모형이므로, 필요한 총합보다 1 클 때까지 훈련
experience 순회
2-1. experience는 누적형이므로, 부족할 때마다 부족한 에너지보다 1 클 때까지 훈련
- 훈련에 필요한 시간 반환
function minNumberOfHours(initialEnergy: number, initialExperience: number, energy: number[], experience: number[]): number {
let hours = 0
const necessaryEnergy = energy.reduce((a, b) => a + b, 0)
if(initialEnergy <= necessaryEnergy) hours += necessaryEnergy - initialEnergy + 1
let curExp = initialExperience
for(const exp of experience) {
if(curExp <= exp) {
const need = exp - curExp + 1
hours += need
curExp += need
}
curExp += exp
}
return hours
};