분류 전체보기 160

[멋쟁이사자처럼 부트캠프 TIL회고] 73일차 : 퀴즈 게임

오늘 배운 것1. 자투리 지식2. 퀴즈 게임 제작기 1. 자투리 지식UI 앵커 관련 - 스트레치와 미들 센터 앵커  문제 : UI가 보이지 않았음해결 : 부모의 RectTransform 변경부모가 자식을 담을 만큼 충분히 크지 못해 발생한 문제였다. 부모의 크기를 늘려주면 해결 !  * 참고 : 스트레치 앵커 : 부모의 RectTransform 영역에 맞춰 UI 요소를 늘려 채우는 방식            미들 센터 앵커 : UI 요소의 중심점을 부모 RectTransform의 중심점에 맞추는 방식 그러니까 UI 요소를 늘려 채우면 크기가 늘어나서 해결 ! 미들 센터 앵커는 중심점만을 이동시키기에 해결되지 않는다.   다만 이것 저것 실험해 보던 중 신기한 현상이 있었다.분명 부모가 자식보다 크기가 작아..

TIL 2025.02.12

클로저(Closure)

저번에도 한 번 나왔던 개념인데 이제서야 정리한다. 1. Closure 기능이란 ? 외부 함수의 변수를 내부 함수에서 참조할 수 있는 기능함수가 생성될 때 그 함수가 선언된 환경을 기억하는 것C#에서는 익명 함수 또는 로컬 함수가 클로저의 역할을 할 수 있음2. 동작 방식using System;class Program{ static Func CreateClosure() { int count = 0; // 외부 변수 return () => { count++; // 외부 변수를 내부 함수에서 변경 return count; }; } static void Main() { Func cl..

개념공부 2025.02.12

유클리드 호제법(Euclidean Algorithm)

개념두 수의 최대공약수 (GDC, Greates Common Divisor)를 구하는 알고리즘호제법 - 두 수를 나누고 나머지를 이용하는 방식원리어떤 자연수 A, B (A > B) 에 대해  A를 B로 나눈 나머지를 r이라고 할 때GDC(a,b) = GDC(b,r)이 성립한다.이를 반복하여 나머지가 0이 되면 , 그때의 나누는 수가 최대공약수이ㅏㄷ.코드 예시int GCD(int a, int b) { while (b != 0) { int temp = b; b = a % b; a = temp; } return a;}void Start() { Debug.Log(GCD(48, 18)); // 출력: 6} 예시와 같이 48 18이 있다면48 % 18 은..

간단한 수학 2025.02.12

이상한 문자 만들기, 3진법 뒤집기 , 최소직사각형

코딩테스트 : 이상한 문자 만들기 문제 설명문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.제한 사항문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다.입출력 예sreturn"try hello world""TrY HeLlO WoRlD"입출력 예 설명"try hello world"는 세 단어 "try", "hello", "world"로 구성되어 있습니다. 각 단어의 짝수번째 문자를 대문자로, 홀수번째 문자를 ..

코딩테스트 2025.02.12

[멋쟁이사자처럼 부트캠프 TIL회고] 71일차 : 틱택토 빌드

오늘 배운 것1. 자투리 지식2. 틱택토 게임 빌드3. 버그 수정 1. 자투리 지식 Altlas여러개의 텍스쳐를 하나의 큰 텍스쳐로 합쳐서 관리하는 기술텍스쳐가 많아질수록, 드로우 콜 횟수가 증가하여 게임 성능에 부담을 줄 수 있음 > 해결Create - 2D - Sprite Atlas로 만들 수 있음UI 이미지들을 아틀라스로 묶음, Compression을 None으로 ! (압축을 해버리면 이상해질 수 있음)https://docs.unity3d.com/kr/2022.3/Manual/class-SpriteAtlas.html Create > 2D > Sprite Atlas로 이동합니다.Unity는 파일 확장자가 ’.spriteatlas’인 스프라이트 아틀라스를 Assets 폴더에 생성합니다." data-og..

TIL 2025.02.11

정수 제곱근 판별, 24511번 queuestack

코딩테스트 : 정수 제곱근 판별문제 설명 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요. 제한 사항 n은 1이상, 50000000000000 이하인 양의 정수입니다. 입출력 예 n return 121 144 3 -1 입출력 예 설명 입출력 예#1 121은 양의 정수 11의 제곱이므로, (11+1)를 제곱한 144를 리턴합니다. 입출력 예#2 3은 양의 정수의 제곱이 아니므로, -1을 리턴합니다.using System;public class Solution{ public long solution(long n) { ..

코딩테스트 2025.02.09

[멋쟁이사자처럼 부트캠프 TIL] 70일차 : 틱택토 자동로직 완성

오늘 배운 것1. 알아두면 좋은 것2. 틱택토 알고리즘 (노가다성)3. minMax를 사용한 알고리즘   1. 알아두면 좋은 것 1. 변수에 null 할당 null을 할당할 수 있는 타입이 있고, 그렇지 않은 타입이 있다.  Null 할당 가능 : 참조 타입(Reference Type), Nullable 값 타입(Nullable Value type)Null 할당 불가 : 값 타입(Value Type) 기본적으로 int, float, bool , enum 등의 값 타입은 null을 할당할 수 없지만 뒤에 ?를 붙여 Nullable Valeu Type으로변환 가능하다. 예를 들어 int age = 26; // null 할당 불가int? age = 26; // null 할당 가능 이런 식으로 변환해서 사용할 ..

TIL 2025.02.07

28279번 덱 2, 2346번 풍선 터뜨리기

코딩테스트 : 28279번 덱 2시간 제한메모리 제한제출정답맞힌 사람정답 비율2 초1024 MB185119128814350.179%문제정수를 저장하는 덱을 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오.명령은 총 여덟 가지이다.1 X: 정수 X를 덱의 앞에 넣는다. (1 ≤ X ≤ 100,000)2 X: 정수 X를 덱의 뒤에 넣는다. (1 ≤ X ≤ 100,000)3: 덱에 정수가 있다면 맨 앞의 정수를 빼고 출력한다. 없다면 -1을 대신 출력한다.4: 덱에 정수가 있다면 맨 뒤의 정수를 빼고 출력한다. 없다면 -1을 대신 출력한다.5: 덱에 들어있는 정수의 개수를 출력한다.6: 덱이 비어있으면 1, 아니면 0을 출력한다.7: 덱에 정수가 있다면 맨 앞의 정수를 출력한다. 없다면 ..

코딩테스트 2025.02.07

[멋쟁이사자처럼 부트캠프 TIL회고 69일차] : 틱택토 게임 수정

오늘 배운 것1. 자투리 지식2. 코드 유지보수3. 알고리즘 만들어보기  1. 자투리 지식다른 프로그램 진행중      랜덤 생성  이런 식으로 메모리가 있다면 , 우리가 만들 수 있는 객체가 어디 생성될 지 모른다. 그래서 객체를 변수에 담고(주소/위치를 저장하고) 그 주소를 이용하는 것 하이얼아키창에 있다고 메모리에 올라온 것이 아니다. 씬이 로드되었을 때 메모리 상에 올라간다.프리팹으로 만든 파일은 계속 존재한다Ram에 올라간 것과 SSD에 있는 것의 차이를 잘 생각해야한다.  2. 코드 유지보수  지금 현재 코드의 문제점씬을 분리하게 되면서 패널을 두 번 구현해야 하는 문제가 생김.게임 씬과 메인 씬여러가지 방법이 있지만 지금은 패널 매니저를 없에고, 패널 컨트롤러를 단독으로 생성되도록 바꿀 예정..

TIL 2025.02.06