SMALL

https://www.acmicpc.net/problem/1110

 

1110번: 더하기 사이클

0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음,

www.acmicpc.net


  • 문제

  • 문제풀이

a, b, c, d를 만들어준다. a는 첫번째 수의 십의자리, b는 첫번째 수의 일의자리, c는 첫번째 숫자의 십의자리와 일의자리를 더해 나온수로 두번째 수의 일의자리이며, d는 두번째 나올 수이다. sum에 처음의 수를 입력해주고 만들어진 d와 sum에 할당된 숫자가 같아질때까지 반복을 돌린뒤 반복의 횟수를 출력한다.

 


  • 코드 1
namespace BaekJoon
{
    internal class Program
    {
        public static int N;
        public static int Count;
        public static void Solution()
        {
            Count= 0;
            int sum = N; //더했을 때 처음 수 할당
            while (true)
            {
                int a = N / 10; 
                int b = N % 10; 
                int c = (a + b) % 10; 
                int d = b * 10 + c; //두번째 나올 수
                N = d; //N에 다시 할당
                Count++; //횟수 체크
                if (d == sum) break; //다시 처음 수가 나온다면 그만
            }
            Console.WriteLine(Count);
        }

        static void Main(string[] args)
        {
            N = int.Parse(Console.ReadLine());

            Solution();
        }
    }
}

  • 후기

C#을 공부하기위해 클래스를 생성하여 풀어보았다.

LIST

'백준 > C#' 카테고리의 다른 글

[C#]백준 10773번: 제로  (0) 2023.01.05
[C#]백준 2775번: 부녀회장이 될테야  (0) 2023.01.05
[C#]백준 10828번: 스택  (0) 2023.01.05
[C#]5597번: 과제 안 내신 분..?  (0) 2023.01.05
[C#]백준 2442번: 별 찍기 - 5  (0) 2023.01.05

+ Recent posts