반응형
https://www.acmicpc.net/problem/1110
1110번: 더하기 사이클
0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음,
www.acmicpc.net
#전체 코드
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
//새로운 수 만들기 -> 새로운 수 비교
string input = Console.ReadLine();
int repeat = 1;
int[] array = new int[100]; //비교할 값들을 저장
int count = 1;
array[0] = int.Parse(input);//첫번쨰 배열에는 처음 입력값 저장
string inputFirstNumber, inputSecondNumber;
int newNumber,final;
while (repeat ==1)
{
if (int.Parse(input) < 10)
{
inputSecondNumber = input.Substring(0, 1);
final = int.Parse(inputSecondNumber) * 10 + int.Parse(inputSecondNumber);
array[count] = final;
}
else
{
inputFirstNumber = input.Substring(0, 1);
inputSecondNumber = input.Substring(1, 1);
newNumber = int.Parse(inputFirstNumber) + int.Parse(inputSecondNumber);
string stringNewNumber = newNumber.ToString();
string newSecondNumber;
if (newNumber < 10)
{
newSecondNumber = stringNewNumber.Substring(0, 1);
}
else
{
newSecondNumber = stringNewNumber.Substring(1, 1);
}
final = (int.Parse(inputSecondNumber) * 10) + int.Parse(newSecondNumber);
array[count] = final;
}
//새로운 수 비교
for (int i = 0; i < count; i++)
{
if (array[i] == array[count])
{
Console.WriteLine("{0}", count);
repeat = 0;
}
}
count++;
input = final.ToString();
}
}
}
}
반응형
'[백준] > C#' 카테고리의 다른 글
백준 1193번 분수찾기 [C#] (0) | 2023.08.05 |
---|---|
백준 1152번 단어의 개수 [C#] (0) | 2023.08.05 |
백준 1065번 한수 [C#] (2) | 2023.08.05 |