만족은 하되 안주하지는 말자

기록해야 기억한다

프로그래밍/programmers&bj 78

[JAVA] 카카오프렌즈 컬러링북

문제 https://programmers.co.kr/learn/courses/30/lessons/1829 코딩테스트 연습 - 카카오프렌즈 컬러링북 6 4 [[1, 1, 1, 0], [1, 2, 2, 0], [1, 0, 0, 1], [0, 0, 0, 1], [0, 0, 0, 3], [0, 0, 0, 3]] [4, 5] programmers.co.kr 내 풀이 import java.util.LinkedList; import java.util.Queue; class Solution { public static int[][] arrow = {{-1, 0}, {0, 1}, {1, 0}, {0, -1}}; public int[] solution(int m, int n, int[][] picture) { int[] ..

[JAVA] 문자열 압축

문제 https://programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr 내 풀이 import java.util.*; class Solution { public int solution(String s) { int answer = s.length(); int maxLength = s.length() / 2; for (int i=1; i

[JAVA] 기능개발

문제 https://programmers.co.kr/learn/courses/30/lessons/42586?language=java# 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr 분류는 스택/큐 내 풀이 간단한 날짜 계산과 큐를 이용해 풀어야하는 문제. 꼭 큐가 필요하진 않지만 나는 분류대로 자료구조 이용해 풀어야겠다. import java.util.Queue; import java.util.LinkedList; import java.util.ArrayList; import java.util.Lis..

[JAVA] 완주하지 못한 선수

문제 https://programmers.co.kr/learn/courses/30/lessons/42576?language=java 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수 programmers.co.kr 풀이 프로그래머스 문제는 전부 파이썬으로 풀었다. 이제는 자바로 풀어보자. ㅎ import java.util.*; class Solution { public String solution(String[] participant, String[] completion) { String answer = ""; Map co..

[Python] 프로그래머스 지형 이동

문제 programmers.co.kr/learn/courses/30/lessons/62050 코딩테스트 연습 - 지형 이동 [[1, 4, 8, 10], [5, 5, 5, 5], [10, 10, 10, 10], [10, 10, 10, 20]] 3 15 [[10, 11, 10, 11], [2, 21, 20, 10], [1, 20, 21, 11], [2, 1, 2, 1]] 1 18 programmers.co.kr 테마 구현, 최소신장트리, BFS 아이디어 1. 사다리를 쓰지 않고 넘나들수 있는 영역들을 BFS로 각각 구한다. 2. 구분 영역 간에는 사다리를 놓아야 하는데, 사다리를 놓을 때의 비용이 최소인 Dictionary 을 만든다. 3. 사전을 비용 순으로 정렬한 뒤, 영역간의 최소신장트리를 만드는 크루..

[python] 백준 1759번: 암호 만들기 (백트래킹)

문제 www.acmicpc.net/problem/1759 1759번: 암호 만들기 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. www.acmicpc.net 테마 DFS & 백트래킹 아이디어 1. 들어온 암호 문자들을 오름차순 정렬한다. 2. DFS 를 통해 l 길이만큼의 암호를 만든다. 3. 길이 l 인 경우이면서 모음이 최소 1개, 자음이 최소 2개인 경우 출력한다. 4. 그렇지 않은 경우 백트래킹을 통해 다음 번 경우의 수를 찾는다. 5. 이를 반복한다. 코드 from sys import stdin from copy import deepcopy l,c = ma..