반응형

카펫 : 완전 탐색 Lv2

https://school.programmers.co.kr/learn/courses/30/lessons/42842

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

class Solution {
    public int[] solution(int brown, int yellow) {
        int[] answer = new int[2];
        
        int w = (brown + yellow) / 3; //가로 최대 길이 = 전체 격자 개수 / 3
		int h = 3; //세로 최소 길이 = 3
		
		while(w >= h) {
			if(w*h == brown + yellow && 2*(w + h) == (brown + 4)) {
				answer[0] = w;
				answer[1] = h;
				break;
			}
			h++;
			w = (brown + yellow) / h;
		}
        
        return answer;
    }
}
반응형

'알고리즘 > 프로그래머스' 카테고리의 다른 글

최댓값과 최솟값  (0) 2024.03.27
올바른 괄호  (0) 2024.03.26
타겟 넘버  (0) 2024.03.23
구명보트  (0) 2024.03.23
햄버거 만들기  (0) 2024.03.20
반응형

타겟 넘버 : 깊이/너비 우선 탐색(DFS/BFS) Lv2

 

https://school.programmers.co.kr/learn/courses/30/lessons/43165

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

class Solution {
    int answer = 0;
    
    public int solution(int[] numbers, int target) {
        getDFS(numbers, 0, target, 0);
        return answer;
    }
    
    public void getDFS(int[] numbers, int depth, int target, int sum) {
		if(depth == numbers.length) {
			if(target == sum) answer++; 
		} else {
			getDFS(numbers, depth + 1, target, sum + numbers[depth]);
			getDFS(numbers, depth + 1, target, sum - numbers[depth]);
		}
	}
}
반응형

'알고리즘 > 프로그래머스' 카테고리의 다른 글

올바른 괄호  (0) 2024.03.26
카펫  (0) 2024.03.24
구명보트  (0) 2024.03.23
햄버거 만들기  (0) 2024.03.20
크레인 인형뽑기 게임  (0) 2024.03.19
반응형

구명보트 : 탐욕법(Greedy) Lv.2

 

https://school.programmers.co.kr/learn/courses/30/lessons/42885

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

import java.util.Arrays;

class Solution {
    public int solution(int[] people, int limit) {
        int answer = 0;
        
        // TODO Auto-generated method stub
		//int[] people = {10,20,70,80,90};
		//int limit = 100;
		//int boat=0;
		
		int idx = 0;
		Arrays.sort(people);
		
		for(int i= people.length-1; i >= idx; i--) {
			if(people[idx] + people[i] <=limit) {
				idx++;
			}
			
			answer++;
		}
		
		//System.out.println(boat);
        
        return answer;
    }
}

 

반응형

'알고리즘 > 프로그래머스' 카테고리의 다른 글

카펫  (0) 2024.03.24
타겟 넘버  (0) 2024.03.23
햄버거 만들기  (0) 2024.03.20
크레인 인형뽑기 게임  (0) 2024.03.19
기사단원의 무기  (0) 2024.03.18
반응형

연습문제 : 햄버거 만들기 Lv.1

 

https://school.programmers.co.kr/learn/courses/30/lessons/133502

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

import java.util.Stack;

class Solution {
    public int solution(int[] ingredient) {
        int answer = 0;
        Stack<Integer> s = new Stack<Integer>();

        for (int idx : ingredient) {
            s.push(idx);

            if (s.size() >= 4) {
                if (s.get(s.size() - 1) == 1 && s.get(s.size() - 2) == 3 && s.get(s.size() - 3) == 2 && s.get(s.size() - 4) == 1) {
                    answer++;
                    s.pop();
                    s.pop();
                    s.pop();
                    s.pop();
                }
            }
        }
        
        return answer;
    }
}
반응형

'알고리즘 > 프로그래머스' 카테고리의 다른 글

타겟 넘버  (0) 2024.03.23
구명보트  (0) 2024.03.23
크레인 인형뽑기 게임  (0) 2024.03.19
기사단원의 무기  (0) 2024.03.18
[1차] 비밀지도  (0) 2024.03.18
반응형

2019 카카오 개발자 겨울 인턴십 : 크레인 인형뽑기 게임 Lv.1

 

https://school.programmers.co.kr/learn/courses/30/lessons/64061

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

import java.util.*;

class Solution {
    public int solution(int[][] board, int[] moves) {
        int answer = 0;
        Stack<Integer> stack = new Stack<>();
        
        for(int i=0;i<moves.length;i++){
            int moveIdx = moves[i] - 1;
            
            for(int j=0;j<board.length;j++){
                int k = board[j][moveIdx];
            
                if(k == 0) continue;
                if(!stack.empty() && stack.peek() == k){
                    stack.pop();
                    answer += 2;
                } else {
                    stack.push(k);
                }
                
                board[j][moveIdx] = 0;
                break;
            }
        }
        
        return answer;
    }
}
반응형

'알고리즘 > 프로그래머스' 카테고리의 다른 글

구명보트  (0) 2024.03.23
햄버거 만들기  (0) 2024.03.20
기사단원의 무기  (0) 2024.03.18
[1차] 비밀지도  (0) 2024.03.18
대충 만든 자판  (0) 2024.03.14

+ Recent posts