코딩테스트 (C#)

백준 11021 : A+B - 7

UniCoti-sub 2024. 8. 27.
반응형

문제 사진

이번 문제는 이전 문제보다 간단하다.

A+B의 변형문제인데, -7은 7은 빼라는 게 아니라 7번째 변형버전이라는 뜻인 것 같다.

처음에 테스트의 개수가 주어지고, 한줄마다 2개의 숫자가 나와서

둘이 더해서 출력하면 되는 간단한 문제이다.

 

using System;

namespace unicoti {
    class Program {
        static void Main(string[] args) {
            int.TryParse(Console.ReadLine(), out int TestCount);

            for(int i = 1; i <= TestCount; i++) {
                string[] arr = (Console.ReadLine() ?? "").Split(' ');
                int.TryParse(arr[0], out int num1);
                int.TryParse(arr[1], out int num2);

                Console.WriteLine($"Case #{i}: {num1 + num2}");
            }
        }
    }
}

 

뭐 크게 어려운 로직이 없다.

다만 개인적으로 발전한 부분이 많이 보인다.

예전 같았으면 코드를 더 길게 썼을텐데, 이전 문제에서 작은 깨달음을 얻어서

이번 문제에서는 코드 3줄을 줄였다.

 

먼저 처음 주어지는 테스트의 개수를

TestCount라는 변수를 만듦과 동시에 입력을 저장하고,

그걸 for문에 사용해서 TestCount만큼 반복하도록 설정했다.

 

i = 1과 <=을 사용한 이유는 출력문에서

몇번째 테스트인지도 표시해야 하기 때문에 적당히 맞춰주었다.

개인적인 스타일로는 i = 0에서 시작하여 < 연산자를 사용한다. (배열에서 용이)

 

아무튼 이제 내부에서도 두 숫자를 읽어들여 변수에 저장하고,

마지막으로 $를 이용해서 여러 변수를 넣어 간단히 출력했다.


오늘의 느낀점)

이번에도 느낀점은 딱히 없다.

코드가 좀 더 깔끔해져서 기분이 좋은 정도?

 

다만 추가로 알고 싶은 부분은 생겼다.

오류를 해결하기 위해서 ?? 연산자를 새롭게 배웠었는데,

이렇게 해결할 수 있지만 ??를 써야하는게 좀 번거롭다.

 

다른 방식으로 이 에러를 해결할 수 있는 방법이 있지 않을까 싶다.

int.TryParse처럼 말이다. 그런 점에서 배워나갈 점을 찾았다.

또한 하루에 1개씩 풀고 있는데 생각보다 많은 도움이 되는 것 같다.

쉬운 문제임에도 순수 언어는 다뤄보지 않았기에 간단하면서도 강력한

여러가지 스킬들을 배워갈 수 있었다. 궁극적으로는 유니티에도 잘 사용했으면 좋겠다.


이상으로 도움이 되었길 바라며,

 

끝.

반응형

댓글