코틀린

문제 링크 https://www.acmicpc.net/problem/2559 2559번: 수열 첫째 줄에는 두 개의 정수 N과 K가 한 개의 공백을 사이에 두고 순서대로 주어진다. 첫 번째 정수 N은 온도를 측정한 전체 날짜의 수이다. N은 2 이상 100,000 이하이다. 두 번째 정수 K는 합을 구하기 www.acmicpc.net 문제 풀이 fun main() = with(System.`in`.bufferedReader()) { val (n, k) = readLine().split(" ").map { it.toInt() } val temperature = readLine().split(" ").map { it.toInt() }.toIntArray() var sum = temperature.slice(..
문제 링크 https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net 문제 풀이 fun main() = with(System.`in`.bufferedReader()) { val n = readLine().toInt() val times = Array(n) { Array(2) { 0 } } repeat(n) { val line = readLine().split(" ") times[it][0] = line[0].toInt() times[it][1] = line[1].toInt() } times.sortWith(compareBy { it[1] }.thenBy { it[0] }..
· Algorithm
정렬 1) 기본 정렬 1. Immutable 리스트 기본 정렬 val list = listOf(20, 10, 40, 30, 50) val sortedList = list.sorted() println("List : $list") println("SortedList : $sortedList") // 결과 // List : [20, 10, 40, 30, 50] // sortedList : [10, 20, 30, 40, 50] 불변 리스트이므로 원본 리스트는 변경되지 않습니다. 2. Mutable 리스트 기본 정렬 val mutableList = MutableList(20, 10, 40, 30, 50) mutableList.sort() println("MutableList : $mutableList") // ..
· Algorithm
문제 링크 https://www.acmicpc.net/problem/2217 2217번: 로프 N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하 www.acmicpc.net 문제 풀이 import kotlin.math.max fun main() = with(System.`in`.bufferedReader()) { val n = readLine().toInt() val weights = Array(n) { 0 } for (i in 0..< n) { weights[i] = readLine().toInt() } weights.sort() var maxW..
· Algorithm
문제 링크 https://www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 문제 풀이 fun main() = with(System.`in`.bufferedReader()) { var (n, k) = readLine().split(" ").map { it.toInt() } val coins = mutableListOf() var result = 0 repeat(n) { coins.add(readLi..
· Algorithm
입출력 입력 fun main() = with(System.`in`.bufferedReader()) { // 정수 하나 읽기 val num = readLine().toInt() // 공백 기준으로 읽기 val nums = readLine().split(" ").map { it.toInt() } // 문자열을 char 배열로 받기 val char = readLine().toCharArray } 출력 fun main() = with(System.`out`.bufferedReader()) { // 기본 print("hello") // bufferedWriter val sout = BufferedWriter(OutputStreamWriter(System.out)) sout.appendLine() sout.flus..
· Android
조건문 when문 다른 언어에서의 switch문과 동일 파라미터 값 : 기본 타입, 문자열 리터럴, 변수, 연산식 조건식 : 기본 타입, 문자열 리터럴, 변수, 연산식, 범위 val value: Int = 3 val value2: Int = 10 when (value) { 1 -> println()// 기본 리터럴 2/1 -> println()// 연산식 value2 -> println()// 변수 3, 5 -> println()// 콤마로 구분해서 사용 in 5..7 -> println()// 범위 값 !in 8..9 -> println() null -> println() else -> println() } 파라미터 없이 사용 val value: Int = 4 when { value == null ->..
· Android
코틀린의 Null Safety 코틀린은 자바에서 흔히 볼 수 있는 NullPointerException 오류를 피할 수 있게 돕는 널 가능성이라는 타입 시스템 특성이 존재함 - 타입 시스템에 널이 될 수 있는지 여부를 추가함으로써 컴파일러가 여러가지 오류를 컴파일 시 미리 감지해서 실행 시점에 발생할 수 있는 예외의 가능성을 줄임 Null값 허용하기 : ? 1. 변수에 null 허용 설정 - null 허용을 위해 변수 선언시 타입 뒤에 ?(nullable)를 붙여야 함 class Nullable { var nullable: String? = null } 2. 함수 파라미터에 null 허용 설정 - 함수 파라미터가 null을 허용하려면 해당 파라미터에 대해 null 체크를 먼저 해야 사용 가능. 즉, if..
YOONJELLY
'코틀린' 태그의 글 목록