프로그래밍 공부

프로그래밍 700

카테고리 설명
  • 문제 설명 어떤 숫자에서 k개의 수를 제거했을 때 얻을 수 있는 가장 큰 숫자를 구하려 합니다. 예를 들어, 숫자 1924에서 수 두 개를 제거하면 [19, 12, 14, 92, 94, 24] 를 만들 수 있습니다. 이 중 가장 큰 숫자는 94 입니다. 문자열 형식으로 숫자 number와 제거할 수의 개수 k가 solution 함수의 매개변수로 주어집니다. number에서 k 개의 수를 제거했을 때 만들 수 있는 수 중 가장 큰 숫자를 문자열 형태로 return 하도록 solution 함수를 완성하세요. 제한 조건 number는 2자리 이상, 1,000,000자리 이하인 숫자입니다. k는 1 이상 number의 자릿수 미만인 자연수입니다. 입출력 예 number K return "1924" 2 "94" ..

  • 공격방식을 추가하여 다체롭개 해보자. 기존에 사용하였던, 소드모션의 동작방식을 재활용하여 마법 공격 방식을 추가한다. 입력 액션 설정 공격모션의 시작점인 무기 장착이다. 전에 만들었던 Sword의 장착키는 1 이고, Wizard의 장착키는 2로 설정하여 동작시킬 것 이다. Combat을 참조하여, 현재 Combat에 따라 장착한것이 없을 때는 StartWizardMode를, 칼을 들고 있을 때 는, Sheath Sword를, 아니라면 내가 마법모션 이었을 경우, WizardMode를 종료시킨다. 기본 상태에서는 마법모드를 시작하고, 칼을 들고 있을 때는 칼을 넣고 마법을 들어야 할 것 이다. 이러한 과정을 통합하여, 좀 더 자연스럽게, 전환을 실행 -> 전환시에 모션 판별을 하여 코드를 자연스럽게 구성시..

  • 공격이벤트에 칼에 따라다니는 선을 하나 그어보자. 트레일 이벤트를 커스텀으로 가볍게 만들 것 이다. 우선, 이팩트를 만들기 위해 머티리얼을 한개 제작해준다. 머티리얼 커스텀 머티리얼을 커스텀 할 것 이다. 우선 파티클 컬러를 생성하고, 해당 컬러에 필터를 씌워서 알파값을 조정할 것 이다. TextureCoordinate를 생성한다. 이 블루프린트는 일정좌표로 계산되어 UV값의 위치를 조정하는 역할을 한다. 적용하는 텍스처의 UV값을 조정하여 어떠한 값 기준으로 블렌딩하는데 이용된다. ComponentMast를 추가한다. 이것은 RGB중 사용자가 지정한 Color값을 Mask하여 가려버리는 효과가 있다. 즉, 해당 Color값은 A값이 0이된다. 마스크를 위와같이 지정해보자. UV좌표값이 구체를 기준으로,..

  • 문제 설명 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers는 길이 1 이상 7 이하인 문자열입니다. numbers는 0~9까지 숫자만으로 이루어져 있습니다. "013"은 0, 1, 3 숫자가 적힌 종이 조각이 흩어져있다는 의미입니다. 입출력 예 numbers return "17" 3 "011" 2 문제 해설 문자열이 string형태로 제공되어있다. string을 stoi로 변환하여 사용해야 함을 뜻함. 그리고, string내부의 모든 수..

  • 언리얼에서 CSV데이터를 활용하여 콤보공격을 구현해보자. 우선, 콤보 공격은 공격 이벤트를 수정해야 함 으로 공격이벤트를 건들이는 블루프린트 노드로 이동한다. BP_Player->AttackingEvent 우선 추가해야할 변수는 위와 같다. 현재 다음 콤보로 넘어가는 과정인지 체크할 bool변수 한개, 현재 콤보공격이 몃번째에 해당하는지 확인하는 float변수 한개 현재 콤보공격이 마지막 콤보인지 확인하는 bool변수 한개(이건 이펙트와 카메리위빙에 사용함) 다음 애니메이션이 콤보공격을 출력하는지 확인하는 bool변수 한개 이다. 콤보공격에 노티파이 추가하기 우선 콤보공격 시에, 현재 공격이 콤보공격에 넘어갈 수 있는지 확인하는 노티파이를 추가할 것 이다. 즉, 노티파이 스테이트 를 사용해서 일점 범위구..

  • 7. 클래스와 객체에 능숙해지기 객체지향 언어인 C++는 객체를 정의하고 사용하기 위한 기능으로 클래스를 제공한다. 클래스나 객체를 사용하지 않아도 C++언어로 프로그램을 작성할 수 있다. 하지만, 클래스와 객체를 사용하면 C++언어가 제공하는 기초적이면서도 유용한 기능을 활용할 수 있다. 클래스 없이 C++를 이용하는 것은 외국 여행을 다니면서 한식당만 찾는것과 같다. 7.1 스레드시트 실습 실제 실행 가능한 간단한 스프레드 시트 애플리케이션을 만들어보자. 스프레드시트는 2차원 격자로 된 셀이 있고, 각 셀은 숫자나 문자를 가진다. 마이크로소프트 엑셀 같은 상용 스프레드 시트 프로그램은 각 셀의 값을 대상으로 합계 등 수학 연산을 할 수 있다. 우리가 다룰 스프래드시트 예제는 스프레드시트 고유의 기능을..