전체 글(98)
-
[C#]3진법 뒤집기.
프로그래머스 문제 문제 설명 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 풀이 using System; public class Solution { public int solution(int n) { int answer=0; while(n>0){ answer*=3; answer+=n%3; n/=3; } return answer; } } 레벨 1단계에 문제가 추가되었길래 풀어보았다.
2021.02.05 -
[C#] 프린터(스택/큐)
문제 설명 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린터를 개발했습니다. 이 새롭게 개발한 프린터는 아래와 같은 방식으로 인쇄 작업을 수행합니다. 1. 인쇄 대기목록의 가장 앞에 있는 문서(J)를 대기목록에서 꺼냅니다. 2. 나머지 인쇄 대기목록에서 J보다 중요도가 높은 문서가 한 개라도 존재하면 J를 대기목록의 가장 마지막에 넣습니다. 3. 그렇지 않으면 J를 인쇄합니다. 예를 들어, 4개의 문서(A, B, C, D)가 순서대로 인쇄 대기목록에 있고 중요도가 2 1 3 2 라면 C D A B 순으로 인쇄하게 됩니다. 내가 인쇄를 요청한 문서가 몇 번째로 인쇄되는지 ..
2020.12.26 -
[C#] 이진 변환 반복하기 (2진수변환)
프로그래머스 문제 문제 설명 0과 1로 이루어진 어떤 문자열 x에 대한 이진 변환을 다음과 같이 정의합니다. x의 모든 0을 제거합니다. x의 길이를 c라고 하면, x를 c를 2진법으로 표현한 문자열로 바꿉니다. 예를 들어, x = "0111010"이라면, x에 이진 변환을 가하면 x = "0111010" -> "1111" -> "100" 이 됩니다. 0과 1로 이루어진 문자열 s가 매개변수로 주어집니다. s가 1이 될 때까지 계속해서 s에 이진 변환을 가했을 때, 이진 변환의 횟수와 변환 과정에서 제거된 모든 0의 개수를 각각 배열에 담아 return 하도록 solution 함수를 완성해주세요. 제한사항 s의 길이는 1 이상 150,000 이하입니다. s에는 '1'이 최소 하나 이상 포함되어 있습니다...
2020.12.05 -
[C#] 쿼드압축후 개수 세기(재귀)
프로그래머스 문제 문제 설명 0과 1로 이루어진 2n x 2n 크기의 2차원 정수 배열 arr이 있습니다. 당신은 이 arr을 쿼드 트리와 같은 방식으로 압축하고자 합니다. 구체적인 방식은 다음과 같습니다. 당신이 압축하고자 하는 특정 영역을 S라고 정의합니다. 만약 S 내부에 있는 모든 수가 같은 값이라면, S를 해당 수 하나로 압축시킵니다. 그렇지 않다면, S를 정확히 4개의 균일한 정사각형 영역(입출력 예를 참고해주시기 바랍니다.)으로 쪼갠 뒤, 각 정사각형 영역에 대해 같은 방식의 압축을 시도합니다. arr이 매개변수로 주어집니다. 위와 같은 방식으로 arr을 압축했을 때, 배열에 최종적으로 남는 0의 개수와 1의 개수를 배열에 담아서 return 하도록 solution 함수를 완성해주세요. 제한..
2020.12.05 -
[Unity] UI관리 기법
Unity Client 개발자를 꿈 꾼다면 필수적으로 UI 관리 기법에 대해 잘 알고 있어야 한다. 소규모 팀 프로젝트를 진행할때는 UI 작업을 모두 직접 지정, OnClick 함수로 직접 지정해서 사용하여도 문제가 없고 효율성이 떨어지지 않을 것이다. 하지만 게임의 규모가 커지다보면 굉장히 많은 UI 작업을 모두 직접 작업하기 힘들고, 실수가 자주 일어나기 마련이다. 때문에 효율적으로 UI작업을 하는 방법에 대해 알아보았다. 우선 Unity 는 C#언어를 사용하니 C++과 달리 enum으로 string값을 가져오는 것이 가능하다. Ex) using System; using System.Collections; using System.Collections.Generic; using UnityEngine; ..
2020.11.02 -
[Unity] 싱글톤 패턴 매니저
using System.Collections; using System.Collections.Generic; using UnityEngine; public class Managers : MonoBehaviour { static Managers s_instance; //유일성이 보장된다. static Managers Instance { get { Init(); return s_instance; } } void Start() { Init(); } void Update() { _input.OnUpdate(); } static void Init() { if (s_instance == null) { GameObject go = GameObject.Find("@Managers"); if (go == null) { g..
2020.11.01