48. Unity 게임개발 심화 주차 팀프(2)

이규성·2024년 1월 3일
0

TIL

목록 보기
54/106

01/03

📌알고리즘 코드 카타 (Algorithm Code Kata)

문자열 다루기 기본

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.

입출력 예

sreturn
"a234"false
"1234"true
public class Solution
{
    public bool solution(string s)
    {
        bool answer;
        int num;

        if (s.Length == 4 || s.Length == 6)
        {
            if (int.TryParse(s, out num))
            {
                answer = true;
            }
            else
            {
                answer = false;
            }
        }
        else
        {
            answer = false;
        }
        return answer;
    }
}

문자열 길이가 4, 6이라는 조건이 뭔 말인가 했더니 4, 6 이외에는 false를 반환하라는 의미였다. 아무래도 문제지 작성자가 외국인인 듯 싶다. 4, 6을 판단하는 코드를 작성하지 않았어서 틀렸었고 간단하게 조건문으로 덮어줘서 해결하였다.

행렬의 덧셈

행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.

입출력 예

arr1arr2return
[[1,2],[2,3]][[3,4],[5,6]][[4,6],[7,9]]
[[1],[2]][[3],[4]][[4],[6]]
public class Solution
{
    public int[,] solution(int[,] arr1, int[,] arr2)
    {
        int row = arr1.GetLength(0);
        int col = arr2.GetLength(1);

        int[,] answer = new int[row, col];

        for (int i = 0; i < row; i++)
        {
            for (int j = 0; j < col; j++)
            {
                answer[i, j] = arr1[i, j] + arr2[i, j];
            }
        }

        return answer;
    }
}

2차원 배열의 사용이 익숙지가 않아서 약간 헤매었다. 1차원 배열의 길이는 Array.Length로 간단하게 구할 수 있었지만 2차원 배열에 바로 써버리면 행렬의 길이가 아닌 전체 배열의 길이가 구해져버려서 낭패를 봤다. Array.GetLength 메서드를 검색으로 알아내어 해결!

Array.GetLength(0) 2차원 배열의 '행'의 길이
Array.GetLength(1) 2차원 배열의 '열'의 길이

📌팀 프로젝트 스크럼

스토리와 전체적인 기획을 맡았다. 의도한 것은 아니지만 또 또!! 코드 작성과는 거리가 먼 역할을 맡게 되었는데 이왕 이렇게 된 거 아주 극한까지 스토리와 연출을 구성하는 것이 방법이라고 생각한다. 한국 특유의 신파와 다양한 상상들을 통달한 나에게 딱 맞기도 한 역할이라는 생각도 든다.

0개의 댓글