전체 글
-
[Algorithm] 프로그래머스 Lv3 단어 변환Etc./Algorithm 2021. 3. 13. 14:24
안녕하세요 rosepurple입니다. :) 오늘 푼 알고리즘 문제 풀이를 작성해보도록 하겠습니다! 문제 오늘은 아래 문제를 풀어봤습니다. (약 50분 소요) programmers.co.kr/learn/courses/30/lessons/43163 코딩테스트 연습 - 단어 변환 두 개의 단어 begin, target과 단어의 집합 words가 있습니다. 아래와 같은 규칙을 이용하여 begin에서 target으로 변환하는 가장 짧은 변환 과정을 찾으려고 합니다. 1. 한 번에 한 개의 알파벳만 바꿀 수 programmers.co.kr 풀이 int answer; boolean[] visited; dfs로 풀이하기 위해서 전역 변수로 answer과 visited를 선언해주었습니다. visited는 확인한 단어는 ..
-
[Algorithm] 프로그래머스 Lv2 전화번호 목록Etc./Algorithm 2021. 3. 10. 14:44
안녕하세요 rosepurple입니다. :) 오늘 푼 알고리즘 문제 풀이를 작성해보도록 하겠습니다! 문제 오늘은 아래 문제를 풀어봤습니다. (약 35분 소요) programmers.co.kr/learn/courses/30/lessons/42577 코딩테스트 연습 - 전화번호 목록 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조 programmers.co.kr 풀이 처음에는 이중 for문을 순회하면서 String들을 startsWith로 비교했는데, 효율성 검사에서 실패했습니다. 그러다가 문제 카테고리가 해시인 것을 파악하고 HashSet을 활용했습니다. 그리고 매개변수로 ..
-
[Algorithm] 프로그래머스 Lv2 더 맵게Etc./Algorithm 2021. 3. 9. 17:31
안녕하세요 rosepurple입니다. :) 오늘 푼 알고리즘 문제 풀이를 작성해보도록 하겠습니다! 문제 오늘은 아래 문제를 풀어봤습니다. (약 50분 소요) programmers.co.kr/learn/courses/30/lessons/42626 코딩테스트 연습 - 더 맵게 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같 programmers.co.kr 풀이 처음에는 익숙한 ArrayList로 풀려고 시도해봤는데 루프 문을 돌 때마다 정렬을 해주다 보니까 효율성에서 초과가 났습니다..! 그래서 질문하기 게시판을 참고해서 우선순위 큐로 풀었는데요! int an..
-
[Algorithm] 프로그래머스 Lv2 다리를 지나는 트럭Etc./Algorithm 2021. 3. 9. 00:55
안녕하세요 rosepurple입니다. :) 오늘 푼 알고리즘 문제 풀이를 작성해보도록 하겠습니다! 문제 오늘은 아래 문제를 풀어봤습니다. (약 40분 소요) programmers.co.kr/learn/courses/30/lessons/42583 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 트럭은 1초에 1만큼 움직이며, 다리 길이 programmers.co.kr 풀이 문제를 풀기 위해서 해당 인덱스 트럭이 지나가고 있는 위치, 다리 위에 있는 트럭들의 인덱스, 다리가 버틸 수 있는 남은 무게를 체크했습니다. int answer = 1; int truckIndex ..
-
[Algorithm] 프로그래머스 Lv2 큰 수 만들기Etc./Algorithm 2021. 2. 24. 14:31
안녕하세요 rosepurple입니다. :) 오늘 푼 알고리즘 문제 풀이를 작성해보도록 하겠습니다! 문제 오늘은 아래 문제를 풀어봤습니다. (약 45분 소요) programmers.co.kr/learn/courses/30/lessons/42883 코딩테스트 연습 - 큰 수 만들기 programmers.co.kr 풀이 처음에는 스택을 사용해서 풀어보려고 했습니다. 그런데 자바 스택은 peek 기능이 마지막 하나만 볼 수 있어서 로직이 꼬이는 것을 느꼈습니다. (인덱스 접근이 어렵기 때문에..) 그래서 ArrayList를 활용해서 풀었습니다! String[] strings = number.split(""); int[] numberArray = new int[number.length()]; for (int i ..
-
[Algorithm] 프로그래머스 Lv2 주식가격 (42584)Etc./Algorithm 2021. 2. 23. 12:59
안녕하세요 rosepurple입니다. :) 오늘 푼 알고리즘 문제 풀이를 작성해보도록 하겠습니다! 문제 오늘은 아래 문제를 풀어봤습니다. (약 10분 소요) programmers.co.kr/learn/courses/30/lessons/42584 코딩테스트 연습 - 주식가격 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00 programmers.co.kr 풀이 문제를 그냥 한 번 읽어봤을 때는 무슨 소린지 이해가 안 가더라고요... (주식을 안 해서 그런가요..?) 단순하게 생각해서, 처음 나온 주식 가격이 이후에 그 가격보다 적게..
-
[Algorithm] 프로그래머스 Lv2 기능개발 (42586)Etc./Algorithm 2021. 2. 19. 12:25
안녕하세요 rosepurple입니다. :) 오늘 푼 알고리즘 문제 풀이를 작성해보도록 하겠습니다! 문제 오늘은 아래 문제를 풀어봤습니다. (약 30분 소요) programmers.co.kr/learn/courses/30/lessons/42586 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr 풀이 그냥 직관적으로 풀었던 문제입니다. ArrayList answerList = new ArrayList(); int index = 0; int dayCount = 1; int remainFunctions = p..
-
[Algorithm] 프로그래머스 Lv2 조이스틱 (42860)Etc./Algorithm 2021. 2. 19. 00:08
안녕하세요 rosepurple입니다 :) 오늘 푼 알고리즘 문제 풀이를 작성해보도록 하겠습니다! 문제 오늘은 아래 문제를 풀어봤습니다. (약 1시간 소요) programmers.co.kr/learn/courses/30/lessons/42860 코딩테스트 연습 - 조이스틱 조이스틱으로 알파벳 이름을 완성하세요. 맨 처음엔 A로만 이루어져 있습니다. ex) 완성해야 하는 이름이 세 글자면 AAA, 네 글자면 AAAA 조이스틱을 각 방향으로 움직이면 아래와 같습니다. ▲ - 다 programmers.co.kr 풀이 문제를 보면 맨 처음엔 A로만 이루어져 있으며, 인자로 주어지는 name을 만들기 위해서 조이스틱을 몇 번 움직여야 하는지 알아내는 문제입니다. 처음에는 A에서 시작해서 name을 만들기 위해서 코..