Uknow's Lab.
article thumbnail
[백준 16953번] [Kotlin] A → B
코딩테스트/Kotlin 2022. 12. 12. 22:45

https://www.acmicpc.net/problem/16953 16953번: A → B 첫째 줄에 A, B (1 ≤ A B 보단, B를 역으로 A로 만드는 과정이 더 쉬우며, 오른쪽에 1을 추가하는 연산은 10으로 나눴을때 나머지가 1이면 오른쪽에 1을 추가한 연산으로, 2..

article thumbnail
[백준 1012번] [Kotlin] 유기농 배추
코딩테스트/Kotlin 2022. 12. 12. 22:27

https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 난이도 : 실버 2 태그 : 그래프 이론, 그래프 탐색, 너비 우선 탐색, 깊이 우선 탐색 설명 각각의 점을 정점으로 보고, 인접한 상하좌우의 정점이 서로 연결되어있다고 생각하여, DFS, BFS로 모든 정점에서 탐색을 수행하며 블럭의 개수를 카운트 할 수 있습니다 DFS, BFS중 어느 것을 사용해도 무방하나, 저는 DFS를 사용해 풀이하였습니다. 소스코드 import java.io.BufferedReade..

article thumbnail
[백준 2010번] [Kotlin] 플러그
코딩테스트/Kotlin 2022. 12. 12. 22:09

https://www.acmicpc.net/problem/2010 2010번: 플러그 첫째 줄에 멀티탭의 개수 N이 주어진다. (1 ≤ N ≤ 500,000) 이어서 둘째 줄부터 N개의 줄에 걸쳐 각 멀티탭이 몇 개의 플러그를 꽂을 수 있도록 되어 있는지를 나타내는 자연수가 주어진다. 이 자연 www.acmicpc.net 난이도 : 브론즈 3 태그 : 수학, 사칙연 설명 멀티탭의 1개의 구멍은 다음 플러그를 연결할 때 사용합니다. 따라서, 마지막 1개의 멀티탭을 제외한 각 멀티탭은 1개씩 줄여 플러그를 세고, 결과값에 +1 만큼 하여 출력하면 됩니다. 소스코드 fun main() { var result = 0 repeat(readln().toInt()) { result += readln().toInt()..

article thumbnail
[백준 9093번] [Kotlin] 단어 뒤집기
코딩테스트/Kotlin 2022. 12. 2. 17:17

https://www.acmicpc.net/problem/9093 9093번: 단어 뒤집기 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다. 단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는 www.acmicpc.net 난이도 : 브론즈 1 태그 : 구현, 문자열 설명 각 단어를 뒤집어 출력하면 되는 문제 입니다. 소스코드 fun main(): Unit = with(System.`in`.bufferedReader()) { repeat(readLine().toInt()) { readLine().split(" ").map { it.reversed() }.forEach { print("$it ") } print..

article thumbnail
[백준 14425번] [Kotlin] 문자열 집합
코딩테스트/Kotlin 2022. 12. 1. 15:01

https://www.acmicpc.net/problem/14425 14425번: 문자열 집합 첫째 줄에 문자열의 개수 N과 M (1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)이 주어진다. 다음 N개의 줄에는 집합 S에 포함되어 있는 문자열들이 주어진다. 다음 M개의 줄에는 검사해야 하는 문자열들이 주어 www.acmicpc.net 난이도 : 실버 3 태그 : 자료구조, 문자열, 해시를 사용한 집합과 맵, 트리를 사용한 집합과 맵 설명 집합을 하나 만들고, 이 안에 집합 S에 있는 문자열들을 있습니다. 이후, 검사해야 할 문자열들이 집합에 포함되어 있는지 하나씩 검사합니다. 소스코드 fun main(): Unit = with(System.`in`.bufferedReader()) { val (n..

article thumbnail
[백준 1269번] [Kotlin] 대칭 차집합
코딩테스트/Kotlin 2022. 12. 1. 14:57

