[백준] 1181번: 단어 정렬 - Kotlin[코틀린]
·
알고리즘/Baekjoon
문제 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 풀이 먼저 코틀린의 HashSet을 이용하여 중복된 단어의 입력을 방지한다. 이 set을 정렬하기 위해 MutableList로 형변환 시켜준다. 이 리스트를 Comparator를 이용하여 정렬시켜주기 위해 sortWith() 함수를 사용한다. 두 단어의 길이가 같은 경우에는 알파벳 순서에 따라 정렬하고, 아닌 경우에는 길이에 따라 정렬해준다. 이 후, 정렬된 리스트를 출력하면 된다. 코드 fun main() { val br = System.`in..
[백준] 1316번: 그룹 단어 체커 - Kotlin[코틀린]
·
알고리즘/Baekjoon
문제 1316번: 그룹 단어 체커 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때 www.acmicpc.net 풀이 이 문제는 문제의 설명에 따라 구현하면 되는 문제이다. 우선 알파벳의 개수인 26을 길이로 하는 check 배열을 만들어준다. check[0] = a, check[1] 은 b, ... check[25] = z 를 의미하는 것이다. check[문자 - 'a']를 통해 문자를 체크 할 수 있다. 반복문에서 문자를 체크해주며 이번 문자가 전 문자와 같다면 continue로 생략한다. check 배열이 true이면 이 문자열은..