본문 바로가기
728x90
반응형

전체 글599

[프로그래머스/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 값이 0인 부분은 영역으로 카운트하면 안된다. 제일 넓은 영역을 구하는 것이므로 BFS를 사용하여 풀면 된다. package kakaoFriendsColoringBook; /** * https://programmers.co.kr/learn/courses/30/lessons/1829 * * 카카오프렌즈 컬러링북 - 카카오 기출 * * 값이 0인 부분은 카운트 하면 안.. 2022. 2. 26.
[프로그래머스/java] 게임 맵 최단거리 - BFS 사용 https://programmers.co.kr/learn/courses/30/lessons/1844 코딩테스트 연습 - 게임 맵 최단거리 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,1],[0,0,0,0,1]] 11 [[1,0,1,1,1],[1,0,1,0,1],[1,0,1,1,1],[1,1,1,0,0],[0,0,0,0,1]] -1 programmers.co.kr 시작위치에서 목적지까지 최단거리를 구하는 문제는 무조건 BFS로 풀어야한다. 최단거리를 구하는 문제는 BFS 만한 것이 없다. import java.util.*; class Solution { int[] dy = {1, 0, -1, 0}; int[] dx = {0, 1, 0, -1}; boolean[][] v.. 2022. 2. 25.
[프로그래머스/java] 멀쩡한 사각형 - 유클리드 호제법 사용 https://programmers.co.kr/learn/courses/30/lessons/62048 코딩테스트 연습 - 멀쩡한 사각형 가로 길이가 Wcm, 세로 길이가 Hcm인 직사각형 종이가 있습니다. 종이에는 가로, 세로 방향과 평행하게 격자 형태로 선이 그어져 있으며, 모든 격자칸은 1cm x 1cm 크기입니다. 이 종이를 격자 선을 programmers.co.kr 이 문제는 유클리드 호제법 공식을 써야한다. 유클리드 호제법 공식 1 int gcd(int a, int b) { int c; while(b) { c = a % b; a = b; b = c; } return a; } 유클리드 호제법 공식 2 public static int gcd(int p, int q) { if (q == 0) retu.. 2022. 2. 25.
[Spring] @Autowired 필드 명, @Qualifier, @Primary 여러 개의 동일한 빈이 동시에 있을 때, 해결하는 방법을 알아보자. 조회 대상 빈이 2개 이상일 때 해결 방법 @Autowired 필드 명 매칭 @Qualifier -> @Qualifier끼리 매칭 -> 빈 이름 매칭 @Primary 사용 @Autowired 필드 명 매칭 '@Autowired'는 타입 매칭을 시도하고, 이때 여러 빈이 있으면 필드 이름(파라미터 이름)으로 빈 이름을 추가 매칭한다. "기존 코드" @Autowired private DiscountPolicy discountPolicy; OrderServiceImpl.java 변경 전 @Autowired public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy dis.. 2022. 2. 25.
[프로그래머스/java] 최소 직사각형 https://programmers.co.kr/learn/courses/30/lessons/86491 코딩테스트 연습 - 최소직사각형 [[10, 7], [12, 3], [8, 15], [14, 7], [5, 15]] 120 [[14, 4], [19, 6], [6, 16], [18, 7], [7, 11]] 133 programmers.co.kr 이번 문제는 Min, Max만 잘 써도 쉽게 풀리는 문제이다 문제 설명 중에 "가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의 지갑을 만들면 모든 명함들을 수납할 수 있습니다. 하지만 2번 명함을 가로로 눕혀 수납한다면 80(가로) x 50(세로) 크기의 지갑으로 모든 명함들을 수납할 수 있습니다. 이때의 지갑 크기.. 2022. 2. 23.
[Spring] 조회 Bean이 2개 이상 발생하는 문제 @Autowired 는 타입(Type)으로 조회한다. @Autowired private DiscountPolicy discountPolicy; 타입으로 조회하기 때문에, 마치 다음 코드와 유사하게 동작한다. (실제로는 더 많은 기능을 제공한다.) 'ac.getBean(DiscountPolicy.class)' 스프링 빈 조회(https://drcode-devblog.tistory.com/330)에서 학습했듯이 타입으로 조회하면 선택된 빈이 2개 이상일 때 문제가 발생한다. 'DiscountPolicy' 의 하위 타입인 FixDiscountPolicy, RateDiscountPolicy 둘다 스프링 빈으로 선언해보자. FixDiscountPolicy.java package hello.core.discount.. 2022. 2. 22.
728x90
반응형