300x250
반응형

코딩 (독학)/★ 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

[백준] 2588번 : 곱셈 - Kotlin [코틀린]

2588번: 곱셈 첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다. www.acmicpc.net 문제 알고리즘 (1)과 (2)의 곱셈을 진행하는 문제이고, (3), (4), (5)는 각각 (2)의 자릿수에 따른 곱셈 과정이다. (3)은 472*5의 과정이고, (4)는 472*5, (5)는 472*3의 과정이다. 1. 수학적으로 접근하여 각각의 자리수를 나누어 출력하고, 맨 마지막 결과는 (1)과 (2)의 곱셈을 출력하면 된다는 것이 가장 먼저 드는 단순한 방법인 것 같다. 2. (2)를 문자열로 받아서 JAVA에서의 charAt( )과 같이 한문자식 .toInt( ) 로 변환하여 (1)과 곱해서 출력하는 방법이 있는 것 같다. 풀이 - 1번 방법 import j..

[Kotlin Algorithm] 코틀린 알고리즘 문제풀이 TIP !

이번 포스트에서는 Android Native Language인 Kotlin을 이용한 알고리즘 문제를 풀 때의 유용한 TIP을 공유하고자 한다. 주로 방문하는 알고리즘 문제풀이 사이트는 아래와 같다. 1) 백준 (난이도 등 카테고리가 상세하게 잘 나뉘어져 있음.) Baekjoon Online Judge Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다. www.acmicpc.net 2) 프로그래머스 (알고리즘 별로 나뉘어져 있고, 프로필을 작성하여 채용 시장에 올릴 수 있고, 다양한 스킬업 프로그램이 있음) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 ..

728x90
반응형