2024/01/26 4
-
문제 설명 위와 같은 삼각형의 꼭대기에서 바닥까지 이어지는 경로 중, 거쳐간 숫자의 합이 가장 큰 경우를 찾아보려고 합니다. 아래 칸으로 이동할 때는 대각선 방향으로 한 칸 오른쪽 또는 왼쪽으로만 이동 가능합니다. 예를 들어 3에서는 그 아래칸의 8 또는 1로만 이동이 가능합니다. 삼각형의 정보가 담긴 배열 triangle이 매개변수로 주어질 때, 거쳐간 숫자의 최댓값을 return 하도록 solution 함수를 완성하세요. 제한사항 삼각형의 높이는 1 이상 500 이하입니다. 삼각형을 이루고 있는 숫자는 0 이상 9,999 이하의 정수입니다. 입출력 예 triangle result [[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] 30 첫 시도 #inc..
-
5.2 객체지향 철학 절차적 접근 방법에서 '이 프로그램은 무엇을 하는가?' 라는 질문을 던지는 것과는 달리, 객체지향 접근 방법에서는 '실세계의 객체를 어떻게 모델링하는가?' 라는 질문을 던진다. 객체지향 프로그래밍은 프로그램을 작업 단위로 쪼개는것 이 아니라 물리적 객체의 모델로 쪼갠다. 처음에는 이것이 너무 추상적으로 보이지만 물리적 객체를 클래스(Class), 컴포넌트(Component), 프로퍼티(Property), 행동(Behavio) 이라는 용어로 생각하면 명확해진다. 5.2.1 클래스 클래스는 단어 자체가 계층, 분류, 유형을 의미하며, 객체들을 구별한다. 예를 들어 오렌지를 생각해보자. 나무 열매 과일로서의 일반적인 오렌지를 저장하는 것과 방금 내 보드에 쏟은 주스를 지칭하는 것은 다르다..
-
5. 객체를 이용한 디자인 객체 개념을 접목해서 더 좋은 디자인 개념을 배워보자. 단순히 객체를 이용하는 것과 객체지향 개념을 제대로 활용하는 것의 차이는 전체 프로그램 디자인에서 객체들이 어떤 관계를 갖게 만들어졌는가에 달려있다. 먼저 절차적 프로그래밍(C 언어 스타일) 에 대해 아주 간략히 알아보고, 그 다음으로 객체지향 프로그래밍(Object-Oriented Programming[OOP]) 에 대해 알아보자. 비록, 수년동안 객체를 이용해왔다고 하더라도, 객체지향 프로그램을 개발할 때 자주 부딛혔던 객체 간 관계의 서로 다른 형태를 다루어보고, 추상화 원칙이 객체 디자인에 어떻게 적용되는지도 알아보는 것이 좋은 경험을 선사할 것 이다. 객체지향 프로그래밍은 프로그램이 내부에서 어떻게 구동죄는지 생각..
-
이제 객체에 대한 공격을 받아와서 공격시에 Collision을 작동시키고, 공격이 종료되었을 때 Collision을 종료시켜보자. 애니메이션에 사용할 수 있는 노티파이 중에 노티파이 State를 사용해야 한다. 노티파이 State는 일정 구간 내에 진입하면, Begine을 한번 실행시키고 나가면 End를 실행시킨다. 그 구간 안에 있다면 Tick을 실행시키는 노티파이이다. 생성한 NotifySate를 이용해서 객체를 제어할 것 이다. Notify에서 직접 Collision을 제어해주어도 되고, BP_Sword에서 Collison을 제어하는 이벤트를 만들어서 함수포인터 형태로 노티파이에서 호출하여 실행시켜 주어도 된다. 위와같이 생성하여 제어해주면 된다. Name은 노티파이의 이름이고, End는 실행종료시..