https://www.acmicpc.net/problem/2179접두사가 가장 비슷한 문자열을 찾는 문제이다.문자열을 index와 함께 저장하고, 정렬한 후에 앞뒤로 문자열을 비교하면서 가장 큰 문자열을 찾는 방식을 사용했다.처음에는 이렇게 했는데 50%에서
https://www.acmicpc.net/problem/2665흰색칸만 이동할 수 있는 미로에서 (0, 0)에서 (n-1, n-1)로 이동할 때 검정 칸으로 길이 막혀있다면, 검정칸을 최소로 변환시켜서 길을 뚫어주는 문제이다.다익스트라라고 문제 유형이 있었는
https://school.programmers.co.kr/learn/courses/30/lessons/150365(x, y)에서 (r, c)까지 가는데 k만큼 걸리도록 가게 했을 때 명령중 사전순으로 가장 빠른 명령을 구하는 문제이다.BFS로 탐색하면서 거리
https://www.acmicpc.net/problem/30689미로가 있고, 각 칸에는 어디로 가야하는지 방향이 표시되어 있을때 미로를 탈출하지 못하는 경로가 있다면 해당 경로에 탈출지점을 넣어두려고 한다. 이때 설치 비용이 각 칸 별로 있을 때 설치비용을
https://school.programmers.co.kr/learn/courses/30/lessons/258711도넛, 막대, 8자 모양의 그래프 종류가 2개 이상 있고, 정점 하나를 새로 생성해서 해당 정점에서 나머지 그래프의 아무 정점으로 이어지는 간선을
https://www.acmicpc.net/problem/1461도서관에 책 갖다놓아야하는데 책의 위치는 직선상에 있으나 위치가 -10000부터 10000사이에 있다. 이 때 책을 한 번에 m권을 들 수 있을 때 책을 갖다놓는 거리가 가장 짧을 때의 거리를 찾
https://www.acmicpc.net/problem/1253수열을 주는데 수열의 숫자 중에서 다른 두 숫자의 합이랑 일치하는 숫자가 몇 개인가 세는 문제이다.투 포인터 쪽이 부족한 것 같아서 실버3 투포인터 문제 하나 풀고 도전했다.근데 생각보다 쉽게 풀
https://school.programmers.co.kr/learn/courses/30/lessons/77486다단계에서 칫솔 판매하는데 상급자에게 수익의 10%를 반올림한 것을 바쳐야하는 구조이다. 판매 실적이 주어질 때 수익이 어떻게 되는지 찾는 문제이다
https://www.acmicpc.net/problem/4485칸에 숫자가 있고, 0, 0에서 n, n까지 가는데 숫자의 합이 최소가 되도록 하는 문제이다.왼쪽 위에서 오른쪽 아래로 진행하길래 당연히 DP라고 생각했다. 문제를 제대로 안 읽은 것이다. 그래서
https://www.acmicpc.net/problem/1240n개의 노드와 n-1개의 간선이 있는 그래프에서 특정 두 노드 사이의 거리를 측정하고 싶은 문제이다.BFS로 해결할 수 있었다.tree라는 딕셔너리를 생성하고 이것을 이용해서 인접리스트를 만들었다
https://www.acmicpc.net/problem/2458키를 비교한 데이터를 주고 이 데이터를 기반으로 키 순위를 정확히 특정 가능한 사람의 수를 구하는 문제이다.플로이드 워셜 알고리즘을 사용해야할 것 같은데 어떻게 사용하는지 까먹어서 BFS 두 번
https://www.acmicpc.net/problem/24573월1일부터 11월30일까지 꽃이 한 번도 안 지게 꽃을 선택하는 문제이다.가로등 문제랑 비슷한줄알고 비슷하게 접근하려고 했다가 실패했다.기존까지의 문제와 다르게 기간이 정해진 문제라서 cm, c
https://www.acmicpc.net/problem/1865시간여행 하는데 웜홀타고가면 시간이 역행한다. 그래서 어떤 점에서 다른 점 타고타고 다시 시작점으로 돌아왔을 때 시간이 역행된 경우가 있는지 찾는 문제이다.벨만 포드 알고리즘을 활용해서 최소신장트
https://www.acmicpc.net/problem/2660월드컵 응원 모임이 있는데 서로 건너건너 아는 사이인 듯 하다. 그중에서 그 건너건너가 가장 작은 사람들을 골라서 건너건너의 길이의 최소값과 해당하는 사람들의 수, 그리고 해당 하는 사람들의 번호
https://www.acmicpc.net/problem/1389친구 관계를 주고, 케빈 베이컨의 숫자가 가장 작은 사람을 찾는 문제이다.모든 점에 대해서 BFS 돌면서 거리를 구했고, kevin이라는 리스트에 각 사람별로 거리합이 얼만큼 되는지 저장했다. 그
https://www.acmicpc.net/problem/11403인접행렬을 주고 노드들이 서로 연결되어 있는지 찾는 문제이다.모든 점에 대해서 BFS를 돌려서 BFS 탐색 기록에 노드가 있다면 1로 표시해주는 작업을 했다. 점이 100개라서 가능했나보다.
Spring 수업을 들으면서 현재 로그인한 사용자의 정보를 불러오는 로직이 반복되는 곳이 생겼다.위 코드에서 사용된 로직이 다른 서비스들에서도 같이 사용되었다. 그래서 따로 메서드로 만들어서 활용하고자 한다.CustomerService라고 사용자의 로그인, 가입을 관리
Spring boot 프로젝트에서 S3버킷을 사용해야 할 상황이 발생했다. S3버킷의 키 페어와 지역, 버킷 이름 등등을 코드에 작성해야 했는데 Github에 그대로 올리면 큰일 날 것 같아서 방법을 찾아보았다.https://gengminy.tistory.co
https://school.programmers.co.kr/learn/courses/30/lessons/42897단순한 DP로 접근했다. 단지 끝과 끝이 연결되어 있는. 그래서 돈의 길이가 짝수 일때와 홀수일 때를 나눠서 계산했다.rob라는 함수를 만들어서 이
https://school.programmers.co.kr/learn/courses/30/lessons/42898일부 못가는 구간이 있을 때 가장 빨리 갈 수 있는 최단경로의 개수를 구하는 문제이다.단순히 가장 빨리 가는 코스를 찾으라고 했으면 BFS로 풀었겠