https://www.acmicpc.net/problem/1269 1269번: 대칭 차집합 첫째 줄에 집합 A의 원소의 개수와 집합 B의 원소의 개수가 빈 칸을 사이에 두고 주어진다. 둘째 줄에는 집합 A의 모든 원소가, 셋째 줄에는 집합 B의 모든 원소가 빈 칸을 사이에 두고 각각 주어 www.acmicpc.net 난이도 : 실버 4 태그 : 자료구조, 해시를 사용한 집합과 맵, 트리를 사용한 집합과 맵 설명 자바/코틀린의 자료 구조중 하나인 집합(set)을 사용하맨 꽤 쉽게 풀 수 있습니다. 소스코드 fun main():Unit = with(System.`in`.bufferedReader()) { readLine() val a = readLine().split(" ").map { it.toInt() ..

article thumbnail
[백준 9733번] [Kotlin] 꿀벌
코딩테스트/Kotlin 2022. 12. 1. 14:52

https://www.acmicpc.net/problem/9733 9733번: 꿀벌 각각의 일을 한 횟수와 비율을 공백으로 구분하여 출력한다. 출력은 {Re,Pt,Cc,Ea,Tb,Cm,Ex} 순서대로 하며, 비율은 소수점 둘째 자리까지 출력한다. 주어진 목록에 없는 일은 출력하지 않는다. 입력의 www.acmicpc.net 난이도 : 실버 5 태그 : 구현, 자료 구조, 문자열, 해쉬를 사용한 집합과 맵 설명 해쉬맵을 사용하여 각 일을 몇 번 했는지 카운트하여 풀 수 있습니다. 소스코드 import java.util.* import kotlin.collections.HashMap fun main() = with(System.`in`.bufferedReader()) { val target = arrayOf..

article thumbnail
[백준 29057번] [Kotlin] Большой удой
코딩테스트/Kotlin 2022. 11. 27. 12:15

https://www.acmicpc.net/problem/26057 26057번: Большой удой В финал соревнования по удою прошли Архип и Бронислав. В течение раунда каждый надоил ведро молока (возможно, неполное), посл www.acmicpc.net 난이도 : 브론즈 4 태그 : 수학, 사칙연산 설명 코테를 준비하면서 다른 의미로 가장 어려웠던 문제중 하나였습니다. 러시아어 같아서 대충 구글 번역기를 돌려보았는데, Arkhip과 Bronislav는 우유 생산량 경쟁 결승에 진출했습니다. 라운드 동안 각 사람은 우유 한 통(불완전할 수 있음)을 착유한 후 결과를 종이에 기록하고 우유 양동이를 동시에..

article thumbnail
[백준 2566번] [Kotlin] 최댓값
코딩테스트/Kotlin 2022. 11. 26. 17:53

https://www.acmicpc.net/problem/2566 2566번: 최댓값 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 위치한 행 번호와 열 번호를 빈칸을 사이에 두고 차례로 출력한다. 최댓값이 두 개 이상인 경우 그 중 한 곳의 위치를 출력한다. www.acmicpc.net 난이도 : 브론즈 3 태그 : 구현 설명 모든 좌표를 돌면서, 이전까지의 최대값보다 현재의 값이 더 클때, x, y와 현재의 값을 저장하고, 모든 좌표의 방문이 끝났으면 x, y를 출력합니다. 소스코드 import java.io.BufferedReader import java.io.InputStreamReader import java.util.StringTokenizer fun main() { val br = Buf..

article thumbnail
[백준 11365번] [Kotlin] !밀비 급일
코딩테스트/Kotlin 2022. 11. 26. 17:50

https://www.acmicpc.net/problem/11365 11365번: !밀비 급일 당신은 길을 가다가 이상한 쪽지를 발견했다. 그 쪽지에는 암호가 적혀 있었는데, 똑똑한 당신은 암호가 뒤집으면 해독된다는 것을 발견했다. 이 암호를 해독하는 프로그램을 작성하시오. www.acmicpc.net 난이도 : 태그 : 설명 END가 나올때 까지, 문자열을 입력받고, 입력받은 문자열을 뒤집어 출력하면 되는 문제입니다 코틀린에서는 String.reversed() 메소드를 통해 쉽게 뒤집어진 문자열을 구할 수 있습니다. 소스코드 fun main() { while(true) { val line = readLine()!! if(line == "END") break println(line.reversed()) ..