꾸준히 재밌게
728x90
728x90
article thumbnail
[Java] 59.Spiral Matrix II - LeetCode Daily Challenge
코딩테스트/leetcode 2023. 5. 10. 21:15

https://leetcode.com/problems/spiral-matrix-ii/ Spiral Matrix II - LeetCode Can you solve this real interview question? Spiral Matrix II - Given a positive integer n, generate an n x n matrix filled with elements from 1 to n2 in spiral order. Example 1: [https://assets.leetcode.com/uploads/2020/11/13/spiraln.jpg] Input: n = 3 O leetcode.com 풀이 방향에 대한 변수와, 한 칸씩 체크해줄 변수를 지정해 준 뒤, 카운팅만 잘 해주면 되는 문제였..

article thumbnail
[Java] 타겟 넘버 - Lv2 프로그래머스 깊이 우선 탐색(DFS)

https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [알고리즘] 깊이 우선 탐색(DFS) [알고리즘] 깊이 우선 탐색(DFS) 깊이 우선 탐색 ( Depth-First Search ) 루트 노드에서 시작해 다음 분기(branch)로 넘어가기 전에 해당 분기를 완벽하게 탐색하는 방법 특징 1. 모든 노드를 방문하고자 하는 경우에 사용한다. 2. 단순 검 mag1c.tistory.com 프로그래머스 기준 전반적인 2레벨 문제나, 적당한 3레벨문제 정도..

article thumbnail
[Java] 숫자 짝꿍 - Lv1 프로그래머스

https://school.programmers.co.kr/learn/courses/30/lessons/131128 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 첫 풀이 class Solution { public String solution(String X, String Y) { String answer = ""; int[] x = new int[10]; int[] y = new int[10]; for(int i=0; i 0 && y[i] > 0) { int min = Math.min(x[i], y[i]); if(min > 1) { for(int ..

article thumbnail
[알고리즘] 깊이 우선 탐색(DFS)
CS/알고리즘 2023. 1. 29. 18:06

깊이 우선 탐색 ( Depth-First Search ) 루트 노드에서 시작해 다음 분기(branch)로 넘어가기 전에 해당 분기를 완벽하게 탐색하는 방법 특징 1. 모든 노드를 방문하고자 하는 경우에 사용한다. 2. 단순 검색 속도는 너비 우선 탐색(BFS)에 비해 느리다. 3. 검색이 아닌 순회를 할 경우 많이 사용한다. 공통 상위를 가지는 아래 리프 노드들을 한방에 잘라내는게 가능하기 때문에 백트래킹에 사용된다. 미로를 탐색할 때 한 방향으로 갈 수 있을 때까지 계속 가다가 더 이상 갈 수 없게 되면 다시 가장 가까운 갈림길로 돌아와서 다른 방향으로 다시 탐색을 진행하는 방법과 유사하다. 장점 1. 현 경로상의 노드들만 기억하면 되기 때문에 저장 공간의 수요가 비교적 적다. 2. 목표 노드가 깊은 ..

article thumbnail
[Java] 개인정보 수집 유효기간 - 2023 카카오 블라인드 Lv1 프로그래머스

문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 String형식의 날짜(2022.05.05)를 형변환 한 뒤, Day로 치환하여 풀었다. 모든 달의 날짜가 28일까지라는 것이 조건이었기 때문에, 월별로 날짜의 수가 다른 것을 고려할 필요가 없었다. Int로 형변환 하는 메서드 substring을 활용하여 년, 월, 일을 뽑아내어 int형태의 날짜로 변환하였다. 문제 조건에서 년도는 2000~2022년도 까지라고 했기때문에 뒤의..

마법의 엘리베이터 - 프로그래머스 LV2 Java 코딩테스트 연습

문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/148653 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 문제 설명에서 간단하게 추론할 수 있는것은 두 가지였다. 첫 번째는 1의 자리 수 부터 순차적으로 처리해야 한다는 것이다. 내려갔을 때는 상관이 없지만 올라갔을 때, 현재 층의 값이 증가하기 때문에, 큰 자리 수부터 계산하게 되면 한번 더 처리를 해야한다. 두 번째는 돌을 적게 쓰는 최적의 방법이다. 돌을 가장 적게 쓰는 방법은 5를 기준으로 5보다 크면 올라가고, 5보다 작다면..

article thumbnail
섬 연결하기 - 프로그래머스 LV3 JAVA

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해당 문제는 프로그래머스에서 탐욕법(Greedy) 카테고리 안에 있는 문제이다. 탐욕 알고리즘은 정리해 두었던 내용이다 ( 링크 ) 문제 풀이 아직 익숙치않은 Comparator 인터페이스로 이중배열인 costs의 값을 cost순으로 오름차순 했다는 것 정도다 Comparator의 사용법은 간단히 정리 해 두었다 ( 링크 ) 알고리즘 활용에 미숙해서인지 모르겠지만 내 생각엔 탐욕법이나 기타 알고리즘들을 사용해서 푼 것 같지는 않다 물론 이게 어떤 알고리즘이라고 한다면 공부를 더 깊게 해야 할 것 같다 1. 섬..

article thumbnail
보석 쇼핑 - 카카오 인턴십 2020 프로그래머스 LV3 JAVA

문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀기 바로 캐치한 것은 Set을 활용한 보석 종류 확인 ▶ 나중에 조건으로 활용 딱 이거 하나였다 그래서 엄청나게 헤딩을 하며 풀었던 것 같다 부끄러운 헤딩의 흔적들.. 더보기 더보기 import java.util.*; public class Diamond3 { int[] Solution(String[] gems) { //보석 종류 Set set = new HashSet(); for(String str : gems) set.add(str); System.out.println(set); //보석이 1..

728x90
728x90