ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 완전탐색 소수찾기
    프로그래머스알고리즘 2021. 4. 24. 16:47
    #include<iostream>
    #include<vector>
    #include<algorithm>
    #include<string>
    #include<cstdlib>
    using namespace std;
    int stringcheck(int num,string numbers)//가능한 문자인지 판결(가능하면 0,불가능하면 1) 
    {
    	int check;
    	string strNum = to_string(num);
    	for(int i=0;i<strNum.size();i++)
    	{
    		check = 1;
    		for(int j =0;j<numbers.size();j++)
    		{
    			if(strNum.at(i)==numbers.at(j))
    			{
    				check = 0;
    				numbers.at(j) = ' ';
    				break;
    			}
    			
    		}
    		if(check == 1)
    		{
    			return 1;
    		}
    	}
    	return 0;
    } 
    int solution(string numbers) {
       int answer = 0;
        sort(numbers.begin(),numbers.end(),greater<int>());
    	int max = stoi(numbers);
        
        vector<int> arr(10000000);
    	for(int i = 0;i<=arr.size();i++)
    	{
    		arr[i]=1;
    	}
    	for(int i = 2;i<=arr.size();i++)
    	{
    		for(int j =i*i;j<=arr.size();j=j+i)
    		{
    			
    			arr[j] = 0;
    		}
    	}
        
    	for(int i = 2;i<=max;i++)
    	{
    		
    		if(arr[i]==1&&stringcheck(i,numbers)==0)
    		{
    			
    			answer++;	
    		}	
    		
    	}
        return answer;
    }

    '프로그래머스알고리즘' 카테고리의 다른 글

    완전탐색 - 카펫  (0) 2021.04.26
    큐 - 다리를 지나는 트럭  (0) 2021.04.25
    에라토스테네스의 체  (0) 2021.04.24
    구명보트  (0) 2021.04.13
    DFS 타겟넘버  (0) 2021.03.31
Designed by Tistory.