목록전체 글 (129)
끄적끄적
출처 : https://www.acmicpc.net/problem/15686 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net abs 절댓값 구하는 함수 - cmath min - algorithm (헤더 안써도 써지는듯) 집과 치킨 좌표에 해당하는 값을 각각 넣어준다. dfs를 사용하여 치킨집의 모든 조합을 구한다. -> chicken_select 각 조합마다 거리를 계산하여 최솟값을 구한다. (각 조합별로 각 집마다 가장 가까운 치킨집을 구해야하므로 cal_distance 함수에서도 min..
출처 : https://www.acmicpc.net/problem/9251 9251번: LCS LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. www.acmicpc.net DP
출처 : www.acmicpc.net/problem/5430 문제 선영이는 주말에 할 일이 없어서 새로운 언어 AC를 만들었다. AC는 정수 배열에 연산을 하기 위해 만든 언어이다. 이 언어에는 두 가지 함수 R(뒤집기)과 D(버리기)가 있다. 함수 R은 배열에 있는 숫자의 순서를 뒤집는 함수이고, D는 첫 번째 숫자를 버리는 함수이다. 배열이 비어있는데 D를 사용한 경우에는 에러가 발생한다. 함수는 조합해서 한 번에 사용할 수 있다. 예를 들어, "AB"는 A를 수행한 다음에 바로 이어서 B를 수행하는 함수이다. 예를 들어, "RDD"는 배열을 뒤집은 다음 처음 두 숫자를 버리는 함수이다. 배열의 초기값과 수행할 함수가 주어졌을 때, 최종 결과를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케..
1. 괄호 (9012) 출처 : https://www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net 1. C++ 스택과 문자열을 이용하는 문제 ( 이면 push해주고, )이면 스택이 비지 않았을 때('('이 있다는 뜻) pop해줌. 반대로 스택이 비었으면 ('('이 없으므로 짝이 없어서 VPS가 아님) false +예전에 파이썬으로 푼 것 *stack 구현시 list 사용 input으로 받아진 문자열 s를 바로 list로 집어넣어준다..
출처 : https://www.acmicpc.net/problem/23304 23304번: 아카라카 주어진 문자열 $S$가 아카라카 팰린드롬이라면, AKARAKA를 출력한다. 만약 그렇지 않다면, IPSELENTI를 출력한다. www.acmicpc.net 문자열과 재귀 우선 해당 문자열이 팰린드롬인지 체크 후, S/2 의 길이의 접두사와 접미사도 팰린드롬인지 체크 이에 해당하지 않는 것은 전부 false 또한, 이러한 팰린드롬 유형의 문제를 풀 때는 문자열 길이가 홀수, 짝수일 때를 구분해야함.
출처 : www.acmicpc.net/problem/17298 문제 크기가 N인 수열 A = A1, A2, ..., AN이 있다. 수열의 각 원소 Ai에 대해서 오큰수 NGE(i)를 구하려고 한다. Ai의 오큰수는 오른쪽에 있으면서 Ai보다 큰 수 중에서 가장 왼쪽에 있는 수를 의미한다. 그러한 수가 없는 경우에 오큰수는 -1이다. 예를 들어, A = [3, 5, 2, 7]인 경우 NGE(1) = 5, NGE(2) = 7, NGE(3) = 7, NGE(4) = -1이다. A = [9, 5, 4, 8]인 경우에는 NGE(1) = -1, NGE(2) = 8, NGE(3) = 8, NGE(4) = -1이다. 입력 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 ..

💡 스프링 웹 개발 기초 정적 콘텐츠 resources/static 서버에서 변형 없이 파일을 그대로 웹브라우저에 내리는 것(Welcome Page처럼) MVC와 템플릿 엔진 가장 많이 하는 방식 서버에서 html을 동적으로 변형시켜서 내려주는 것 Model, View, ControllerView - 화면 Controller - 비즈니스 로직, 내부처리 (resources/template) Model - 화면에 필요한 것을 담아주기 API ViewResolver를 사용하지 않는 대신 HttpMessageConverter가 동작 @ResponseBody 객체 반환 → json 반환 {key, value} 💡 회원 관리 예제 - 백엔드 개발 일반적인 웹 애플리케이션 계층 구조 컨트롤러 - 웹 MVC의 컨트롤..
출처 : https://www.acmicpc.net/problem/2493 2493번: 탑 첫째 줄에 탑의 수를 나타내는 정수 N이 주어진다. N은 1 이상 500,000 이하이다. 둘째 줄에는 N개의 탑들의 높이가 직선상에 놓인 순서대로 하나의 빈칸을 사이에 두고 주어진다. 탑들의 높이는 1 www.acmicpc.net 왼쪽에서 오른쪽 방향으로 진행한다. 현재 탑과 stack 안에 있는 top을 비교하여 top보다 현재 탑이 크면 현재 탑에 부딪히므로 top은 필요가 없어서 pop하고 현재탑 push top보다 현재 탑이 작으면 pop시키지 않고 현재탑 push(우선순위는 거리이므로) 이때 top에 해당하는 탑을 pop하지 않는 이유는 뒤에 현재탑보다 크면서 top보다 작은 탑이 존재할 수 있기 때문 ..