본문 바로가기

TIL

220810_TIL

#1 Kotlin 문법

함수를 쓰는 여러 방식에 대하여 공부함

// fun 함수명 (변수명 : 타입, 변수명, 타입 ...) : 반환형 {
//      함수 내용
//      return 반환값
// }

 

  • 기본적인 함수 방식
fun plus(first: Int, second: Int): Int {

    val result: Int = first + second
    return result
}

 

  • Default 매개변수
fun plusFive(first: Int, second: Int = 5): Int {
    val result: Int = first + second
    return result
} // 반환값 형태안넣어주면 안됨!

반환값 없을 때는 Unit으로 반환형 넣어주면됨

 

  • 간단한 함수
fun plusShort(first: Int, second: Int) = first + second

 

  • 가변인자
fun plusMany(vararg numbers: Int): Int{
    var sum: Int = 0
    for(number in numbers){
        sum+=number
        println(number)
    }
    return sum
}
println(plusMany(4,5,6))

 

#2 분할정복

https://www.acmicpc.net/problem/6549

 

6549번: 히스토그램에서 가장 큰 직사각형

입력은 테스트 케이스 여러 개로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, 직사각형의 수 n이 가장 처음으로 주어진다. (1 ≤ n ≤ 100,000) 그 다음 n개의 정수 h1, ..., hn (0 ≤ hi ≤

www.acmicpc.net

펜을 잃어버린 태블릿

왼쪽에서부터 count하고, stack에 (width를 구하기 위한 index정보, 높이)를 저장해준다.

count하다 전 값보다 높이가 작으면 pop 한 후 그 높이를 활용한 최대 넓이를 찾고, 최대 넓이를 최신화한다.

 

#3 운체 공부를 시작함

Fastcampus 강의를 활용 중

 

#4 소감

c언어로 알고리즘 구현하기가 너무 힘들다. 2학기를 준비할 파이썬, 운영체제 공부가 필요하다는 것을 느낌.

화이팅들

'TIL' 카테고리의 다른 글

220818_TIL  (0) 2022.08.18
220727_TIL  (0) 2022.07.27
220720_TIL  (0) 2022.07.20
220709_TIL  (0) 2022.07.10