전체 글 146

백준 2785번: 체인 - C++ 탐욕(Greedy)알고리즘

https://www.acmicpc.net/problem/2785   문제를 이해하는데 시간이 좀 걸렸다. 주어진 체인들의 고리를 풀어서 연결하여 하나의 긴 체인으로 만들어야 한다.가장 적은 수의 고리를 사용하려면 가장 짧은 체인의 고리를 풀어 가장 긴 체인들을 묶는데 사용해버리는 것이 유리. 가장 짧은 체인부터 사용하게 될 경우 결과적으로 연결해야하는 체인의 수가 줄어들어 더 적은 고리를 사용할 수 있다.체인을 모두 연결했을 때, 사용하던 체인의 고리가 남아버리는 것은 상관 없다. 길이가 각각 7 3 1 8 9 4 인 체인 6개가 입력으로 들어왔을 때,제일 앞에서부터 순서대로 묶어버리는 경우길이가 7인 체인의 고리 하나를 사용해 3 1을 묶고,그 다음 8 체인과, 3과 1이 묶여서 4가 된 체인을 또 ..

CS/코딩테스트 2025.03.24

게임 수학 - 삼각 함수

1. 삼각함수(Trigonometric function)직각삼각형(Right-Angled Triangle)의 삼요소 삼각비(Trigonomertric Ratio)직각 삼각형을 구성하는 세 요소 중 두 요소에 대한 비의 값 직각삼각형의 3개의 변 중 2개의 변에 대한 비를 삼각비라고 하며,총 6가지 중 중요하게 사용되는 것이 사인, 코사인, 탄젠트 3가지.  $sin=\frac{Opposite}{Hypotenuse}$$cos=\frac{Adjacent}{Hypotenuse}$$tan=\frac{Opposite}{Adjacent}$ 컴퓨터 그래픽스에서는 사인함수(Sine)와 코사인함수(Cosine)를 가장 많이 사용함.탄젠트함수(Tangent)의 경우 역함수를 사용해 벡터의 각을 구하는데 활용 삼각함수(Tr..

게임 수학 - 선형 독립

1. 벡터의 생성(Span) 시스템선형 조합(Linear Combination)벡터의 기본 연산을 사용해 새로운 벡터를 생성하는 수식$v' = a_1 v_1+a_2 v_2+a_3 v_3+...+a_n v_n$ 벡터와 스칼라를 곱하면 벡터가 되고, 벡터끼리 더한 것은 벡터가 되기 때문에결과적으로 어떤 새로운 벡터가 만들어지게(span한다) 됨 선형 의존과 선형 독립의 수학적 정의다음 수식을 만족하는 0이 아닌 계수가 존재하면 수식 내 벡터들은 선형 의존이라 함.$a_1 v_1+a_2 v_2+a_3 v_3+...+a_n v_n = \vec{0}$ 다음 수식을 만족하기 위해 모 계수 값이 0이라면 수식 내 벡터들은 선형 독립이라 함.$a_1 v_1+a_2 v_2+a_3 v_3+...+a_n v_n = 0$ 문..

게임 수학 - 벡터

1. 벡터(Vector)의 정의수 직선에서의 표현의 한계수를 점으로 표현한다면 1차원의 도형 수직선 위에 있는 것들만 표현이 가능.1차원 상에서 의미있는 무언가를 표현하기에는 주어진 공간이 너무 부족함.데카르트 좌표계(Cartesian Coordinate System)수의 시스템을 기반으로 영역을 확장해 표현하는 방식.두 실수 집합을 교차시켜서(직교) 평면을 표현하고 오른쪽과 위쪽을 +방향으로 지정한다.이렇게 영역을 확장한 모습은 두 실수 집합을 곱집합으로 확장한 R⨉R (곱집합으로 구성된 평면)로 볼 수 있다.곱집합의 원소는 순서쌍이므로 두 집합의 원소를 각각 미지수 x와 y로 두면 이는 (x, y)로 표현할 수 있다.이를 좌표(Coordinate)라고 함.직교한다: 90도로 배치한다는 의미를 넘어 가..

게임 수학 - 함수

1. 함수(Function)의 기초함수를 왜 배워야 하는가? 게임의 공간을 구성하고 화면에 보여지는 전 과정은 대부분 공간과 공간의 변환으로 구성됨.이러한 변환은 근본적으로 집합과 집합의 대응 관계에 기반하고 있으며, 이러한 메카니즘을 설명하는 이론이 함수.함수에 대한 개념을 제대로 정립하는 것이 게임 공간과 공간의 변환을 올바르게 이해할 수 있는 기본 지식이 됨. 함수의 정의 첫 번째 집합 X의 요소인 x가 두 번째 집합 요소인 y에 대응될 때, y = f(x) 라고 표기 함수의 성립 조건 : 첫 번째 집합의 모든 요소가 사용되어야 한다. 함수가 아닌 대응 관계첫 번째 집합의 어떤 원소에 대한 대응 관계가 빠져 있을 때첫 번째 집합의 한 원소가 두 번째 집합의 두 가지 이상의 원소에 대응할 때  함수에..

게임 수학 - 수의 구조

1. 수의 시각화왜 수에 대해 알아야 하는가?게임 세계는 벡터로 구성된 시스템. 이 시스템 위에서 콘텐츠가 만들어짐.벡터는 수를 사용해 만들어진 대상이므로, 벡터를 정확히 이해하기 위해서는 결국 수가 만들어내는 시스템에 대한 이해가 필요하다.수(Numbers)의 종류다양한 수의 개념이 존재하며, 각각은 대문자를 사용해 집합으로 구분하여 부른다. 실수 집합(The set of real numbers) R실수 집합 R은 수 사이에 빈틈이 없는 연속된 무한의 요소로 구성된 수의 집합임이러한 실수 집합의 개념과 원소의 개념에서의 수를 바라보는 것을 훈련할 필요가 있음. 수 직선(Number Line)실수 집합 R의 요소를 점으로 나열하면 연속성 있는 직선으로 표현할 수 있음.수의 표현하나의 체계에서 대소를 비교..

쾌락의 질적 차이 - 밀의 공리주의, 에피쿠로스의 정신적 쾌락

벤담은 쾌락에는 질적인 차이가 없고 오로지 더 많은 쾌락을 중시.하지만 쾌락에는 질적 차이가 존재한다.밀은 여러 가지 쾌락을 경험한 사람이 선호하는 쾌락이 보다 바람직한 쾌락이라고 주장.그리고 정상적인 인간은 누구나 질적으로 높고 고상한 쾌락을 추구할 것으로 보았음.단순한 감각적 쾌락이 아닌 지적이고 내적 교양이 뒷바침되는 정신적 쾌락이 더 우월하다. "만족하는 돼지가 되기보다는 불만에 찬 인간이 되는 편이 낫고, 만족하는 바보가 되기보다는 불만에 찬 소크라테스가 되는 편이 낫다. 그런데 만일 돼지나 바보라면 이것과는 다른 견해를 보일 것이다. 왜냐하면 그들은 오직 자신이 속한 한 측면밖에 파악할 수 없기 때문이다. 두 측면을 모두 알아야 이들 둘을 비교할 수 있다." - 밀 "공리주의" 인간의 정신적,..

잡동사니 2025.01.17

언리얼 5 - 게임의 완성

게임의 승패조건 관리게임 모드멀티 플레이를 포함해 게임에서 유일하게 존재하는 게임의 심판 오브젝트최상단에서 게임의 진행을 관리하며, 게임 판정에 관련된 중요한 행동을 주관하는데 적합.다양한 게임 규칙을 적용할 수 있도록 핵심 기능과 분리해 설계하는 것이 바람직함.게임의 상태와 플레이어의 상태를 별도로 저장할 수 있는 프레임워크를 제공함  // Fill out your copyright notice in the Description page of Project Settings.#pragma once#include "CoreMinimal.h"#include "GameFramework/GameModeBase.h"#include "Interface/ABGameInterface.h"#include "ABGameM..

반응형