[프로그래머스 C++] 숫자 짝꿍
CSE/코딩 문제풀이2024. 6. 10. 20:07[프로그래머스 C++] 숫자 짝꿍

https://school.programmers.co.kr/learn/courses/30/lessons/131128X와 Y를 비교하여 같이 존재하는 숫자를 골라낸 후, 그 수를 조합하여 가장 큰 수를 만드는 문제이다.숫자의 개수까지 비교해야 하기 때문에 단순 확인보다는 조금 생각을 해야 하는 문제이다.각 X와 Y의 개수를 확인하는 배열을 생성하여 각각 돌아서 각 숫자의 개수를 확인하였고, 두 배열에서 최소값에 따라서 큰값부터 answer에 붙여 구현하였다.#include #include using namespace std;string solution(string X, string Y) { string answer = ""; int Xnum[10]; int Ynum[10]; ..

[프로그래머스 C++] 혼자 놀기의 달인
CSE/코딩 문제풀이2024. 6. 10. 19:56[프로그래머스 C++] 혼자 놀기의 달인

https://school.programmers.co.kr/learn/courses/30/lessons/131130문제의 설명을 간단하게 설명하자면 다음과 같다.1 ~ 100까지의 숫자중 원하는 숫자보다 작은 카드를 전부 골라 각각 상자에 넣는다.그 상자에 1부터 시작하는 인덱스 값을 부여한다.상자를 열어 그 안에 있는 카드에 적혀 있는 인덱스의 상자로 이동한다이미 열려있는 상자에 도달할 때 까지 3번을 반복한다.도달하면 지금까지 열었던 상자를 하나의 그룹으로 정한다.그룹이 2개 나올때 까지 진행하여 각 그룹에 속해있는 상자의 갯수를 곱한다.이를 진행하면서 최대로 나올 수 있는 값을 구하는 문제이다.입력으로 주어진 cards에서 시작할 수 있는 모든 값을 시도해보는 방법으로 구현하였다.각 시도마다 재귀형..

[Unreal Engine C++] C++에서 Niagara System 스폰
UnrealEngine/공부2024. 5. 29. 19:44[Unreal Engine C++] C++에서 Niagara System 스폰

필자가 프로젝트를 진행하면서 사용하였던 나이아가라 시스템을 C++로 스폰시키고 사용 후 디스폰시키는 방법, 나이아가라 시스템을 패키징 할 때 발생할 수 있는 문제를 수정하는 방식을 확인해보자Niagara System의 사용게임 개발 프로젝트를 진행하면서 게임 특성중 하나인 정신력 게이지를 회복시키는 아이템을 추가하기로 하였다.이 아이템은 촛불인데, 그 촛불에서 불이 나는 느낌을 내기 위해 나이아가라 시스템을 사용하고자 했다.에셋으로 받은 불 나이아가라 시스템을 이미터의 수치값을 조정하여 파란색으로 수정 및 무한 재생하게 수정해주었다.이를 C++에서 불러오고자 다음과 같은 코드를 작성하였다.// SanityRecovary.h#pragma once#include "CoreMinimal.h"#include "..

[프로그래머스 C++] 가장 큰 수
CSE/코딩 문제풀이2024. 5. 29. 19:18[프로그래머스 C++] 가장 큰 수

https://school.programmers.co.kr/learn/courses/30/lessons/42746?language=cpp정렬이지만, 조금은 다르다.원래는 왼쪽 기준으로 맨 처음 숫자를 고려해서 큰 수형식으로 배열하는 방식을 생각하였다.하지만 이는 코드상으로 구현하니 굉장히 복잡한 형식이기도 하고, 예외 처리 해야 할 것들이 많이 존재하였다.(ex. 자릿수가 같을 때 숫자비교, 다를 때 짧은 것이 먼저올 수도 있지만, 뒤에 오는 숫자들에 따라 긴 것이 먼저 올 수도 있음)그런 문제점이 존재해 다른 방식으로 이 문제를 풀 수 있었다.숫자들을 string으로 전환하여 각 숫자를 합쳐보았다.3 + 57과 57 + 3을 수행하면 각각 357, 573이 된다.합쳐보았을 때 573이 더 큰 수 이므로..

[프로그래머스 C++] K번째 수
CSE/코딩 문제풀이2024. 5. 29. 16:11[프로그래머스 C++] K번째 수

https://school.programmers.co.kr/learn/courses/30/lessons/42748정렬을 이용하는 문제이다.array의 값을 commands로 주어진 i, j, k값에 따라서 정리한 후, 그에 맞는 숫자를 return해주면 되는 간단한 문제이다. #include #include #include using namespace std;vector solution(vector array, vector> commands) { vector answer; vector temp; for (int n = 0; n

[백준 C++] 10815 : 숫자 카드
CSE/코딩 문제풀이2024. 3. 12. 01:02[백준 C++] 10815 : 숫자 카드

https://www.acmicpc.net/problem/10815 브루트포스 방식으로 모든 숫자 카드들을 비교하면 시간 초과로 해결하지 못하는 문제이다. 시간 단축을 위해 이분 탐색을 활용해 숫자 카드들을 비교할 것이다. 이분탐색은 한 리스트에 있는 데이터들의 탐색 범위를 점점 좁혀나가면서 구분하는 방식이다. 시작 노드 및 끝노드 인덱스를 더한 뒤 2로 나누어 중간 인덱스를 구하고, 그 값과 원하는 타겟값을 비교해서 targer > list[mid]인 경우 시작 노드값을 올리고, 반대인 경우는 끝 노드의 값을 올려가면서 찾는다. 이 이분 탐색은 반복문(while)을 사용한 방법과 재귀를 사용한 방법, 두 가지가 존재하는데 필자는 재귀를 좋아하기 때문에 재귀 방식을 사용하였다. #include #incl..

image