본문 바로가기
알고리즘/백준 BOJ

[BOJ C#]11659 구간 합 구하기 4

by 왹져박사 2023. 1. 16.
728x90
using System;

namespace _11659
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr = { 0, 5, 4, 3, 2, 1 };
            int[] sumarr = new int[5 + 1];

            // 합배열 만들기
            // sumarr[i] = sumarr[i-1] + arr[i]

            sumarr[0] = arr[0];
            for (int i = 1; i < arr.Length; i++)
            {
                sumarr[i] = sumarr[i - 1] + arr[i];
            }

            for (int i = 0; i < 6; i++)
            {
                Console.Write("{0,2} ", arr[i]);
            }
            Console.WriteLine();
            for (int i = 0; i < 6; i++)
            {
                Console.Write("{0,2} ", sumarr[i]);
            }

            Console.WriteLine();

            // 구간합 공식
            // sumarr[i] - sumarr[j-1]
            //i번째 수부터 j번째 수까지 합을 출력한다.

            Console.WriteLine("구간합의 시작을 입력하시오");
            int startIndex = int.Parse(Console.ReadLine());
            Console.WriteLine("구간합의 끝을 입력하시오");
            int endIndex = int.Parse(Console.ReadLine());

            if (startIndex < 1)
                Console.WriteLine(sumarr[endIndex]);
            else
                Console.WriteLine(sumarr[endIndex] - sumarr[startIndex - 1]);

        }
    }
}

728x90

'알고리즘 > 백준 BOJ' 카테고리의 다른 글

[BOJ C#] 2798 블랙잭  (0) 2023.01.25
[BOJ C#] 2775 부녀회장이 될테야  (0) 2023.01.25
[BOJ C#] 11720 숫자의 합  (0) 2023.01.15
[BOJ C#] 10988 팰린드롬  (0) 2023.01.15
[BOJ C#] 1181 단어 정렬  (0) 2023.01.12