티스토리

나침반
검색하기

블로그 홈

나침반

jh4995.tistory.com/m

C0MPAS 님의 블로그입니다.

구독자
0
방명록 방문하기

주요 글 목록

  • [C] 백준 - 19532번: 수학은 비대면강의입니다 3월 31일(금) - 브루트 포스(19532번) 19532번: 수학은 비대면강의입니다 정수 $a$, $b$, $c$, $d$, $e$, $f$가 공백으로 구분되어 차례대로 주어진다. ($-999 \leq a,b,c,d,e,f \leq 999$) 문제에서 언급한 방정식을 만족하는 $\left(x,y\right)$가 유일하게 존재하고, 이 때 $x$와 $y$가 각각 $- www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 문제점 x ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 풀이 #def.. 공감수 0 댓글수 0 2023. 3. 31.
  • [C] 백준 - 11478번: 서로 다른 부분 문자열의 개수 3월 30일(목) - 집합과 맵(11478번) 11478번: 서로 다른 부분 문자열의 개수 첫째 줄에 문자열 S가 주어진다. S는 알파벳 소문자로만 이루어져 있고, 길이는 1,000 이하이다. www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 자바에서는 쉽게 사용가능한 Hashset을 이용하면 빠르게 풀 수 있을 것 같지만, C에서는 직접 set을 구현해야하기 때문에 풀이하기 까다로울 것 같다 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 문제점 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 풀이 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ.. 공감수 0 댓글수 0 2023. 3. 30.
  • [C] 백준 - 9663번: N-Queen 3월 29일(수) - 백트랙킹 (9663번) 9663번: N-Queen N-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오. www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 백트랙킹 문제들을 전체적으로 복습하다보니, 골드4 문제지만 풀 수 있을 것 같아서 도전 - N x N인 체스판에 N개의 퀸이 서로를 공격할 수 없게 놓는 경우의 수를 최종적으로 구해야하는 문제이다 - 따라서 백트랙킹의 기본구조에서 if( == ) 부분은 변수 row가 변수 N과 같아진 경우, 즉 특정 위치에 퀸을 놓은 상황에.. 공감수 0 댓글수 0 2023. 3. 29.
  • [C] 백준 - 1931번: 회의실 배정 3월 28일(화)-그리디 알고리즘(1931번) 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 문제점 typedef struct { int start; int end; } meeting; meeting arr[100001]; int compare(const void* a, const void* b) { meeting m1 = *(meeting*)a; meeting m2 = *(meeting*)b; if (m1.end > m2.en.. 공감수 0 댓글수 0 2023. 3. 28.
  • [C] 백준 - 11047번: 동전 0 3월 27일(월) - 그리디 알고리즘(11047번) 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 주어진 K값을, 오름차순으로 입력되는 가치중에서 가장 큰 값부터 비교해야하므로 그리디 알고리즘 활용 - N과 K 그리고 동전들의 값들을 배열인 value[10]으로 입력받는다 - 오름차순으로 동전의 값들이 입력되었으므로, 가장 큰 값인 va.. 공감수 0 댓글수 0 2023. 3. 27.
  • [C] 백준 - 16139번: 인간-컴퓨터 상호작용 3월 24일(금) - 누적 합 (16139번) 16139번: 인간-컴퓨터 상호작용 첫 줄에 문자열 $S$가 주어진다. 문자열의 길이는 $200,000$자 이하이며 알파벳 소문자로만 구성되었다. 두 번째 줄에는 질문의 수 $q$가 주어지며, 문제의 수는 $1\leq q\leq 200,000$을 만족한다. 세 번째 www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 문제점 #define _CRT_SECURE_NO_WARNINGS #pragma warning(disable: 4996) #include char string[200001];.. 공감수 0 댓글수 0 2023. 3. 24.
  • [C] 백준 - 11660번: 구간 합 구하기 5 3월 23일(목) - 누적 합 (11660번) 11660번: 구간 합 구하기 5 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 M개의 줄에는 네 www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 누적 합 관련 문제이며, dp와 같은 형식의 풀이가 예상된다 - M개의 x1,y1,x2,y2를 입력받을때마다 매번 계산하는 과정으로 풀이를하면 시간초과가 예상된다 따라서 누적 합을 미리 계산해놓은 뒤, 입력받은 x1,y1,x2,y2에 해당하는 구간합을 구하는 방향으로.. 공감수 0 댓글수 1 2023. 3. 23.
  • [C] 백준 - 11659번: 구간 합 구하기 4 3월 21일(화) - 누적 합 (11659번) 11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 최초로 주어지는 N개의 수를 저장할 배열인 num[100001 ]외에도, 구간 합을 구하기 위해서는 누적 합을 저장하는 배열이 필요할 것 같다는 생각으로, sum[100001] 이라는 배열도 추가적으로 정의 - 반복문안에서 k=1부터 k=N까지 num 배열에 N개의 수를 입력받으면서, .. 공감수 0 댓글수 0 2023. 3. 21.
  • [C] 백준 - 11053번: 가장 긴 증가하는 부분수열 3월 20일(월) - 동적계획법 1 (11053번) 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이 www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 문제점 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 풀이 - 1 (참고 -> https://.. 공감수 0 댓글수 0 2023. 3. 20.
  • [C] 백준 - 10844번: 쉬운 계단 수 3월 17일(금) - 동적계획법 1 (10844번) 10844번: 쉬운 계단 수 첫째 줄에 정답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 지금까지 풀어본 동적계획법 문제중에서 dp를 어찌 설정해야할지 가장 많이 고민한 문제이다 - 처음에는 dp배열을 1차원으로 몇자리의 수인지만 인덱스값으로 표현했더니, 반복문에서 활용할 조건이 부족함 - 다음으로 dp배열을 2차원으로 바꾸고, [N개 자릿수][가장 처음 숫자]로 설정했더니 풀이과정에서 다시 꼬임 - 마지막으로 dp[N개 자릿수][가장 마지막 숫자 그 자체]로 설정했더니 풀이가 진행됨 - 위의 결정을 토대.. 공감수 0 댓글수 0 2023. 3. 17.
  • [C] 백준 - 2156번: 포도주 시식 3월 16일(목) - 동적계획법 1 (2156번) 2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규 www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 화요일날 풀었던 2579번: 계단 오르기 문제의 풀이와 거의 유사하다 - 연속 3잔을 마실 수 없고, (연속 3개의 계단을 밟을 수 없었고,) - 마실 수 있는 최댓값을 구해야하기 때문이다 (계단을 밟아서 얻을 수 있는 점수의 최댓값을 구해야했다) [C] 백준 - 2579번: 계단 오르기 3월 14일(화).. 공감수 0 댓글수 0 2023. 3. 16.
  • [C] 백준 - 1463번: 1로 만들기 3월 15일(수) - 동적계획법 1 (1463번) 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - N을 입력받고, N이 10^6보다 작거나 같으므로, dp[1000001]을 선언 - i가 2부터 N까지 도는 반복문안에서 dp[i]값을 정한다 - i가 5나 7처럼 소수인 경우에는 해당 i보다 작은 값 중에서 가장 근처에있는 2의배수 혹은 3의배수를 찾은 뒤 해당 배수의 연산횟수최솟값을 따라가면된다 ex) dp[5] = dp[4] + 1 -> 4의 연산횟수최솟값 + 1 -> (5-4-2-1) ex) dp[7] = dp.. 공감수 0 댓글수 1 2023. 3. 15.
  • [C] 백준 - 2579번: 계단 오르기 3월 14일(화) - 동적계획법 1 (2579번) 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 각각의 계단에 쓰여있는 점수는 stairs[301]배열에 입력받고, 최댓값은 dp[301]배열에 저장한다 - dp[1]에는 첫 번째 계단의 점수가 그대로 들어가므로 dp[1] = stairs[1] - dp[2]에는 첫 번째와 두 번째 계단을 모두 밟는 경우의 점수가 최대가 되므로 dp[2] = stairs[1] + .. 공감수 0 댓글수 0 2023. 3. 14.
  • [C] 백준 - 1932번: 정수 삼각형 3월 13일(월) - 동적계획법 1 (1932번) 1932번: 정수 삼각형 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 직전 RGB거리 문제와 동일한 형식으로 동적계획법을 이용한 풀이를 예상 - 2차원배열인 triangle에 정수 삼각형을 구성하는 정수들을 입력받음 - dp[1][1]에는 triangle [1][1] 값을, 다른 dp[i][j]값은 (dp[i-1][j-1] 과 dp[i-1][j] 중 더 큰 값) + triangle[i][j]로 설정 하지만 삼각형 모양이기 때문에 각각의 한 줄에.. 공감수 0 댓글수 0 2023. 3. 13.
  • [C] 백준 - 1149번: RGB거리 3월 10일(금) - 동적계획법 1 (1149번) 1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - N개의 집을 각각 빨강,초록,파랑으로 칠하는 비용은 2차원 배열인 color_cost[1001][4]로 입력받음 - 각각의 집에서 생긴 누적비용은 dp[i][1] - 첫번째 집은 누적비용이 없기 때문에 dp[1][1], dp[1][2], dp[1][3] 에 해당하는 color_cos.. 공감수 0 댓글수 1 2023. 3. 10.
  • [C] 백준 - 1912번: 연속합 3월 9일(목) - 동적계획법 1 (1912번) 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 순서대로 n개의 수를 입력받는 과정에서 0보다 크냐 아니면 0보다 작냐를 기준으로 계산을 나누어야한다고 생각 - 입력받은 수가 0보다 크면, 중간과정의 합을 넣어놓을 dp 배열에 그대로 더해서 넣는다 - 입력받은 수가 0보다 작으면, 다시 if - else로 나누어서 중간과정의 합을 0으로 초기화할 것 인지 아닌지를.. 공감수 0 댓글수 0 2023. 3. 9.
  • [C] 백준 - 9461번: 파도반 수열 3월 8일(수) - 동적계획법 1 (9461번) 9461번: 파도반 수열 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의 www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 동적계획법 문제의 특성상, 이어지는 점화식에서 관계를 가장 먼저 찾으려고 노력했다 - P(1) = 1 P(2) = 1 P(3) = 1 P(4) = 2 P(5) = 2 P(6) = 3 P(7) = 4 P(8) = 5 P(9) = 7 P(10) = 9 - P(6) = 3이 나왔으므로 3이 가장 빠르게 나올 수 있는.. 공감수 0 댓글수 0 2023. 3. 8.
  • [C] 백준 - 1904번: 01타일 3월 7일(화) - 동적계획법 1 (1904번) 1904번: 01타일 지원이에게 2진 수열을 가르쳐 주기 위해, 지원이 아버지는 그에게 타일들을 선물해주셨다. 그리고 이 각각의 타일들은 0 또는 1이 쓰여 있는 낱장의 타일들이다. 어느 날 짓궂은 동주가 지원이 www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 문제가 무슨 규칙인지 모르겠어서 일단 나열해봄 - N=1 인 경우 1개 (1) - N=2 인 경우 2개 (00, 11) - N=3 인 경우 3개 (001, 100, 111) - N=4 인 경우 5개 (0000, 0011, 1001, 1100, 1111) - N=5 인 경우 8개가 나오게되므로 피보나치 수열이라는.. 공감수 0 댓글수 0 2023. 3. 7.
  • [C] 백준 - 9184번: 신나는 함수 실행 3월 6일(월) - 동적계획법 1 (9184번) 9184번: 신나는 함수 실행 입력은 세 정수 a, b, c로 이루어져 있으며, 한 줄에 하나씩 주어진다. 입력의 마지막은 -1 -1 -1로 나타내며, 세 정수가 모두 -1인 경우는 입력의 마지막을 제외하면 없다. www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - 문제에서 주어진 조건들은 그대로 활용 - 입력된 a,b,c가 하나라도 0보다 작거나 같으면 1을, 하나라도 20을 초과한다면 w(20,20,20)를 return 한다 이렇게 a,b,c의 각각의 값들을 모두 1부터 20사이로 좁힌다 - 재귀로 w[a][b][c]를 돌리기전에, 동적계획법으로 dp[a][b][c].. 공감수 0 댓글수 0 2023. 3. 6.
  • 동적 계획법 1 - 24416번 3월 6일(월) - 동적 계획법 1 (24416번) 24416번: 알고리즘 수업 - 피보나치 수 1 오늘도 서준이는 동적 프로그래밍 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 오늘은 n의 피보나치 수를 재귀호출과 동적 프로그래밍 www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 문제점 x ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 풀이 #define _CRT_SECURE_NO_WARNINGS #pragma warning(disab.. 공감수 0 댓글수 0 2023. 3. 6.
  • 백트랙킹 - 14889번 3월 3일(금) - 백트랙킹 - 14889번 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 문제점 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 풀이 (참고 -> https://icanyoucanwecan.tistory.com/76 ) #define _CRT_SECURE_NO_WARNINGS #pragma warning(disable: 4996) #include #include #define MA.. 공감수 0 댓글수 0 2023. 3. 3.
  • 반복문 - 25314번 3월 2일(목) - 반복문 (25314번) 25314번: 코딩은 체육과목 입니다 오늘은 혜아의 면접 날이다. 면접 준비를 열심히 해서 앞선 질문들을 잘 대답한 혜아는 이제 마지막으로 칠판에 직접 코딩하는 문제를 받았다. 혜아가 받은 문제는 두 수를 더하는 문제였다. C++ www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 문제점 x ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 풀이 #define _CRT_SECURE_NO_WARNINGS #pragma warning(disable: 4996) #include int main(void) { int N; scanf("%d", &N); for (.. 공감수 0 댓글수 0 2023. 3. 2.
  • (*풀이진행중)백트랙킹 - 14889번 3월 2일(목) - 백트랙킹(14889번) 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 문제점 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 풀이 (3월 2일까지의 풀이 -> 틀림) #define _CRT_SECURE_NO_WARNINGS #pragma warning(disable: 499.. 공감수 0 댓글수 0 2023. 3. 2.
  • 백트랙킹 - 14888번 3월 1일(수) - 백트랙킹(14888번) 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, www.acmicpc.net ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 최초 생각 정리 - + - * / 4가지 각각의 경우에 해당하는 연산 main에서 진행하기에는 너무 복잡할 것으로 예상됨 그러므로 계산을 진행할 함수를 따로 빼서 진행 - 함수에서 N-1개의 연산자가 모두 입력된 이후에 max 와 min을 정하는 부분은 if에서 진행 - N-1.. 공감수 0 댓글수 0 2023. 3. 1.
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.