백준 1110번 더하기 사이클(C언어)

최정우·2022년 7월 2일
0

백준 문제풀이

목록 보기
13/26


Code

#include <stdio.h>

int main()
{
	int N, cnt = 0, i, res = 0, one=0;

	int arr[3] = {};

	scanf_s("%d", &N);

	if (N < 10)
	{
		arr[0] = 0;
		arr[1] = N;
	}
	else if (N >= 10 && N < 100)
	{
		arr[0] = N / 10;
		arr[1] = N % 10;
	}
	
	while (1)
	{
		res = arr[0] + arr[1];
		one = arr[1]*10;
		if (res < 10)
		{
			arr[0] = 0;
			arr[1] = res;
		}
		else if (res >= 10 && res < 100)
		{
			arr[0] = res / 10;
			arr[1] = res % 10;
		}
		res = one + arr[1];
		cnt++;
		if (res == N)
		{
			printf("%d", cnt);
			break;
		}
		if (res < 10)
		{
			arr[0] = 0;
			arr[1] = res;
		}
		else if (res >= 10 && res < 100)
		{
			arr[0] = res / 10;
			arr[1] = res % 10;
		}
	}
		
	return 0;
}

Key Points

  1. 사이클을 제대로 이해하고 숫자의 십의자리와 일의자리를 분리하여 작성
profile
WHEN LIFE GIVES YOU LEMONS, MAKE LEMONADE

0개의 댓글