백준
[백준][Kotlin]11047번 문제 동전 0
끝까지 처음처럼
2023. 3. 20. 19:28
728x90
해당 문제는 동전의 가치가 큰것부터 k원과 비교하여 같거나 클 경우
answer(정답) 에 k/동전의 가치 를 더한 후 k는 동전의 가치로 나눈 후 남은 나머지로 변경하며, 최종적으로 k가 0원이 되었을때 answer를 반환하면 되는 문제였습니다.
하기는 제가 작성한 코드와 제출 결과 입니다.
import java.io.BufferedReader
import java.io.BufferedWriter
import java.io.InputStreamReader
import java.io.OutputStreamWriter
import java.lang.Math.max
import java.util.*
import kotlin.collections.ArrayList
import kotlin.collections.HashSet
fun main() {
val br = BufferedReader(InputStreamReader(System.`in`))
//var bw = BufferedWriter(OutputStreamWriter(System.out))
var st = StringTokenizer(br.readLine())
val N = st.nextToken().toInt()
var K = st.nextToken().toInt()
var arr = IntArray(N){0}
repeat(N){
st = StringTokenizer(br.readLine())
arr[N-it-1] = st.nextToken().toInt()
}
var answer = 0
for(coin in arr){
if(K >= coin){
answer += K/coin
K = K % coin
}
if(K == 0)break
}
println(answer)
//bw.flush()
//bw.close()
}