본문 바로가기

프로그래머스

(19)
[알고리즘/Programmers] LV2. 모음사전 (Java) 오늘의 학습 키워드완전 탐색, DFS오늘의 회고1. 문제문제 URL 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 2. 해결 방안/** 84512 * 코딩테스트 연습 > 완전탐색 > 모음사전 */public class pgms_topkit_7_X { static List list; static String[] words = {"A", "E", "I", "O", "U"}; public static void main(String[] args) { list = new ArrayList(); System.out.println..
[알고리즘/Programmers] LV2. 전력망을 둘로 나누기 (Java) 오늘의 학습 키워드DFS오늘의 회고1. 문제문제 URL 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr2. 해결 방안import java.util.ArrayList;public class test_86971_X { static ArrayList[] graph; static int min; public static void main(String[] args) { // int[][] wires = {{1,2},{2,3},{3,4}}; int[][] wires = {{1,2},{2,7},{3,7},{3,4},{4,5},{6,..
[알고리즘/Programmers] LV2. 피로도 (Java) 오늘의 학습 키워드DFS오늘의 회고1. 문제문제 URL 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr2. 해결 방안/** 87946 * 코딩테스트 연습 > 완전탐색 > 피로도 */public class test_87946_X { static boolean[] visited; static int count = 0; public static void main(String[] args) { int[][] dungeons = {{80,20},{50,40},{30,10}}; System.out.println(solution(8..
[알고리즘/Programmers] LV2. 카펫 (Java) 오늘의 학습 키워드완전 탐색오늘의 회고1. 문제문제 URL 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 2. 해결 방안public static int[] solution(int brown, int yellow) { int answer[] = new int[2]; // 가로, 세로 int sum = brown + yellow; for(int i=3; i옐로우+갈색 합의 약수를 찾아 (가로,세로)로 나올 수 있는 값을 찾는다.옐로우가 최소 1칸이라면 가로, 세로 모두 3 이상이어야 한다. -> 가로, 세로 탐색 시 각 값이 3 이상이어야 한다..
[알고리즘/Programmers] LV2. 다리를 지나는 트럭 (Java) 오늘의 학습 키워드큐오늘의 회고1. 문제문제 URL 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr2. 해결 방안import java.util.*;/** 42583 * 코딩테스트 연습 > 스택/큐 > 다리를 지나는 트럭 */public class test_42583 { public static void main(String[] args) { int[] truck_weight = {7,4,5,6}; System.out.println(solution(2, 10, truck_weight)); } /** * 모든 트럭이..
[알고리즘/Programmers] LV1. 최소직사각형 (Java) 오늘의 학습 키워드완전탐색 해야할 줄 알았더니 사고력 문제..🤷🏻‍♀️오늘의 회고1. 문제문제 URL 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr2. 해결 방안성공 코드 public static int solution(int[][] sizes) { // 초기화 주의 : 가로 세로 중 최대값이 가로여야 하므로, 단순히 sizes의 첫번째 값들을 넣으면 안된다. int widthMax = 0; int heightMax = 0; for(int i=0; i케이스를 돌면서 가로,세로 중 더 큰 값을 가로로 ..
[알고리즘/Programmers] LV1. 소수 찾기 Programmers LV1. 소수 찾기 문제 설명 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.) 제한 사항 n은 2이상 1000000이하의 자연수입니다. 입출력 예 n result 10 4 5 3 사용 언어 Java 해결 방법 1. 2~j 이하까지 n이 j로 나눠지는지 판별 -> 시간 초과 2. 2~Math.sqrt(j) 이하까지 n이 j로 나눠지는지 판별 -> 2부터 진행하면 for문 sqrt 조건에 안걸려서 실패. 3. 에라토스테네스의 체로 판별 -> 통과 : n+1개의 원소를 갖는 배열을 하나 두고 2(i)부터 n까지 i의 배수를 배열에 체킹한다. 체킹되어있지..
[알고리즘/Programmers] LV1. 문자열 내림차순으로 배치하기 Programmers LV1. 문자열 내림차순으로 배치하기 문제 설명 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다. 제한 사항 str은 길이 1 이상인 문자열입니다. 입출력 예 s return "Zbcdefg" "gfedcbZ" 사용 언어 Java 해결 방법 1. 문자열 -> 문자 배열 2. 문자 배열을 정렬 (오름차순) 3. 오름차순 문자 배열 -> StringBuilder로 문자열로 변환 4. 문자열 reverse 알게된 것 문자열을 char 배열로 변경 : 문자열.toCharArray() StringBuilder의 문자열 뒤집는 메서드 : ..