코딩테스트 (C#)

백준 11720: 숫자의 합 - C# 풀이

UniCoti-sub 2024. 10. 22.
반응형

문제 사진

 

이번 문제또한 간단하다.

첫 줄에 숫자의 길이가 주어지고, 두번째 줄에는 숫자가 주어지는데,

이때 두번째 줄 숫자의 각 자리 합을 계산하여 출력하기만 하면 된다.

 

유용한 전략으로는 문자열을 배열처럼 사용하는 것이다.

배열의 인덱스 요소를 찾는 기능인 []를 사용해서 각 자리 숫자를 문자열로 알아내고,

인트형으로 변환해서 모두 더해주면 쉽게 구현할 수 있다.

 

using System;

namespace unicoti {
    class Program {
        static void Main(string[] args) {
            int.TryParse(Console.ReadLine(), out int len);
            string num = Console.ReadLine()??"";
            int sum = 0;

            for(int i = 0; i < len; i++) {
                sum += int.Parse(num[i].ToString());
            }

            Console.WriteLine(sum);
        }
    }
}

 

앞선 원리와 같다.

첫줄은 len이라는 변수에 길이를 저장하고,

num이라는 변수에 문자도 저장하고

모두 더하기 위한 sum이라는 변수를 만들어준다.

 

이후 len을 이용해 for문을 실행하고 문자열을 배열처럼 해석하여

인트형으로 파싱 후 모두 더해주었다.

for문이 끝난 이후 sum을 출력해줘서 문제를 마무리했다.


오늘의 느낀점)

이번 문제도 쉬웠다. 코딩을 안한지 꽤 시간이 지나서 그런가 문자열이 배열처럼

쓰일 수 있다는 점을 잊었던 것 같기도 한데 원래 몰랐던건지 잊은건지 기억이 안난다.

아무튼 이번 문제에서 얻은 정보는 아니라서 딱히 느낀점은 없다.

 

요즘 일기를 쓰고 싶다는 생각이 드는데 일기장에 혼자만 알기 위해 쓰기엔

창출되는 가치가 너무 미래에 달려있어서 고민된다. 그냥 직접 현실에서 쓸까?

고민해봐야겠다.

반응형

댓글