분류 전체보기 512

[백준] 6588번 > 골드바흐의 추측

www.acmicpc.net/problem/6588 6588번: 골드바흐의 추측 각 테스트 케이스에 대해서, n = a + b 형태로 출력한다. 이때, a와 b는 홀수 소수이다. 숫자와 연산자는 공백 하나로 구분되어져 있다. 만약, n을 만들 수 있는 방법이 여러 가지라면, b-a가 가장 큰 www.acmicpc.net 문제 1742년, 독일의 아마추어 수학가 크리스티안 골드바흐는 레온하르트 오일러에게 다음과 같은 추측을 제안하는 편지를 보냈다. 4보다 큰 모든 짝수는 두 홀수 소수의 합으로 나타낼 수 있다. 예를 들어 8은 3 + 5로 나타낼 수 있고, 3과 5는 모두 홀수인 소수이다. 또, 20 = 3 + 17 = 7 + 13, 42 = 5 + 37 = 11 + 31 = 13 + 29 = 19 + 2..

[백준] 15711번 > 환상의 짝꿍

www.acmicpc.net/problem/15711 15711번: 환상의 짝꿍 환상의 나라 디디랜드에서는 인연의 증표로 끈을 하나씩 가지고 있다. 그들은 지극히 평범한 방법으로 이 끈을 이용하여 어떤 두 사람이 환상의 짝꿍인지 판단하는데, 두 사람의 끈을 서로 이 www.acmicpc.net 문제 환상의 나라 디디랜드에서는 인연의 증표로 끈을 하나씩 가지고 있다. 그들은 지극히 평범한 방법으로 이 끈을 이용하여 어떤 두 사람이 환상의 짝꿍인지 판단하는데, 두 사람의 끈을 서로 이어붙이고 그 끈을 다시 길이가 소수인 끈 두개로 정확히 나눌 수 있다면 두 사람은 환상의 짝꿍이라고 한다. 하지만 그들은 길이가 소수인 두개의 끈으로 나눌 수 있는지 판단하는 것이 어려워서 대부분 서로가 인연임을 모르고 그냥 지..

[프로그래머스] 동적 계획법 > 정수 삼각형

https://programmers.co.kr/learn/courses/30/lessons/43105?language=python3 코딩테스트 연습 - 정수 삼각형 [[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] 30 programmers.co.kr 문제 설명 위와 같은 삼각형의 꼭대기에서 바닥까지 이어지는 경로 중, 거쳐간 숫자의 합이 가장 큰 경우를 찾아보려고 합니다. 아래 칸으로 이동할 때는 대각선 방향으로 한 칸 오른쪽 또는 왼쪽으로만 이동 가능합니다. 예를 들어 3에서는 그 아래칸의 8 또는 1로만 이동이 가능합니다. 삼각형의 정보가 담긴 배열 triangle이 매개변수로 주어질 때, 거쳐간 숫자의 최댓값을 return 하도록 solution ..

개발형 코테

