코딩테스트는 현대의 채용 과정에서 중요한 역할을 합니다. 이를 준비하는 과정에서 알고리즘 문제 풀이는 매우 중요한 부분입니다. 이번 강좌에서는 코틀린을 이용해 주어진 숫자의 합을 구하는 알고리즘 문제를 해결하는 과정을 상세히 설명하겠습니다.
문제 설명
주어진 정수 N개가 있습니다. 이때, N개의 정수를 입력받아 이들의 합계를 출력하는 프로그램을 작성하시오.
입력 형식:
첫째 줄에 정수 N(1 ≤ N ≤ 1000)이 주어집니다.
둘째 줄에는 N개의 정수가 공백으로 구분되어 주어집니다. 각 정수는 -1000 이상 1000 이하의 정수입니다.
출력 형식:
입력으로 주어진 N개의 정수의 합을 출력합니다.
문제 예시
입력:
5
1 2 3 4 5
출력:
15
문제 접근 방법
이 문제는 배열에 주어진 정수들을 저장한 다음, 이들의 합계를 구하는 매우 기본적인 문제입니다. 코틀린에서는 리스트와 다양한 컬렉션을 쉽게 다룰 수 있기 때문에, 이를 이용해 문제를 해결할 수 있습니다.
전반적인 접근 방식은 다음과 같습니다:
- 입력으로 주어진 두 줄의 데이터를 읽는다.
- 첫 번째 줄에서 정수 N을 읽어온다.
- 두 번째 줄에서 N개의 정수를 읽어와 리스트에 저장한다.
- 리스트의 모든 값을 더하여 합계를 구한다.
- 합계를 출력한다.
코틀린 구현
이제 위의 방법을 바탕으로 코틀린으로 구현해 보겠습니다. 아래는 구현된 코드입니다:
import java.util.Scanner
fun main() {
val scanner = Scanner(System.`in`)
// 첫 번째 줄에서 N 입력받기
val N = scanner.nextInt()
var sum = 0
// 두 번째 줄에서 N개의 숫자 입력받기
for (i in 0 until N) {
sum += scanner.nextInt()
}
// 합계 출력
println(sum)
}
코드 설명
위 코드는 다음과 같은 순서로 동작합니다:
- Scanner를 사용하여 입력을 받는다: Scanner는 입력을 받을 수 있도록 도와줍니다.
- N을 입력받는다: 첫 번째 줄에서 입력되는 정수 N을 읽습니다.
- for 루프를 사용하여 숫자를 입력받고 더한다: N번의 반복문을 통해 각 정수를 입력받아 sum에 더합니다.
- 결과 출력: 최종 합계를 출력합니다.
코드 테스트
작성한 코드를 테스트하기 위해 다양한 입력을 시도해볼 수 있습니다. 예를 들어:
입력:
3
10 -5 2
위의 입력을 주었을 때, 프로그램은 아래와 같은 출력을 보여줍니다:
출력:
7
결론
이번 강좌에서는 코틀린을 사용하여 간단한 숫자의 합구하기 문제를 해결하는 방법을 배워보았습니다. 기본적인 알고리즘과 코틀린의 문법을 잘 활용하면 쉽게 문제를 해결할 수 있습니다.
이러한 유형의 문제는 코딩테스트에서 자주 출제되는 기본적인 문제입니다. 다양한 데이터를 처리해보며 자신의 코딩 실력을 향상시켜 보시기 바랍니다.
다음 시간에는 좀 더 복잡한 문제들을 다룰 예정이니 기대해 주세요!