문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/92341?language=kotlin 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 나의 풀이 정수가 몇가지 주어졌을때 그중에서 3개를 고르고 그 수들의 합이 0이 되면 삼총사가 되는 간단한 조합 문제이다. 순열 (Permutation) & 조합 (Combination) 순열이란? 수학에서 순열(Permutation) 또는 치환은 순서가 부여된 임의의 집합을 다른 순서로 뒤섞는 연산이다. 즉, 순열은 정의역과 공역이 같은 일대일 대응..
문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/92341?language=kotlin 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 나의 풀이 이 문제에는 친절하게도 다시 수행하라는 식으로 재귀함수를 사용해야 한다는 것을 알려주고 있다. 다만 문자열이 "올바른 괄호 문자열" 인지 판별하는 부분이 조금 헷갈렸는데 stack을 사용해서 '(' 일때 add 해주고 ')' 일때 pop을 해주는 방식을 통해 문자열이 올바른지 올바르지 않은지 판별했다. import java.util.* cl..
문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/92341?language=kotlin 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 나의 풀이 - 1차 tangerine에 있는 값을 숫자와 빈도수로 나눠서 map에 넣었다. 그리고 map을 value 값으로 정렬 후 k값이 0보다 작아질 때 까지 count하고 그 count 값을 출력해줬다. 테스트 케이스에서는 작동했지만 제출 후 채점에서 오류가 발생했다. class Solution { fun solution(k: Int, tang..
문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/92341?language=kotlin 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 나의 풀이 이 문제는 순열을 이용해야 한다. 다만 numbers에 있는 정수는 한번만 쓰여져야 함으로 add한 뒤에는 substring으로 제거해줬다. 문자가 0으로 시작하는것을 방지하고 중복을 허용하지 않기 위해 Mutableset을 Int로 만들고 순열이 완료가 되면 만들어진 set에 있는 숫자가 소수인지 판별하고 그 숫자를 출력해 주었다. cla..
문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/92341?language=kotlin 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 나의 풀이 이 문제는 numbers의 정수들의 첫자리가 앞으로 오게만 하면 가장 큰 수를 만들 수 있음으로 Comparator를 이용해서 정렬을 하였다 val comparator = Comparator { a, b -> a.compareTo(b) } 첫자리가 0 이면 꼬일 수 있음으로 let으로 해결 해주었다. class Solution { fun s..
문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/92341?language=kotlin 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 나의 풀이 이 문제는 순열 완전탐색을 이용해서 깊이 우선탐색으로 구현하였다. 알파벳 모음을 만들면서 word에 해당하는 알파벳이 나오면 탐색을 그만하고 count 값을 출력해주는 식으로 구현하였다. class Solution { var count = 0 val alphabet = "AEIOU".toList() val answer = ArrayList(..
문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/92341?language=kotlin 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 나의 풀이 이 문제는 모든 던전을 방문해야 함으로 깊이 우선 탐색으로 구현하고자 하였다. 재귀함수를 이용해 코드를 구현하였다. class Solution { var answer: Int = 0 var count = 0 val visited = BooleanArray(8) fun dfs(k: Int, index:Int, dungeons: Array) {..
문제 출처: https://school.programmers.co.kr/learn/courses/30/lessons/92341?language=kotlin 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 나의풀이 출력을 할때 id와 그에 맞는 닉네임을 MutableMap에 Key 와 Value로 넣어주었고 Leave가 아니면 key와 Value값을 넣어주었다. action이 Enter이던 Change이던 상관없이 값을 넣어주면 되서 생각보다 간단하였다. import java.util.* class Solution { fun solution(record..