[프로그래머스] 가운데 글자 가져오기
·
알고리즘
나의 풀이 public class Solution { public string solution(string s) { string answer = ""; int temp = s.Length % 2 == 1 ? 1 : 2; int length = (s.Length / 2) + (s.Length % 2); answer = s.Substring(length - 1, temp); return answer; } } 다른 사람의 풀이 세상은 넓고 고수는 많다..
유니티 로딩 씬 구현
·
Unity
기능 구현의 핵심요소 SceneManager.LoadSceneAsync() 씬이 로드될때까지 동작을 못하는 SceneManager.Load와 달리 씬을 불러오는 도중에 다른 작업이 가능합니다 AsyncOperation 현재 로드 되고있는 씬의 정보를 가지고있는 클래스입니다. 코드 SceneLoad 매서드를 static으로 만들어서, 어디에서든지 접근할 수 있게 설정합니다. 이후 LoadingSceneController가 생성될때(LoadingScene에서) LoadSceneProcess 함수를 실행시켜 씬이 작동하는 것과 별개로(비동기) 다음에 로드될 씬을 준비합니다. 사용된 AsycOperation의 프로퍼티 목록 - isDone : 로딩이 완료되었는지 - progress : 로딩 진행률 0% ~ 10..
[프로그래머스] C# 제일 작은 수 제거하기
·
알고리즘
나의 풀이 using System.Collections.Generic; using System.Linq; public class Solution { public int[] solution(int[] arr) { if(arr.Length == 1){arr[0] = -1; return arr;} List numbers = new List(); int minNum = arr.Min(); for(int i = 0; i< arr.Length; i++) { if(minNum == arr[i]) continue; numbers.Add(arr[i]); } return numbers.ToArray(); } } 작은 수를 Min() 메서드로 구하고, 작은 수를 제외한 값들을 List 안에 넣었습니다. 이후 List를 To..
유니티 싱글톤 베이스
·
Unity
유니티에서 프로젝트를 진행할 때, 싱글톤 패턴을 자주 사용해야할 것 같을 때, 제네릭 클래스로 싱클톤베이스를 작성 후 만들어두면 같은 코드의 반복을 최소화 할 수 있습니다. 위처럼 싱글톤 베이스 스크립트 작성 이후에 싱글톤이 적용되어야하는 스크립트(매니저급)에 해당 베이스를 상속 받으면 됩니다. 하이어라키에 씬 매니저 하나만 올려두고, 씬매니저의 스크립트를 통해 싱글톤 베이스에서 작성해둔 Init 함수를 호출해서 씬에서 배치할 순서대로 매니저 스크립트를 동적생성하여 관리할 수도 있습니다. 매니저급 스크립트들은 접근에 용이하기 위해 왠만하면 싱글톤 패턴을 사용하는 경우가 많기 때문에 싱글톤 베이스를 만들어두면 매니저 오브젝트들의 유지보수 및 관리가 더 편해집니다.
Unity 깃 허브 LFS 오류
·
Unity
깃허브에서 유니티 프로젝트를 푸쉬하는 과정에서 해당 에러가 발생했습니다.   오류가 발생한 이유는 100MB가 넘은 에셋을 그냥 커밋하려고 해서 생긴오류가 아닌가라는 생각이 들어서 https://docs.github.com/ko/repositories/working-with-files/managing-large-files/installing-git-large-file-storage Git 대형 파일 스토리지 설치 - GitHub DocsGit LFS를 사용하려면 Git과 별개인 새 프로그램을 다운로드하여 설치해야 합니다.docs.github.com해당 사이트에서 깃 LFS를 다운 받고, 이후 문제가 발생하는 프로젝트로 가서 깃 베쉬를 시작한 이후에 $ git lfs install 을 입력합니다. 해당 프..
프로그래머스 핸드폰 가리기
·
알고리즘
나의 풀이 using System.Linq; using System.Collections.Generic; public class Solution { public string solution(string phone_number) { string answer = ""; List numbers = new List(); phone_number = new string(phone_number.Reverse().ToArray()); for (int i = 0; i 3) numbers.Add('*'); else numbers.Add(phone_number[i]); } numbers.Reverse(); answer = new string(numbers...
프로그래머 음양 더하기
·
알고리즘
나의 풀이 using System; public class Solution { public int solution(int[] absolutes, bool[] signs) { int answer = 0; for(int i= 0; i< absolutes.Length; i++) { answer = (signs[i]) ? answer += absolutes[i] : answer -= absolutes[i]; } return answer; } } 다른 사람의 풀이 람다식 사용을 좀더 간소화 하는 방법을 알게 되었고, Select 매서드를 통해 구현하는 방법도 있다는 것을 알게되었습니다.
프로그래머스 나누어 떨어지는 숫자 배열
·
알고리즘
나의 풀이 using System.Collections.Generic; public class Solution { public int[] solution(int[] arr, int divisor) { List answer = new List(); for(int i = 0; i