주로 클라이언트-서버간의 통신을 주고받는 형식으로 개발을 진행 클라이언트 서버 HTTP 개요 파이썬 웹 요청 예제 : GET 방식 import requests target = "http://google.com" response = requests.get(url=target) print(response.text) get방식으로 google에 접속하여 가져온 응답(response)를 text형식으로 출력하였다. 개발형 코딩 테스트의 핵심 키워드 : REST API, JSON REST의 등장 배경 REST 개요 REST API JSON JSON 객체 사용 예제 import json user = { "id": "minchul", "password": "1234", "age": 25, "hobby": ["codi..

Interval Sum

구간 합 구간 합 빠르게 계산하기 문제 해결 아이디어 동일한 반복된 계산을 수행하지 않고 DP처럼 메모이제이션 기법을 이용하는 것 * 소스 코드 # 데이터의 개수 N과 전체 데이터 선언 n = 5 data = [10, 20, 30, 40, 50] # 접두사 합(Prefix Sum) 배열 계산 sum_value = 0 prefix_sum = [0] for i in data: sum_value += i prefix_sum.append(sum_value) # 구간 합 계산 (세 번째 수부터 네 번째 수까지) left = 3 right = 4 print(prefix_sum[right] - prefix_sum[left - 1])

Two Pointers

투 포인터 특정한 합을 가지는 부분 연속 수열 찾기 문제 해결 아이디어 * 소스 코드 n = 5 # 데이터의 개수 N m = 5 # 찾고자 하는 부분합 M data = [1, 2, 3, 2, 5] # 전체 수열 count = 0 interval_sum = 0 end = 0 # start를 차례대로 증가시키며 반복 for start in range(n): # end를 가능한 만큼 이동시키기 while interval_sum < m and end < n: interval_sum += data[end] end += 1 # 부분합이 m일 때 카운트 증가 if interval_sum == m: count += 1 interval_sum -= data[start] print(count)

[백준] 1753번 > 최단 경로

www.acmicpc.net/problem/1753 1753번: 최단경로 첫째 줄에 정점의 개수 V와 간선의 개수 E가 주어진다. (1≤V≤20,000, 1≤E≤300,000) 모든 정점에는 1부터 V까지 번호가 매겨져 있다고 가정한다. 둘째 줄에는 시작 정점의 번호 K(1≤K≤V)가 주어진다. www.acmicpc.net 문제 방향그래프가 주어지면 주어진 시작점에서 다른 모든 정점으로의 최단 경로를 구하는 프로그램을 작성하시오. 단, 모든 간선의 가중치는 10 이하의 자연수이다. 입력 첫째 줄에 정점의 개수 V와 간선의 개수 E가 주어진다. (1≤V≤20,000, 1≤E≤300,000) 모든 정점에는 1부터 V까지 번호가 매겨져 있다고 가정한다. 둘째 줄에는 시작 정점의 번호 K(1≤K≤V)가 주어진다..

유연한 컨트롤러

현재는 어떤 컨트롤러 interface를 사용할 것인지 지정되어 있기 때문에 컨트롤러에 따라 다른 interface를 사용하는 것이 불가능하다. 만약 각각의 컨트롤러에 따라 다른 interface를 사용하고 싶다면 이때 사용하는 것이 어댑터이다. 어댑터 패턴을 사용하여 프론트 컨트롤러가 다양한 방식의 컨트롤러 interface를 처리하도록 해보자. 핸들러 어댑터 : 중간에서 다양한 종류의 컨트롤러를 호출할 수 있는 어댑터 역할 핸들러 : 컨트롤러에 국한된 개념이 아니라 어떤 것이든 해당하는 종류의 어댑터만 있다면 다 처리 가능 어댑터 Interface supports : 어댑터 목록을 조회하여 해당 컨트롤러를 처리할 수 있는지 판단하는 메서드 True / False 값 반환 handle : 실제 컨트롤러..

Spring/Spring MVC 2021.04.28

[백준] 1735번 > 분수 합

www.acmicpc.net/problem/1735 1735번: 분수 합 첫째 줄과 둘째 줄에, 각 분수의 분자와 분모를 뜻하는 두 개의 자연수가 순서대로 주어진다. 입력되는 네 자연수는 모두 30,000 이하이다. www.acmicpc.net 문제 분수 A/B는 분자가 A, 분모가 B인 분수를 의미한다. A와 B는 모두 자연수라고 하자. 두 분수의 합 또한 분수로 표현할 수 있다. 두 분수가 주어졌을 때, 그 합을 기약분수의 형태로 구하는 프로그램을 작성하시오. 기약분수란 더 이상 약분되지 않는 분수를 의미한다. 입력 첫째 줄과 둘째 줄에, 각 분수의 분자와 분모를 뜻하는 두 개의 자연수가 순서대로 주어진다. 입력되는 네 자연수는 모두 30,000 이하이다. 출력 첫째 줄에 구하고자 하는 기약분수의 분..

단순하고 실용적인 컨트롤러

앞서 만든 컨트롤러는 서블릿 종속성을 제거하고 뷰 경로의 중복을 제거하여 컨트롤러를 설계했다. 하지만 컨트롤러 인터페이스를 구현해야하는 입장에서 보면 항상 ModelView객체를 생성하여 반환해야하는 부분은 번거롭다. 이를 실용성을 가지도록 변경해보자 새로운 구조 컨트롤러가 ModelView를 반환하는 것이 아니라 ViewName만 반환한다. 컨트롤러 Interface 회원 Form 컨트롤러 viewName만 반환해준다. 회원 Save 컨트롤러 모델을 parameter로 제공받기 때문에 새로운 회원객체를 만들어 model에 put해주면 된다. 역시 마찬가지로 viewName만 반환 회원 List 컨트롤러 모델을 처리하는 과정은 FrontController에서, 각 구현 컨트롤러는 모델에 put만 해주고 ..

Spring/Spring MVC 2021.04.21
반응형