분류 전체보기 39

[백준] 1932번: 정수 삼각형

문제 내용 https://www.acmicpc.net/problem/1932 1932번: 정수 삼각형 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. www.acmicpc.net 풀이 시간 5분 풀이 과정 DP를 이용한 간단한 풀이 정답 코드 1. 파이썬 import sys sys_input=sys.stdin.readline n=int(sys_input()) arr=[list(map(int,sys_input().rstrip().split())) for _ in range(n)] dp=[[0]*i for i in range(1,n+1)] dp[0][0]=arr[0][0] for i in range(1,n): for j in range(..

최장 증가 부분 수열(LIS) 알고리즘

백준의 11053과 같은 유형을 흔히 `최장 증가 부분 수열(Longest Increasing Subsequence,LIS)라 하는데 이를 구하는 방법은 크게 두가지가 존재한다. 1. DP를 이용한 풀이 (가장 기본적 간단, 시간복잡도:O(n^2)) 파이썬 import sys sys_input=sys.stdin.readline n=int(sys_input()) arr=list(map(int,sys_input().rstrip().split())) dp=[1] for i in range(1,n): find=0 for j in range(i): if arr[i]>arr[j]: find=max(find,dp[j]) dp.append(find+1) print(max(dp)) 자바 import java.io.*; ..

[백준] 11053번: 가장 긴 증가하는 부분 수열

문제 내용 https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net 풀이 시간 10분 풀이 과정 DP를 이용해 해결 정답 코드 1. 파이썬 import sys sys_input=sys.stdin.readline n=int(sys_input()) arr=list(map(int,sys_input().rstrip().split())) dp=[1] for i in range(1,n)..

[백준] 1149번: RGB거리

문제 링크 https://www.acmicpc.net/problem/1149 1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net 풀이 시간 25분 풀이 방향성 백트래킹->(시간초과) -> DP->통과 정답 코드 1. 파이썬 import sys sys_input=sys.stdin.readline n=int(sys_input()) arr=[list(map(int,sys_input().rstrip().split())) for _ in range(n)] dp=[[arr[0][0],arr[0][1],..

여기서 부터 다시 풀기

코테 준비를 하던중 여러가지(SSAFY, 우테코 프리코스) 등등을 진행하다보니 코테에 손을 떼고 그저 스트릭만 유지하였다. 그러다보니 실력이 많이 녹슬고 잊어버린것도 많은거 같아서 클래스 4 문제부터 하루에 1,2문제씩 다시 풀어보면서 잊어버린 감각을 되찾아 보려고 한다. 거기에 추가적으로 풀이나 이런것도 포스팅해서 습관을 길러야겠다.

4주차 미션 [크리스마스 프로모션] 회고록

이번주차를 끝으로 길기도,짧기도했던 4주간의 프리코스 과정이 마무리되었다. 4주차 미션코드 깃허브 https://github.com/shin5774/java-christmas-6-shin5774 마지막도 신나게 코드리뷰 달려봅시다! (근데 private 레포는 어캐 리뷰하지...?) 주차 시작전 (0~2일차/코드리뷰) 0일차 이번에도 여느때와 다름없이 바로 코드리뷰를 시작하였다. 3주차는 본인 기준에서 만족스럽지 않은 결과였기에 여러사람들의 코드를 보는것이 더 중요하다고 여겨졌다! 그러면서 한편으로는 내 코드에 얼마나 많은 사랑의손길(?)들이 쌓일지 벌써 기대(?)되었다. 역시나 역시나 역시나.. 늘 세상에는 코드를 잘 짜는 사람은 넘쳐나고 거기에 나는 언제나 해당되지 않았다. 이번에는 다른사람들의 코드..

3주차 미션 [로또] 회고록

이번주차는 가장 만족스럽지 못한 한주였다. 시간을 많이 못냈던게 가장 큰 문제였던것 같다. 3주차 미션코드 깃허브 https://github.com/woowacourse-precourse/java-lotto-6/pull/1460 [로또] 신권일 미션 제출합니다. by shin5774 · Pull Request #1460 · woowacourse-precourse/java-lotto-6 의문점 및 고려사항 Controller의 기능이 과중되는 MVC패턴의 문제를 어떤 방식으로 해결할수 있을것인가 VIew 클래스에서의 검증은 진행되어야하는가? 도메인의 필드를 getter을 통해 가져와 도메인 github.com 부끄럽지만 코드리뷰 같이 해봐요! 부족한점이 많이 있을거라 날카로운 리뷰도 환영합니다! 주차 시작..

2주차 미션 [자동차 경주] 회고록

이번주차는 정말 다양한 경험을 했고 많은것을 느낀 한주였던것 같다. 2주차 미션코드 깃허브 https://github.com/woowacourse-precourse/java-racingcar-6/pull/1784 [자동차 경주] 신권일 미션 제출합니다. by shin5774 · Pull Request #1784 · woowacourse-precourse/java-racingcar-6 github.com 이번에도 서로 코드리뷰 해봤으면 좋겠어요!! 댓글이든 디코든 이야기 해주시면 서로 리뷰해봐요! 주차 시작전 (0일차/코드리뷰) 솔직히 1주차를 마무리하고 내 코드를 봤을때 나는 이코드가 상당히 완성도 높은 코드라고 생각했다. 자신이 1주일간 몰입해서 만든코드가 얼마나 아름답고 완벽해보였겠는가..! 하지만 ..

싱글톤 패턴(Singleton Pattern) 처음부터 끝까지

오늘도 평화롭게 프리코스 주차 미션을 하고있던 와중.. 코드리뷰에서 다른 참가자가 작성한 코드리뷰가 떠올랐다. 이건 싱글톤 패턴을 사용하기 적합한 클래스네요! 싱글톤에 대해 아무것도 몰랐던 당시의 나는 그냥 넘어갔지만 현재 작성중인 클래스가 말로만 듣던 싱글톤 패턴을 쓰기 좋은 예제라고 생각이 들었다! 하지만 난 싱글톤 패턴에 대해 아는것이 없었다. 그렇다고 모른채로 넘어갈수 없었기에 이번 기회에 제대로 알아보고 정리해보기로 했다! 나처럼 싱글톤 패턴을 처음 들어본 사람도 쉽게 알수 있도록 최대한 가볍게 적어보려고 해보겠다. 주의사항 본 작성자는 해당 정보가 오류가 있을수도 있다는것을 인지하고 있습니다. 혹시 글을 읽다가 잘못된 정보가 있다면 언제든지 알려주시면 감사하겠습니다! 그래서? 싱글톤 패턴이 뭔..

1주차 미션 [숫자 야구 게임] 회고록

회고록이라는걸 처음써봐서 어떻게 써야할지 잘 모르기에 느낌가는대로 써보려고 한다. 1주차 미션코드 깃허브 https://github.com/woowacourse-precourse/java-baseball-6/pull/2253 [숫자 야구 게임] 신권일 미션 제출합니다. by shin5774 · Pull Request #2253 · woowacourse-precourse/java-basebal 1주차 숫자 야구 게임 미션입니다. 처음이고 여러가지를 시도해봐서 미숙하지만 열심히 해봤습니다. github.com 서로 코드리뷰 해주면 좋을것 같습니다! 저도 열심히 할게요! 주차 시작전 이번 주차에서의 나의 목표는 '몰입해보자' 였다. 이는 작년 우테코 프리코스에 참가했을때 학업과 겹쳐서 제대로 미션을 수행하지 ..