경험의 기록

문제 : www.acmicpc.net/problem/1003

 

1003번: 피보나치 함수

각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다.

www.acmicpc.net

 

 

import java.util.*

var arr = arrayListOf<Pair<Int,Int>>()
fun main() = with(Scanner(System.`in`)){
    var t = nextInt()
    var tmp = 0
    arr.add(1 to 0)
    arr.add(0 to 1)

    for(i in 2 .. 40){
       arr.add(arr[i-1].first+arr[i-2].first to arr[i-1].second+arr[i-2].second)
    }

    for(i in 0 until t){
        tmp = nextInt()
        println("${arr[tmp].first} ${arr[tmp].second}")
    }
}

Pair 로 묶어주어 40까지의 피보나치 값을 배열로 구현하였다.

 

반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading