목록알고리즘 (37)
seunghyun Note
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/xeQ9v/btsCZ9TB0gm/7CrFDGL3QHECpfDV0ag6TK/img.png)
링크 : https://school.programmers.co.kr/learn/courses/30/lessons/132267 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 더보기 정답은 아무에게도 말하지 마세요. 콜라 빈 병 2개를 가져다주면 콜라 1병을 주는 마트가 있다. 빈 병 20개를 가져다주면 몇 병을 받을 수 있는가..? 단, 보유 중인 빈 병이 2개 미만이면, 콜라를 받을 수 없다. 문제 풀이 수학적 사고가 필요하다!! class Solution { public int solution(int a, int b, int n) { int answer..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/znofD/btsC31NAp6Z/YYg0LlkPHastOhNucg2h3k/img.png)
링크 :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 total = brown + yellow; for (int x = 1; x = y && total == (x + 2) * (y + 2)) { answer[0] ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/qJWx4/btsC4JTn9T7/N2VhdLqwT06XGNB0by4mkK/img.png)
링크: https://school.programmers.co.kr/learn/courses/30/lessons/42885?language=cpp 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 2중 for문으로 풀어야한다고 생각했었는데 아니였따....😭 일단 sort를 한다. 끝값 + index(0으로 시작) = sum이 limit 보다 작다면 answer++를 해주고 index++를 해준다. 아닐 경우는 answer++만 해준다. import java.util.*; class Solution { public int solution(int[] p..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cxElxJ/btsC38Trc9U/qFD4zkfIBkND7YmvmNILSK/img.png)
링크 : https://school.programmers.co.kr/learn/courses/30/lessons/12985 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 1.홀수일 때 짝수로 바꿔주기 2. a==b가 같으면 1로 return 3. while 안에서 반복을 돌리고 2로 계속 나눠준다. 둘이 같다면 종료 class Solution { public int solution(int n, int a, int b) { int answer = 0; if(a % 2== 1 ) a++; if(b % 2== 1 ) b++; int cnt=0; Sy..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bLOjcu/btsCVIV0dyM/CWOSJ4sRkrKdeokmzOfCy1/img.png)
https://programmers.co.kr/learn/courses/30/lessons/12914 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 💻 알고리즘으로 접근 (Dynamic Programming) 수학과 컴퓨터 과학, 그리고 경제학에서 동적 계획법(動的計劃法, dynamic programming)이란 복잡한 문제를 간단한 여러 개의 문제로 나누어 푸는 방법을 말한다. 이것은 부분 문제 반복과 최적 부분 구조를 가지고 있는 알고리즘을 일반적인 방법에 비해 더욱 적은 시간 내에 풀 때 사용한다. (출처 : [위키백과]) 예제[피보나치 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/zLPmr/btsC1pH7pnJ/NCoTHbNrA54z3WDf12AcU1/img.png)
https://school.programmers.co.kr/learn/courses/30/lessons/176963 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 💻 3중 for문으로 문제를 해결하기! class Solution { public int[] solution(String[] name, int[] yearning, String[][] photo) { int[] answer = new int[photo.length]; for (int i = 0; i < photo.length; i++) { for (int j = 0; j < photo..