목록알고리즘 (116)
코드굽는 타자기
링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제설명 점화식, DP 문제풀이 피보나치수열 A_1 = 1 = | A_2 = 2 = | |+〓 A_3 = 3 = | | | + | 〓 + 〓 | ... | 로 끝나는 경우는 | | , 〓 2가지 경우를 만들고 〓로 끝나는 경우는 〓 | 1가지 경우를 만든다. A_n = A_n-1 + A_n-2에서 A_n의 경우의 갯수 중 | 로 끝나는 경우의 갯수가 A_n-1이고 A_n-1의 모든 경우의 갯수에 |를 붙일 수 있으므로 〓로 끝나는 경우의 갯수가 A_n-2이다 A_n-1의 |로 끝나는 경우의 갯수만큼 〓을..
링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제설명 점화식, DP 문제풀이 DP 2의 배수인 경우만 가능 제일 오른쪽 배치의 경우의 수가 3가지가 있다 편의상 각각 ↑↓≡으로 표시한다. A_2 위의 3가지경우 A_4 A_2*3 + Alpha가 있다 Alpha는 다음 2가지 경우가 있다 에서 파생되는 에서 파생되는 파생되는 Alpha는 ↑↓에서 파생되는 것을 알 수 있다. A_2, A_4, A_6을 트리 형식으로 표현해보면 A_4 = A_2 * 3 + Alpha([주황](1 * 2)) A_6 = A_4 * 3 + Alpha([주황](1 * 2) +..
링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제설명 순서대로 방 배정 문제풀이 한칸씩 건너뛰면 시간초과뜸 연결성이 있는 자료구조를 만들어야함 Union-Find 10^12의 배열을 만들순 없음 Map으로 구현 문제코드 import java.util.HashMap; public class Solution4 { public static HashMap m = new HashMap(); public static long getParent(long a) { //없는 방이면 if(!m.containsKey(a)) { //방 생성 후 다음방 연결 m.put(..
링크 SWEA[5607] 문제설명 큰 수 nCr%prime 문제풀이 페르마 소정리 최적화 분할 정복 메모이제이션 문제코드 import java.io.FileInputStream; import java.io.FileNotFoundException; import java.util.Scanner; public class Solution5607 { public static long prime = 1234567891; public static long[] fac = new long[1000001]; public static long pow(long a, long b) { if(b==0) { return 1; } else { long temp = pow(a,b/2); if(b%2==0) return (temp*te..