전체 글 188

[2025.03.13] 다리를 지나는 트럭

문제 설명트럭 여러 대가 강을 가로지르는 일차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야합니다. 다리에는 트럭이 최대 bridge_length대 올라갈 수 있으며, 다리는 weight 이하까지의 무게를 견딜 수 있습니다. 단, 다리에 완전히 오르지 않은 트럭의 무게는 무시합니다. 예를 들어, 트럭 2대가 올라갈 수 있고 무게를 10kg까지 견디는 다리가 있습니다. 무게가 [7, 4, 5, 6]kg인 트럭이 순서대로 최단 시간 안에 다리를 건너려면 다음과 같이 건너야 합니다.경과 시간다리를 지난 트럭다리를 건너는 트럭대기 트럭0[][][7, 4, 5, 6]1~2[][7][4, 5, 6]3[7][4][5, 6]4[7][4, 5][6]5[7, 4][5]..

11강 과제 : 블루트포스 최적화

⊙ 블루트포스로 풀이한 코드의 문제점을 알고 최적화할 수 있다.⊙ 코드 내에서 어떤 부분이 불필요한 연산인지 골라낼 수 있다.더보기코드스니펫[기존 코드]int solution2(int n){ int answer = 0; for (int a = 1; a [최적화 코드]int solution2_modify(int n){ int answer = 0; for (int a = 1; a   과제 내용수업 시간 중 블루트포스로 풀이한 문제가 하나 있었는데 아래와 같다.Q. 정수 n(1≤n≤100)이 주어질 때, 다음 식을 만족하는 (a, b, c)의 개수를 구하라. 단, a, b, c는 1이상 100 이하인 자연수로 가정하고 a, b, c가 중복될 수 있음.a + b^2 + c^3 = n 이 문제를 풀기 위해 a, ..

Coding Test 2025.03.11

[2025.03.11] 숫자 변환하기

문제 설명자연수 x를 y로 변환하려고 합니다. 사용할 수 있는 연산은 다음과 같습니다.x에 n을 더합니다.x에 2를 곱합니다.x에 3을 곱합니다.자연수 x, y, n이 매개변수로 주어질 때, x를 y로 변환하기 위해 필요한 최소 연산 횟수를 return 하도록 solution 함수를 완성해주세요. 이 때 x를 y로 만들 수 없다면 -1을 return 해주세요.  제한사항11  입출력 예xynresult설명104052x에 2를 2번 곱하면 40이 되고 이때가 최소 횟수입니다.1040301x에 n인 30을 1번 더하면 40이 되고 이때가 최소 횟수입니다.254-1x를 y로 변환할 수 없기 때문에 -1을 return 합니다.5530x와 y가 같으므로 연산할 필요가 없어 0을 return합니다.  문제 풀이풀이..

블루트포스

⊙ 학습 목표더보기코드스니펫 블루트포스란?블루트포스(Brute Force)는 가능한 모든 경우의 수를 하나도 빠짐없이 전부 시도해보는 것이다. 블루트포스 기법은 보통 자료의 크기가 작거나, 최적화된 알고리즘을 떠올리기가 어려울 때, 혹은 정답이 정말 맞는지 확인하기 위해 사용되곤 한다. 하지만 n이 매우 커진다면 시간복잡도가 매우 커서 시간초과가 발생할 수도 있다.예를 들어 n개의 원소의 부분집합의 개수는 2^n이고 순열의 개수는 n!(팩토리얼)이다. n이 10 정도만 되어도 블루트포스로 충분히 구현할만 하지만 그보다 훨씬 더 큰 수가 n이 된다면 시간 복잡도가 매우 커지기 때문에 이는 주의해야 한다. 그래서 제한사항을 확인해보고 블루트포스로 풀이할 수 있을지 생각해봐야 한다.  블루트포스 사용 전략블루..

Coding Test 2025.03.11

[2025.03.10] 롤케이크 자르기

문제 설명철수는 롤케이크를 두 조각으로 잘라서 잘라서 동생과 한 조각씩 나눠 먹으려고 합니다. 이 롤케이크에는 여러가지 토핑들이 일렬로 올려져 있습니다. 철수와 동생은 롤케이크를 공평하게 나눠먹으려 하는데, 그들은 롤케이크의 크기보다 롤케이크 위에 올려진 토핑들의 종류에 더 관심이 많습니다. 그래서 잘린 조각들의 크기와 왈려진 토핑의 개수에 상관없이 각 조각에 동일한 가짓수의 토핑이 올라가면 공평하게 롤케이크가 나누어진 것으로 생각합니다. 예를 들어, 롤케이크에 4가지 종류의 토핑이 올려져 있다고 합시다. 토핑들을 1, 2, 3, 4와 같이 번호로 표시했을 때, 케이크 위에 토핑들이 [1, 2, 1, 3, 1, 4, 1, 2] 순서로 올려져 있습니다. 만약 세 번째 토핑(1)과 네 번째 토핑(3) 사이를..

2025.03.07(금)

Quest[Project] C++로 구현하는 언리얼 엔진 5 기반 슈터 게임 프로젝트UI 디자인 및 간단한 기능 구현오프닝 UI를 디자인하였다. 팀원 분이 구현해놓은신 UI 기능 위에 디자인만 얹혀서 제작하였다.작게 세트장을 만들어서 카메라로 비추게 하고 조명을 꺼서 분위기를 만들었다. 게임에서 중요한 역할을 하는 드론도 배치해주었다. 기존에 사용하던 GameMode로는 원하는 카메라를 설정해줄 수 없고 플레이어를 생성하는 문제가 있어서 GameMode도 새로 만들어 주었다. 현재 레벨에만 적용할 것이기 때문에 World Settings에 새로운 GameMode를 적용한다. 따로 작성한 코드는 없었다. 프로젝트 마무리하고 발표를 마쳤다.

TIL 2025.03.07