Algorithm/Problem Solving

프로그래머스 C# - 소수 만들기 (Summer/Winter Coding)

JeongKyun 2022. 2. 21.
반응형

서론

이번에 푼 문제는 소수값을 구하는 방법과 배열에 대한 지식만 있다면 간단히 풀 수 있을만한 문제라고 생각한다. 다른 사람들의 풀이를 보니 정말 접근자체를 다르게 한사람들도 있어 조곰 신기하긴했다. 아직은 알고리즘 초보기에 꾸준히 노력하여 좋은 답안을 낼 실력을 갖춰야겠다.

 

 

문제

 

문제 본문

 

풀이

using System;

class Solution
{
    public int solution(int[] nums)
    {
        int answer = 0;

        for (int i = 0; i <= nums.Length - 1; i++)
        {
            for (int j = i + 1; j <= nums.Length - 1; j++)
            {
                for (int k = j + 1; k <= nums.Length - 1; k++)
                {
                    int sum = nums[i] + nums[j] + nums[k];

                    //인덱스 크기 검증
                    if ((i == j || i == k || j == k) || (i > j || i > k || j > k))
                        continue;
					
                    if (IsPrime(sum))
                        answer++;
                }
            }
        }

        return answer;
    }

    //소수 값인지 확인
    public static bool IsPrime(int n)
    {
        bool isBool = true;
        for (int i = 2; i <= n / 2; i++)
        {
            if (n % i == 0)
            {
                isBool = false;
                break;
            }
        }
        return isBool;
    }
}

 

C# 소수값 구하기

https://jeongkyun-it.tistory.com/13

 

 

문제 URL

https://programmers.co.kr/learn/courses/30/lessons/12977?language=csharp

댓글

💲 많이 본 글