Uknow's Lab.
article thumbnail
[백준 1213번] [Kotlin] 팰린드롬 만들기
코딩테스트/Kotlin 2023. 12. 13. 18:02

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

article thumbnail
[백준 1181번] [Kotlin] 단어 정렬
코딩테스트/Kotlin 2023. 11. 20. 15:10

https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 난이도 : 실버 5 태그 : 문자열, 정렬 설명 같은 문자는 제거하면서, 길이 순으로 정렬하고, 길이가 같을 땐 사전 순으로 정렬하는 문제입니다. 코틀린, 코딩테스트 둘 다 공부를 시작한지 얼마 안됬을 때 풀었던 문제였던 것 같은데, 옛날에 꽤나 치열하게 풀었더군요... 소스코드 1년 전 코드 fun main() { val case = readLine()!!.toInt() var arr..

article thumbnail
[백준 15904번] [Kotlin] UCPC는 무엇의 약자일까?
코딩테스트/Kotlin 2023. 7. 15. 01:23

https://www.acmicpc.net/problem/15904 15904번: UCPC는 무엇의 약자일까? 첫 번째 줄에 알파벳 대소문자, 공백으로 구성된 문자열이 주어진다. 문자열의 길이는 최대 1,000자이다. 문자열의 맨 앞과 맨 끝에 공백이 있는 경우는 없고, 공백이 연속해서 2번 이상 주어지는 www.acmicpc.net 난이도 : 실버 5 태그 : 그리디, 문자열 설명 주어진 문자열로 UCPC라는 약자를 도출할 수 있는지를 판단하는 문제입니다. 초기 아이디어는 리스트를 하나 두고, 사용한 문자열을 하나씩 빼면서 리스트가 비면 도출 가능하다고 판단했었는데, 생각해보니 U - C - P - C 순으로 해야더라고요... 결국 UCPC 중 몇 번째 문자열까지 가능한지 체크할 포인터 변수 하나를 두..

article thumbnail
[백준 4949번] [Kotlin] 균형잡힌 세상
코딩테스트/Kotlin 2023. 7. 10. 00:51

https://www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 각 문자열은 마지막 글자를 제외하고 영문 알파벳, 공백, 소괄호("( )"), 대괄호("[ ]")로 이루어져 있으며, 온점(".")으로 끝나고, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마지막에 www.acmicpc.net 난이도 : 실버 4 태그 : 자료구조, 문자열, 스택 설명 모든 왼쪽 괄호는 오른쪽 괄호와 맞아야 합니다. [](), [()] 등은 맞지만, ([], ([)] 등은 맞지 않습니다. 스택을 활용하기 좋은 문제일 것 같네요. [()]을 예로 들겠습니다. 첫 번째 글자 : [ stack에 문자를 넣습니다. 현재 스택 : [ 두 번째 글자 : ( stack이 비어있지 않으나, 가장 ..

article thumbnail
[백준 11328번] [Kotlin] Strfry
코딩테스트/Kotlin 2023. 7. 10. 00:26

https://www.acmicpc.net/problem/11328 11328번: Strfry C 언어 프로그래밍에서 문자열(string)은 native한 자료형이 아니다. 사실, 문자열은 그저, 문자열의 끝을 표시하기 위한 말단의 NULL이 사용된, 문자들로 이루어진 문자열일 뿐이다. 하지만 프로그래 www.acmicpc.net 난이도 : 브론즈 2 태그 : 구현, 문자 설명 두 개의 문자열을 입력받고, 한 문자열을 적절히 재배치하여 다른 문자열을 만들 수 있는지 판단하는 문제입니다. 즉 애너그램인지 판단하는 것이죠. https://namu.wiki/w/%EC%95%A0%EB%84%88%EA%B7%B8%EB%9E%A8 애너그램 - 나무위키 이 저작물은 CC BY-NC-SA 2.0 KR에 따라 이용할 수..

article thumbnail
[백준 10809번] [C] 알파벳 찾기
코딩테스트/C | C++ 2023. 7. 10. 00:12

https://www.acmicpc.net/problem/10809 10809번: 알파벳 찾기 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출 www.acmicpc.net 난이도 : 브론즈 2 태그 : 구현, 문자열 설명 26개의 배열을 선언하고 -1로 초기화한뒤, A ~ Z, 각 문자가 처음으로 나오는 순간이 몇 번째인지 저장합니다. 첫 번째로 나오는 순간이므로, -1인지 확인 후 업데이트 하는게 주의점입니다. 소스코드 #include #include int main() { char str[100]; scanf("%s", str); int result..

article thumbnail
[백준 5988번] [Kotlin] 홀수일까 짝수일까
카테고리 없음 2023. 6. 29. 22:06

https://www.acmicpc.net/problem/5988 5988번: 홀수일까 짝수일까 짝이 없는 경재는 매일 홀로 있다보니 홀수를 판별할 수 있는 능력이 생겼다. 창식이는 경재의 말이 사실인지 그 능력을 시험해보려 한다. 창식이의 의심이 끝이 없을 것 같아 N개만 확인하기 www.acmicpc.net 난이도 : 브론즈 3 태그 : 수학, 문자열, 사칙연산, 임의 정밀도 / 큰 수 연산 설명 수를 입력받고 이 수가 짝수라면 even을, 홀수라면 odd를 출력하는 문제입니다. 단순히 수를 입력받고 이를 2로 나눴을 때 나머지를 구할 경우, K (1

article thumbnail
[백준 1414번] [Kotlin] 불우이웃돕기
코딩테스트/Kotlin 2023. 4. 24. 16:11

https://www.acmicpc.net/problem/1414 1414번: 불우이웃돕기 첫째 줄에 컴퓨터의 개수 N이 주어진다. 둘째 줄부터 랜선의 길이가 주어진다. i번째 줄의 j번째 문자가 0인 경우는 컴퓨터 i와 컴퓨터 j를 연결하는 랜선이 없음을 의미한다. 그 외의 경우는 랜선 www.acmicpc.net 난이도 : 골드 3 태그 : 그래프이론, 최소 스패닝 트리, 문자열 설명 몇 가지 기믹이 들어간 최소 스패닝 트리 문제입니다. 해당 문제는 랜선을 가장 많이 기부할 수 있는 길이를 찾는 문제입니다. 따라서, 다솜이가 쓸 랜선은 냅두고, 남은 랜선을 줘야 하는데요. 컴퓨터는 연결된 다른 컴퓨터를 타고 들어가 네트워크를 사용할 수 있으므로, 전체 랜선의 길이에서 최소 스패닝 트리의 가중치의 합을..

article thumbnail
[백준 10953번] [Kotlin] A + B - 6
코딩테스트/Kotlin 2023. 4. 17. 18:20

https://www.acmicpc.net/problem/10953 10953번: A+B - 6 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 난이도 : 브론즈 3 태그 : 수학, 사칙연산, 파싱, 문자열 설명 새 언어를 배울 때 마다 한 번씩은 풀었던 A B 시리즈. C, Java, Python에 이어 이번엔 코틀린입니다. 문자열 처리가 들어가서 브론즈 3으로 난이도가 책정되었네요. 소스코드 fun main() { val T = readLine()!!.toInt() repeat(T) { val nm = readLine()!!.split(",") println(nm[0].toInt() + nm[1].toInt()) } }

article thumbnail
[백준 20064번] [Kotlin] HI-ARC
코딩테스트/Kotlin 2023. 4. 17. 17:18

https://www.acmicpc.net/problem/26004 26004번: HI-ARC 첫째 줄에 문자열 $S$의 길이 정수 $N$이 주어진다. ($1 \leq N \leq 100\,000$) 둘째 줄에 문자열 $S$가 주어진다. 문자열 $S$의 모든 문자는 영어 대문자이다. www.acmicpc.net 난이도 : 브론즈 3 태그 : 구현, 문자열 설명 HIARC 각각의 알파벳의 개수가 몇개인지 구하고, 그 중 최솟값을 출력하면 됩니다. 소스코드 import kotlin.math.min fun main() { val br = System.`in`.bufferedReader() val n = br.readLine().toInt() val input = br.readLine() val strings ..