Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 그래프
- kotlin
- algorithm
- Java8
- Brute-force
- java
- 운영체제
- 자바
- lambda
- baekjoon
- 프로그래머스
- LEVEL2
- 네트워크
- programmers
- DFS
- 스프링
- BFS
- 프로젝트
- backtracking
- 알고리즘
- OS
- DP
- back-end
- 자료구조
- 백준
- 백트래킹
- 모던자바
- Spring
- 코틀린
- TDD
Archives
- Today
- Total
요깨비's LAB
[백준, Brute-force, Kotlin] P.10819 차이를 최대로 본문
import java.util.*
import kotlin.math.abs
var max = Int.MIN_VALUE
val visited = mutableListOf<Boolean>()
var N = 0
fun main() {
val scr = Scanner(System.`in`)
val arr = mutableListOf<Int>()
N = scr.nextInt()
for(i in 0 until N) {
val element = scr.nextInt()
arr.add(element)
visited.add(false)
}
for(i in 0 until N) {
visited[i] = true
getMax(1,i, arr, 0)
visited[i] = false
}
println(max)
}
fun getMax(current:Int, selectedIndex:Int, arr: MutableList<Int>, value: Int) {
// println("value: $value current: $current")
if(current >= N) {
if(value > max) {
max = value
return
}
}
for(i in 0 until N) {
if(visited[i])
continue
visited[i] = true
var v = value
v += abs(arr[selectedIndex] - arr[i])
getMax(current+1,i, arr, v)
visited[i] = false
}
}
'알고리즘(Kotlin) > Brute-Force' 카테고리의 다른 글
[백준, Brute-force, Kotlin] P.9093 단어뒤집기 (0) | 2021.05.28 |
---|---|
[프로그래머스, Kotlin] 문자열 압축 (0) | 2021.03.25 |
[프로그래머스, Kotlin] 크레인 인형뽑기 게임 (0) | 2021.03.09 |
[백준, Brute-Force, Kotlin] P.2798 블랙잭 (0) | 2020.12.10 |
Comments