구현

    [백준][코틀린] 17144 미세먼지 안녕!

    문제 내용 더보기 문제 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사과는 뛰어난 코딩 실력을 이용해 각 칸 (r, c)에 있는 미세먼지의 양을 실시간으로 모니터링하는 시스템을 개발했다. (r, c)는 r행 c열을 의미한다. 공기청정기는 항상 1번 열에 설치되어 있고, 크기는 두 행을 차지한다. 공기청정기가 설치되어 있지 않은 칸에는 미세먼지가 있고, (r, c)에 있는 미세먼지의 양은 Ar,c이다. 1초 동안 아래 적힌 일이 순서대로 일어난다. 미세먼지가 확산된다. 확산은 미세먼지가 있는 모든 칸에서 동시에 일어난다. (r, c)에 있는 미세먼지는 인접한 네 방향으..

    [백준][코틀린] 11023 더하기 3

    문제 내용 문제 수 N개가 주어졌을 때, N개의 합을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N(1 ≤ N ≤ 100)개의 수가 공백으로 구분되어서 주어진다. 입력으로 주어지는 수는 10,000보다 작거나 같은 자연수이다. 또, 0으로 시작하는 수는 주어지지 않는다. 출력 입력받은 수 N개의 합을 출력한다. 예제 입력 예제 출력 1 2 3 4 5 15 5 4 5 4 2 3 1 2 26 문제 풀이 들어온 리스트를 sumOf를 통해 계산해주기만 하면 된다~ ̆̈ 코드 fun main() = print(readLine()!!.split(" ").sumOf { it.toInt() }) 링크 11023번: 더하기 3 첫째 줄에 N(1 ≤ N ≤ 100)개의 수가 공백으로 구분되어서 주어진다. 입력으로 주어..

    [백준][코틀린] 1182 부분수열의 합

    문제 내용 문제 입력 받은 대로 출력하는 프로그램을 작성하시오. 입력 입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄이 주어질 수도 있고, 각 줄의 앞 뒤에 공백이 있을 수도 있다. 출력 입력받은 그대로 출력한다. 예제 입력 예제 출력 Hello Baekjoon Online Judge Hello Baekjoon Online Judge 문제 풀이 이 문제는 총 몇줄이 주어진다 등 정보를 주지 않는다. 다른 것 처럼 공백이 들어왔을 때 종료를 할 수 있는거도 아니고, 문자열의 끝을 판단해서 거기까지만 출력해야되는 문제이다. Kotlin에서 readLine은 문자열이 들어오지 않았을 때 null을 반환..

    [백준][코틀린] 10870 피보나치 수 5

    문제 내용 문제 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 $$F_n = F_{n-1} + F_{n-2} (n ≥ 2) $$가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 n이 주어진다. n은 20보다 작거나 같은 자연수 또는 0이다. 출력 첫째 줄에 n번째 피보나치 수를 출력한다. 예제 입력 예제 출력 10 55 문제 풀이 첫번째 풀이는 재귀..

    [백준][코틀린] 10872 팩토리얼

    문제 내용 문제 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 정수 N(0 ≤ N ≤ 12)이 주어진다. 출력 첫째 줄에 N!을 출력한다. 예제 입력 예제 출력 10 3628800 0 1 문제 풀이 첫번째 풀이 기본적인 재귀를 활용한 풀이이다. 문제 조건대로 출력하면 된다. 두번째 풀이 dp를 활용한 풀이이다. ̆̈ 코드 // 재귀를 이용한 풀이 fun main() { println(factorial(readLine()!!.toInt())) } fun factorial(number: Int): Int { return if (number in 0..1) 1 else factorial(number-1) * number } // DP를 활용한 풀이 fu..

    [백준][코틀린] 1001 A-B

    문제 내용 문제 두 정수 A와 B를 입력받은 다음, A-B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0

    [백준][코틀린] 1000 A+B

    🐯 이전에 풀었던 브론즈 문제들도 누군가에게는 도움이 될 것 같아 나눠서 함께 포스팅 문제 내용 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0

    [백준][코틀린] 11050 이항 계수 1

    문제 내용 문제 자연수 \(N\)과 정수 \(K\)가 주어졌을 때 이항 계수 \(\binom{N}{K}\)를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) 출력 \(\binom{N}{K}\)를 출력한다. 예제 입력 예제 출력 5 2 10 문제 풀이 이항 계수 관련 설명은 (https://ko.wikipedia.org/wiki/이항_계수)를 참고하는 것이 좋을 것 같다! 아니면 다른 블로그에도 설명이 잘되어있다. n\(C\)k를 구하면 되는데, 정석대로 구하려면 \(\frac{N!}{K!(N-K)!}\) 로 계산해야겠지만 고등학교때 손계산 당시 자주 사용했던 방법으로 풀어보았다. 예를 들어 5\(C\)2 일..

    [백준][코틀린] 1259 팰린드롬수

    문제 내용 문제 어떤 단어를 뒤에서부터 읽어도 똑같다면 그 단어를 팰린드롬이라고 한다. 'radar', 'sees'는 팰린드롬이다. 수도 팰린드롬으로 취급할 수 있다. 수의 숫자들을 뒤에서부터 읽어도 같다면 그 수는 팰린드롬수다. 121, 12421 등은 팰린드롬수다. 123, 1231은 뒤에서부터 읽으면 다르므로 팰린드롬수가 아니다. 또한 10도 팰린드롬수가 아닌데, 앞에 무의미한 0이 올 수 있다면 010이 되어 팰린드롬수로 취급할 수도 있지만, 특별히 이번 문제에서는 무의미한 0이 앞에 올 수 없다고 하자. 입력 입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 1 이상 99999 이하의 정수가 주어진다. 입력의 마지막 줄에는 0이 주어지며, 이 줄은 문제에 포함되지 않는다. 출력 각 ..