알고리즘 공부/미분류

백준 11720번 with Kotlin ★

_우지 2021. 7. 4. 14:25

숫자의 합

시간 제한메모리 제한제출정답맞은 사람정답 비율

1 초 256 MB 103645 53085 45385 52.678%

문제

N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.

출력

입력으로 주어진 숫자 N개의 합을 출력한다.

예제 입력 1 복사

1 1

예제 출력 1 복사

1

예제 입력 2 복사

5 54321

예제 출력 2 복사

15

예제 입력 3 복사

25 7000000000000000000000000

예제 출력 3 복사

7

예제 입력 4 복사

11 10987654321

예제 출력 4 복사

46

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import kotlin.math.pow
 
fun main(){
    val key = readLine()!!.toInt()
    var num = readLine()!!.toInt()
    var sum = 0
    for(i in key-1 downTo 1 ){
        var gogo = ((10.0).pow(i)).toInt()
        sum += num/gogo
        num -= (gogo * (num / gogo))
    }
    sum += num
    println(sum)
}
cs

초기 코드 toBigInteger()도 사용해봤지만 안되더라.. 그래서 다른방법이 있을까해서 구글링을 했다.

1
2
3
4
5
6
7
8
9
10
11
import kotlin.math.pow
 
fun main(){
    val key = readLine()!!.toInt()
    val num = readLine().toString()
    var sum = 0
    for(i in num){
        sum += (i-'0')
    }
    println(sum)
}

 

이문제는 아스키코드를 사용해서 푸는 문제 였다. 

 

출처 https://hanyeop.tistory.com/119