반응형

코딩 (독학)/★ Algorithm 7

[백준] 11021번 : A+B-7 - Kotlin [코틀린]

문제 11021번: A+B - 7 각 테스트 케이스마다 "Case #x: "를 출력한 다음, A+B를 출력한다. 테스트 케이스 번호는 1부터 시작한다. www.acmicpc.net 알고리즘 테스트 케이스의 개수 T를 입력받는다. 다음 줄에서 각각의 정수 A와 B를 입력받는다. A와 B의 +연산을 하고, 각 테스트 케이스마다 출력 해 준다. 풀이 import java.io.* import java.util.* fun main() : Unit { val br = BufferedReader(InputStreamReader(System.`in`)) val bw = BufferedWriter(OutputStreamWriter(System.out)) var TC : Int = 1 repeat(br.readLine(..

[백준] 2741번 : N찍기 - Kotlin [코틀린]

문제 (2741번 : N 찍기 - Kotlin[코틀린]) 2741번: N 찍기 자연수 N이 주어졌을 때, 1부터 N까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오. www.acmicpc.net 알고리즘 자연수 N을 입력받고, for 반복문을 이용하여 1부터 N까지 반복 출력한다. 단, 출력 한번당 한번의 개행이 있어야한다. 풀이 - 1번 풀이 (java.util.Scanner를 이용한 풀이) import java.util.* fun main() : Unit = with(Scanner(System.`in`)) { val N = nextInt() for(i in 1..N) println("${i}") } 대부분 단순히 위와 같은 풀이로 접근했을 것 같다. Scanner를 import 해준 뒤, N을 ne..

[백준] 15552번 : 빠른 A+B - Kotlin [코틀린]

문제 15552번: 빠른 A+B 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다. www.acmicpc.net 알고리즘 BufferedReader 와 BufferedWriter를 사용하여 각 입력 값들의 덧셈을 하여 출력한다. 풀이 먼저 여태까지의 모든 문제 풀이들은 비교적 사용이 간편한 Scanner와 단순한 println 을 사용했다. 그러나, 이런 풀이 방법은 내부적으로 많은 공정이 이루어지기 때문에 심각한 비효율적 검사가 발생하고, 당연히 처리 속도가 굉장히 느려진다. 그렇기 때문에 BufferedReader와 BufferedWriter를 사용하여 본 문제를 풀 수 있도록 의도..

[백준] 2480번 : 주사위 세개 - Kotlin [코틀린]

문제 2480번: 주사위 세개 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개 www.acmicpc.net 알고리즘 1. 같은 눈이 3개인 경우 연산 : 10000 + (같은 눈) * 1000 2. 같은 눈이 2개인 경우 연산 : 1000 + (같은 눈) * 100 3. 모든 눈이 다른 경우 연산 : (같은 눈) * 100 풀이 - 내가 작성한 코드 import java.util.Scanner import java.util.Random import java.util.Collections // import java.util.* fun main() =..

[백준] 2884번 : 알람 시계 - Kotlin [코틀린]

문제 알고리즘 1. 상근이가 설정한 알람시간을 45분 앞당겨 출력한다. 2. Scanner로부터 입력받은 Minute가 45보다 작으면 Hour - 1을 하고, Minute는 60-(45-minute)하여 계산하라. 3. Minute가 45보다 크다면 그대로 Minute-45를 한다. 4. Hour가 0보다 작다면 H=23하여 23시로 설정한다. 풀이 - 1번 방법 (가장 일반적인 방법) import java.util.* fun main() : Unit = with(Scanner(System.`in`)) { var H = nextInt() var M = nextInt() if(M

반응형