~2023 (160) 썸네일형 리스트형 [Python] 백준 2156번 문제, 포도주 시식 https://www.acmicpc.net/problem/2156 2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규 www.acmicpc.net 문제에서 원하는 답은 최대로 마실 수 있는 포도주의 양이다. 그런데 주어진 포도주 잔의 개수인 n에 대하여 DP[n]이 최대값이라는게 보장되지 않는다. 따라서 Top-down 방식을 통해 현재 포커싱 중인 index에는 다음을 비교해야 한다. (1) 기존 최대 포도주 양 (2) 자신의 최대값 (1)은 DP[n-1]이며, (2)는 MAX(비연속, 연속)에서 큰 값에 wine[index]를 더해주면 된.. [Python] 백준 12865번 문제, 평범한 배낭 https://www.acmicpc.net/problem/12865 12865번: 평범한 배낭 첫 줄에 물품의 수 N(1 ≤ N ≤ 100)과 준서가 버틸 수 있는 무게 K(1 ≤ K ≤ 100,000)가 주어진다. 두 번째 줄부터 N개의 줄에 거쳐 각 물건의 무게 W(1 ≤ W ≤ 100,000)와 해당 물건의 가치 V(0 ≤ V ≤ 1,000) www.acmicpc.net 이 문제는 동적 프로그래밍 이용해 중복된 연산을 줄여 시간을 단축해야하는 문제이다. N, K까지의 최적값들을 계산해 최종 N, K일 때 최고의 가치가 몇 일지를 구해야 한다. 따라서 DP의 크기는 [N+1][K+1]이다. ([넣을 수 있는 물품 수][배낭 최대 무게 한도]) 배낭 문제 알고리즘에 대한 DP 연산식은 다음과 같다. (.. [Python] 백준 2178번 문제, 미로 탐색 https://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 너비 우선 탐색(BFS)를 이용하여 미로를 빠져 나가기 위한 최소 이동 횟수를 구하는 문제이다. 그래서 BFS를 위해 방문 정보를 담는 visited와 queue는 무조건 있어야 한다. blocks을 초기화 할 때 좌우상하 이동을 위해 padding을 주었고(Index Out 에러 방지) blocks에 칸이 1인지 0인지를 입력 받은 후에 BFS 메소드에 (N, M, blocks. queue, visited)를 넘겨 주어 출구인.. [JAVA] 백준 17478번 문제, 재귀함수가 뭔가요? https://www.acmicpc.net/problem/17478 17478번: 재귀함수가 뭔가요? 평소에 질문을 잘 받아주기로 유명한 중앙대학교의 JH 교수님은 학생들로부터 재귀함수가 무엇인지에 대하여 많은 질문을 받아왔다. 매번 질문을 잘 받아주셨던 JH 교수님이지만 그는 중앙대 www.acmicpc.net 재귀함수가 어떻게 작동되는지만 알면 쉽게 풀 수 있는 문제이다. 나는 재귀 함수 + format 형식에 맞게 출력하기 위해 printTab()이라는 메소드를 만들어 "____"를 재귀 호출 횟수만큼 출력되게 만들었다. 재귀함수가 종료시 "재귀함수는 자기 자신을 호출하는 함수라네"를 출력해야 하며, 주의할 점은 "을 출력하기 위해서 \"(역슬래쉬)를 해줘야한다는 점이다. 또한, "라고 답변하였지".. [JAVA/PYTHON] 백준 1158번 문제, 요세푸스 문제 https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 1부터 N까지의 수를 가진 리스트가 있는데 K 씩 증가하는 인덱스에 있는 사람들을 제거하여 그 순서대로 출력하면 되는 문제이다. K번째 자리 사람을 제거하면 리스트가 줄어들기 때문에 가변형 배열인 list를 사용했다. 현재 삭제할 인덱스 변수를 선언해 리스트에서 현재 인덱스에 있는 요소를 삭제해 제거된 사람이 모여 있는 변수에 저장하면 된다. 그래서 현재 삭제할 인덱스는 K번째 커지지만, 리스트 검색 범위를 넘어가면 안 되기 때문에 리스트로 나누었을 때 나머지가 현재 인덱스라는 걸 의미하.. [JAVA] 백준 2822번 문제, 점수 계산 https://www.acmicpc.net/problem/2822 2822번: 점수 계산 8개 줄에 걸쳐서 각 문제에 대한 참가자의 점수가 주어진다. 점수는 0보다 크거나 같고, 150보다 작거나 같다. 모든 문제에 대한 점수는 서로 다르다. 입력으로 주어지는 순서대로 1번 문제, 2번 문 www.acmicpc.net 2차원 배열을 사용했기 때문에 Arrays.sort()에서 두번째 매개변수에 조건식을 써줘야 한다. 이를 통해서 다차원 배열도 원하는 조건으로 정렬이 가능하다. 다차원 배열을 테이블로 만들자면 다음과 같다 0 1 0 점수1 1 1 점수2 2 2 점수3 3 행이 1차원 배열이고 열이 2차원 배열을 뜻한다. 위 배열을 정렬하기 위해서는 [i][0]번째 값들을 비교해야 한다. 그래서 (int[].. [JAVA/PYTHON3] 백준 7568번 문제 - 덩치 비교하기 https://www.acmicpc.net/problem/7568 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 키와 몸무게를 비교해 순위를 정하는 문제이다. 순위를 정하는 기준은 덩치가 크고 작냐인데 A와 B가 가진 키와 몸무게를 비교해 두 개의 수치가 전부 커야 덩치가 크다고 할 수 있다. 그래서 키와 몸무게가 크면 순위가 높은 것이기 때문에 rank는 변하지 않으며, 키와 몸무게가 모두 작아야 순위가 낮아지기 때문에 rank++를 해준다. JAVA weight: 키와 몸무게를 저장하는 배열.. [MySQL] MySQL 8.0에서 스키마, 테이블 구조 보기 MySQL 명령어로 내가 만든 테이블의 구조를 보는 방법을 알아보자 데이터베이스를 선택한 다음에 어떤 테이블들이 있는지 확인해보자 mysql> use [데이터베이스] mysql> show tables; 그럼 테이블 리스트가 나타날 것인데 구조가 궁금한 테이블을 선택해 다음 명령어를 입력해주면 된다. mysql> DESC [선택한 테이블명]; 보여주는 속성명은 다음과 같다. [Field, Type, Null, Key, Default, Extra] 이전 1 ··· 12 13 14 15 16 17 18 ··· 20 다음