전체 글 2597

[Programmers] 경사로의 개수

문제 링크입니다: https://school.programmers.co.kr/learn/courses/30/lessons/214290 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 행렬 DP 문제였습니다. 알고리즘은 다음과 같습니다.1. 격자의 각 칸을 하나의 상태로 보고, d 수열 한 번의 이동을 전이로 표현합니다. 2. 각 상태에서 시작했을 때 경사 이동 한 번에 따른 이동 가능 경로의 수를 계산하여 전이 행렬 M를 구성합니다. 3. k번 연속해서 경사 이동을 수행한 후의 결과를 구합니다.2번에서 구한 전이 행렬 M을 k번 제곱한 M^k 4. 격자 내 모든 출발 상태에서의 경로 수를 Mk 행렬의 모..

[1장] JPA 소개

JPA (Java Persistence API)JPA는 자바 진영의 ORM 기술 표준ORM (Object-Relational Mapping) 프레임워크는 객체와 관계형 데이터베이스 간의 차이를 중간에 해결해 주는 프레임워크스프링 진영에서도 스프링 데이터 JPA라는 기술을 통해 JPA를 적극 지원전자정부 표준 프레임워크의 ORM 기술도 JPA 사용 JPA는 실행 시점에 자동으로 SQL을 만들어서 실행하기 때문에 JPA를 사용하는 개발자는 SQL을 직접 작성하는 것이 아니라 어떤 SQL이 실행될지 생각만 하면 되며 JPA가 실행하는 SQL은 쉽게 예측 가능경우에 따라 JPQL, native query 혹은 QueryDSL을 직접 작성해야 할 때도 많음 JPA를 사용하면 SQL 대신 객체 중심의 개발 방식을 ..

[Programmers] 봉인된 주문

문제 링크입니다: https://school.programmers.co.kr/learn/courses/30/lessons/389481 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 백준에서 K번째 수 구하기 문제 시리즈와 비슷한 문제였습니다. 알고리즘은 다음과 같습니다.1. 각 길이 L에 대해 전체 문자열 중에서 삭제되지 않은 주문의 개수를 구합니다. 2. 누적 개수를 이용해 n번째 주문이 어느 길이에 속하는지 판별합니다. 3. 해당 길이 내에서 사전순으로 정렬된 모든 문자열에 대해, 봉인된 주문을 제외하고 남은 문자열 중 n번째 주문을 찾아냅니다. 4. 찾은 숫자 값을 길이 L의 문자열로 변환하여 반..

[Programmers] 완전범죄

문제 링크입니다: https://school.programmers.co.kr/learn/courses/30/lessons/389480 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 이차원 배열 DP를 통해 A의 누적 흔적이 a, B의 누적 흔적이 b인 상태 가능 여부를 계산하면 되는 문제였습니다.  개발환경: Programmers IDE    지적, 조언, 질문 환영합니다! 질문 남겨주세요~

[Programmers] 서버 증설 횟수

문제 링크입니다: https://school.programmers.co.kr/learn/courses/30/lessons/389479 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 지문에서 주어진 대로 구현하면 되는 문제였습니다.  개발환경: Programmers IDE    지적, 조언, 질문 환영합니다! 질문 남겨주세요~

[Programmers] 홀짝트리

문제 링크입니다: https://school.programmers.co.kr/learn/courses/30/lessons/388354 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr Union Find 알고리즘 문제였습니다. 알고리즘은 다음과 같습니다.1. 각 노드에 연결된 간선의 개수인 degree를 기록하고 간선 정보를 이용해 각 노드들이 어떤 트리에 속하는지 파악합니다. 2. 각 노드가 홀짝 트리 또는 역홀짝 트리의 루트로 선택될 수 있는지 확인 후, 두 그룹으로 분류합니다.(node % 2) == (degree % 2) → 루트로 쓰일 수 있음(node % 2) != (degree % 2) → 루..

[Programmers] 지게차와 크레인

문제 링크입니다: https://school.programmers.co.kr/learn/courses/30/lessons/388353 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr BFS 알고리즘 문제였습니다.컨테이너 제거 방법은 두 가지이며 두 케이스 모두 고려하여 구현하면 되는 문제였습니다.요청 문자열 길이가 2인 케이스: 해당 알파벳과 일치하는 모든 컨테이너를 별도의 조건 없이 제거요청 문자열 길이가 1인 케이스현재 창고 상태에서 접근 가능한 컨테이너만 제거접근 가능하다는 의미는 해당 컨테이너의 4면 중 적어도 한쪽이 창고 외부 또는 창고 외부와 연결된 빈 공간과 연결되어 있어야 한다는 의미  개..

[Chapter 8] 왜 RNN보다 트랜스포머가 더 좋다는 걸까?

1. 연속적인 데이터와 토크나이징 (Tokenizing)연속적인 데이터는 우리 일상 속에서 흔히 볼 수 있으며 이러한 데이터를 처리하는 예시는 다음과 같음검색창의 자동 완성 기능: 사용자가 `엔비디아`라고 입력할 경우 자동 완성 AI는 이 연속된 글자 입력을 바탕으로 `엔비디아 주식`, `엔비디아 그래픽 카드` 등과 같이 가능한 검색어의 뒷부분을 예측주가 예측: 과거부터 현재까지의 주가, 거래량, 경제 지표 등의 연속적인 데이터를 분석하여 미래의 주가 움직임을 예측동영상에서의 동작 인식: 체조 선수의 연기를 다음 동영상에서 연속된 프레임을 분석하여 선수의 동작을 인식하고, 해당 난이도와 완성도를 바탕으로 점수 예측 이러한 연속적인 데이터를 효과적으로 처리하기 위해 개발된 것이 바로 RNN (Recurre..

[Programmers] 비밀 코드 해독

문제 링크입니다: https://school.programmers.co.kr/learn/courses/30/lessons/388352?language=cpp 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 서로 다른 5개의 번호를 입력하는 문제이므로 5중 반복문을 이용해 풀면 되는 구현 문제였습니다.  개발환경: Programmers IDE    지적, 조언, 질문 환영합니다! 질문 남겨주세요~

[Programmers] 안티세포

문제 링크입니다: https://school.programmers.co.kr/learn/courses/30/lessons/86054 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr a의 길이가 최대 20만이기 때문에 DP로 접근해야 하는 문제였습니다.늦잠님 블로그 글을 참고하여 풀었습니다.https://velog.io/@woolzam/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4Lv.4Java-%EC%95%88%ED%8B%B0%EC%84%B8%ED%8F%AC [프로그래머스/Lv.4][Java][C++] 안티세포출처 : https://school.prog..