[백준] 쉽게 푸는 문제 (1292)
문제 설명
입력 및 출력
» 입력
첫째 줄에 구간의 시작과 끝을 나타내는 정수 A, B(1 ≤ A ≤ B ≤ 1,000)가 주어진다. 즉, 수열에서 A번째 숫자부터 B번째 숫자까지 합을 구하면 된다.
» 출력
첫 줄에 구간에 속하는 숫자의 합을 출력한다.
예제 입출력(테스트케이스)
입력 | 출력 |
---|---|
3 7 | 15 |
문제 풀이 (KOTLIN)
fun main(args: Array<String>) = with(System.`in`.bufferedReader()) {
val (A, B) = readLine().split(" ").map { it.toInt() }
var idx = 0
var seq = 1
var sum = 0
while (true) {
repeat(seq) {
idx++
if (idx in A..B) {
sum += seq
}
}
if (idx >= B) break
seq++
}
println(sum)
}
문제 풀이 (SWIFT)
var arr = [Int]()
for i in 1..<50 {
arr.append(contentsOf: [Int](repeating: i, count: i))
}
let section = readLine()!
.split(separator: " ")
.map { Int($0)! }
print(
arr[section[0] - 1...section[1] - 1]
.reduce(0, +)
)