본문 바로가기
코딩테스트 준비/백준 C#

백준 C# - 1193 +) 풀이

by 코딩하는 돼징 2023. 7. 8.
반응형

풀이

우리가 먼저 문제를 봤을때 알 수 있는 정보는 3가지가 있다.

1. 한 행에 있는 분수의 갯수

2. 한 행의 합

3. 한 행의 각각의 index는 num - ( lineSum - lineCount ) 구할 수 있다.

이를 조합해서 문제를 풀어보자

 

표를 확인해보면 lineIndex를 통해서 분수의 한 부분을 구할 수 있는 것을 확인할 수 있다.

lineCount가 홀수인 경우 오른쪽, 짝수인 경우 왼쪽 그리고 lineCount - lineIndex + 1을 통해서 나머지 한쪽을 구할 수 있다.

그러므로 아래와 같은 연산을 통해 구할 수 있다.

 


Code완성본

using System;
using System.Collections.Generic;
namespace baek2
{
   class Program
    {
        static void Main(string[] args)
        {
            int num = int.Parse(Console.ReadLine());
            int lineCount=0,lineSum=0,lineIndex = 0;
            
            while(num > lineSum)
            {
                lineCount++;
                lineSum += lineCount;
            }

            lineIndex = num - (lineSum - lineCount);

            if(lineCount % 2 == 1)
                Console.WriteLine($"{lineCount-lineIndex+1}/{lineIndex}");
            else
                Console.WriteLine($"{lineIndex}/{lineCount-lineIndex+1}");
            
        }
       
    }
}
반응형

'코딩테스트 준비 > 백준 C#' 카테고리의 다른 글

백준 C# - 5086  (0) 2023.07.15
백준 C# - 2869 +) 풀이  (0) 2023.07.08
백준 C# - 2292 +) 풀이  (0) 2023.06.13
백준 C# - 2903 +) 풀이  (0) 2023.05.29
백준 C# - 2720  (0) 2023.05.29

댓글