프로그래밍 공부

프로그래밍 700

카테고리 설명
  • 문제 설명 N개의 아파트가 일렬로 쭉 늘어서 있습니다. 이 중에서 일부 아파트 옥상에는 4g 기지국이 설치되어 있습니다. 기술이 발전해 5g 수요가 높아져 4g 기지국을 5g 기지국으로 바꾸려 합니다. 그런데 5g 기지국은 4g 기지국보다 전달 범위가 좁아, 4g 기지국을 5g 기지국으로 바꾸면 어떤 아파트에는 전파가 도달하지 않습니다. 예를 들어 11개의 아파트가 쭉 늘어서 있고, [4, 11] 번째 아파트 옥상에는 4g 기지국이 설치되어 있습니다. 만약 이 4g 기지국이 전파 도달 거리가 1인 5g 기지국으로 바뀔 경우 모든 아파트에 전파를 전달할 수 없습니다. (전파의 도달 거리가 W일 땐, 기지국이 설치된 아파트를 기준으로 전파를 양쪽으로 W만큼 전달할 수 있습니다.) 초기에, 1, 2, 6, 7..

  • 문제 설명 xx 회사의 2xN명의 사원들은 N명씩 두 팀으로 나눠 숫자 게임을 하려고 합니다. 두 개의 팀을 각각 A팀과 B팀이라고 하겠습니다. 숫자 게임의 규칙은 다음과 같습니다. 먼저 모든 사원이 무작위로 자연수를 하나씩 부여받습니다. 각 사원은 딱 한 번씩 경기를 합니다. 각 경기당 A팀에서 한 사원이, B팀에서 한 사원이 나와 서로의 수를 공개합니다. 그때 숫자가 큰 쪽이 승리하게 되고, 승리한 사원이 속한 팀은 승점을 1점 얻게 됩니다. 만약 숫자가 같다면 누구도 승점을 얻지 않습니다. 전체 사원들은 우선 무작위로 자연수를 하나씩 부여받았습니다. 그다음 A팀은 빠르게 출전순서를 정했고 자신들의 출전 순서를 B팀에게 공개해버렸습니다. B팀은 그것을 보고 자신들의 최종 승점을 가장 높이는 방법으로 ..

  • 문제 설명 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 소수가 되는 경우의 개수를 return 하도록 solution 함수를 완성해주세요. 제한사항 nums에 들어있는 숫자의 개수는 3개 이상 50개 이하입니다. nums의 각 원소는 1 이상 1,000 이하의 자연수이며, 중복된 숫자가 들어있지 않습니다. 입출력 예 nums result [1,2,3,4] 1 [1,2,7,6,4] 4 문제 해설 쉽게 그냥 숫자의 중복값을 제외한 여러개의 숫자의 결과중복만 허용한 소수를 찾으면 된다. 첫 번째 시도 #include #include #include usi..

  • 문제 설명 N개의 마을로 이루어진 나라가 있습니다. 이 나라의 각 마을에는 1부터 N까지의 번호가 각각 하나씩 부여되어 있습니다. 각 마을은 양방향으로 통행할 수 있는 도로로 연결되어 있는데, 서로 다른 마을 간에 이동할 때는 이 도로를 지나야 합니다. 도로를 지날 때 걸리는 시간은 도로별로 다릅니다. 현재 1번 마을에 있는 음식점에서 각 마을로 음식 배달을 하려고 합니다. 각 마을로부터 음식 주문을 받으려고 하는데, N개의 마을 중에서 K 시간 이하로 배달이 가능한 마을에서만 주문을 받으려고 합니다. 다음은 N = 5, K = 3인 경우의 예시입니다. 위 그림에서 1번 마을에 있는 음식점은 [1, 2, 4, 5] 번 마을까지는 3 이하의 시간에 배달할 수 있습니다. 그러나 3번 마을까지는 3시간 이내로..

  • EQS를 지정하여 플레이어를 기준으로 AI를 어떤식으로든 활동하도록 한다. 비헤이비어 트리 EQS를 통해 현재 필드의 데이터를 탐지하고, 해당 데이터를 활용해서 컨트롤러가 캐릭터의 동작을 컨트롤하게 할 것 이다. 시퀀스 동작을 통해 모든 동작을 순차적으로 진행하게 할 것 이다. 1번 동작은, 현재 시야를 통해 PlayerActor가 무엇인지 확인하고, 지정하는 동작이다. 2번 동작은 PlayerActor가 찾아졌을 경우, 해당 객체를 참조하여 일정 동작을 수행하고, 이동할 Location을 반환한다. 3번 동작은 Location이 유효할 경우, 해당 위치로 Move To를 통해 이동시킨다. EQS Query는 다음과 같이 생성 가능하다. 내부 데이터 구조이다. ActorsOfClass는, 지정된 범위 내..

  • 블루프린트로 AI의 기초를 생성해본다. AI Character 기본 3인칭 캐릭터를 상속받아. AI케릭터를 생성한다. AI는 비헤이비어 트리, 패트롤 컨트롤을 위한 엑터 컴포넌트 한개를 가지고 생성된다. AI컨트롤러를 사전에 생성한. AiController로 지정해준다. 생성은 위와같이. AI컨트롤러를 상속받아 생성해준다. 지정은 위와같이. 디테일 창에서 AI컨트롤러클래스로 새 컨트롤러를 지정해준다. 엑터 컴포넌트( 패트롤 메니저 ) 위와같은 구성을 가진다. 패트롤 할 때, 일정 구간을 순회하여야 함으로, 구간순회용 Line값과 해당 컴포넌트를 가지는 Owner, 현재 순환구역의 끝 까지 도달했을 때, 반대쪽으로 돌아가야 함으로, 돌아가는 상태인지 확인하는 Bool변수, 현재 이동한 거리를 측정하는 DI..