C# 알고리즘 코드카타

58. 소수 만들기

잼잼재미 2023. 12. 14. 09:37

 

 

using System;

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

        for(int i = 0; i < nums.Length; ++i)
        {
            for(int j = i + 1; j < nums.Length; ++j)
            {
                for(int z = j + 1; z < nums.Length; ++z)
                {
                    num = nums[i] + nums[j] + nums[z];
                    
                    for(int n = 2; n <= num - 1; ++n)
                    {
                        if(num % n == 0) count++;
                    }             
                    
                    if(count == 0) answer++;
                    count = 0;
                }
            }
        }

        return answer;
    }
}

4중for문을 사용해서 시간복잡도가 매우 좋지 않다. 다른 좋은 풀이가 있는지 생각해봐야한다.

'C# 알고리즘 코드카타' 카테고리의 다른 글

60. 기사단원의 무기  (1) 2023.12.18
59. 덧칠하기  (0) 2023.12.18
57. 모의고사  (0) 2023.12.13
56. 과일 장수  (0) 2023.12.12
55. 카드 뭉치  (0) 2023.12.11