문제 https://www.acmicpc.net/problem/5052 문제해설 전화번호들의 목록이 주어지면 목록이 일관성이 있는지 판단해주면 된다. 예를 들어 911 97 625 999 91 12 54 26 이렇게 3개의 번호가 주어진다면 이 목록은 일관성이 없는 것이다. 왜냐하면 3번째 번호로 전화를 거려고 911을 누르는 순간...
백준 12437 새로운 달력 (Small) java
문제 https://www.acmicpc.net/problem/12437 문제해설 새로운 달력을 만든다. 총 월수, 월당 일수, 주당 일수가 주어지면 달력을 만들기 위해 총 몇 줄이 필요한지 구하면 된다. 문제풀이 이 문제는 간단한 문제이다. 달력을 반복문을 이용해 한 달씩 몇 개의 줄이 필요한지 구한다. 다만 한 달씩 딱 떨어지게 끝나지 않으...
백준 12971 숫자 놀이 java
문제 https://www.acmicpc.net/problem/12971 문제해설 6개의 양의 정수 X1, X2, X3, P1, P2, P3가 있다. 위 수들은 P1 > X1, P2 > X2, P3 > X3 조건을 만족한다. N을 P1로 나눈 나머지가 X1, P2로 나눈 나머지가 X2, P3로 나눈 나머지가 X3 위의 조건을 만족하...
백준 6503 망가진 키보드 java
문제 https://www.acmicpc.net/problem/6503 문제해설 상근이는 망가진 키보드를 가지고 있다. 사용할 수 있는 키보드 키는 m개이고 상근이는 키보드 레이아웃을 바꿀 수 있다. 상근이가 입력하려는 문장이 주어질 때 키보드 레이아웃을 바꾸지 않고 입력할 수 있는 문자의 최댓값을 구하면 된다. 문제풀이 처음에 문제를 봤을 때...
스프링 시큐리티 OAuth
스프링 시큐리티 구조 추후 설명 추가 OAuth 코드 SecurityConfig.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 @RequiredArgsConstructor @EnableWebSecurity // 스프링 시큐리티 설정 활성화 p...
백준 18881 Social Distancing II java
문제 https://www.acmicpc.net/problem/18881 문제해설 소들 사이에서 COWVID-19 전염병이 돌고 있다. 감염된 소와의 거리가 R 이하라면 전염이 된다. 소들의 위치와 감염 여부가 주어지고 이 정보를 토대로 처음에 감염된 소가 몇마리인지 구하면 된다. 문제풀이 일단 소의 위치를 기준으로 오름차순으로 정렬을 시키고 ...
백준 2240 자두나무 java
문제 https://www.acmicpc.net/problem/2240 문제해설 자두나무 2그루에서 자두가 떨어진다. 떨어지는 열매를 최대한 많이 받아 먹으려고 한다. 열매는 떨어지는 것만 받아 먹을 수 있으며 1, 2번 나무 간 거리를 1초안에 움직일 수 있다. 또한 움직일 수 있는 횟수가 주어진다. 문제풀이 dp라는 느낌은 났지만 처음에 2...
백준 16197 두 동전 java
문제 https://www.acmicpc.net/problem/16197 문제해설 N*M 크기의 보드와 4방향으로 이루어진 버튼이 존재한다. 보드 위에는 동전과 빈칸, 벽이 있다. 동전은 2개가 주어지고 보드 위의 동전을 4방향으로 움직여 한 동전만 보드 밖으로 벗어나게 하는 최단 경우를 구하면 된다. 동전은 빈칸과 동전이 있는 곳으로만 이동할 ...
카데인 알고리즘(DP)
DP(Dynamic Programing) 카데인 알고리즘을 설명하기 전에 DP를 알아야 한다. 다이나믹 프로그래밍은 이름과는 전혀 상관없는 알고리즘이다. DP는 복잡하게 반복해야 하는 문제를 나누고 그 값들을 저장해 두었다가 재사용하는 알고리즘이다. DP를 아이들도 이해할 수 있게 설명한 방법이 있다.(출처) 1+1+1+1+1+1+1+1 이란 것을 ...
백준 20166 문자열 지옥에 빠진 호석 c++
문제 https://www.acmicpc.net/problem/20166 문제해설 격자안에 문자가 적혀있다. 격자안을 이동하며 방문했던 문자들을 이어서 문자열을 만든다. 이동할 수 있는 범위는 상하좌우, 4방향의 대각선이다. 한번 방문했던 곳도 다시 방문할 수 있다. 신이 만든 문자열 k개가 주어지고 이동해서 만들어진 문자열이 신이 만든 문자열과...