Skip to content

소수 찾기 #416

@fkdl0048

Description

@fkdl0048
#include <string>
#include <vector>
#include <bits/stdc++.h>

using namespace std;

set<int> numberSet;

bool isPrime(int number) {
    if (number == 0 || number == 1)
        return false;
    
    int lim = sqrt(number);
    for (int i = 2; i <= lim; i++)
        if (number % i == 0)
            return false;
    
    return true;
}

void makeCombination(string comb, string others) {
    
    std::cout << comb << "\n";
    
    if (comb != "") {
        numberSet.insert(stoi(comb));
    }
    
    for (int i = 0; i < others.size(); i++) {
        makeCombination(comb + others[i], others.substr(0, i) + others.substr(i + 1));
    }
}

int solution(string numbers) {
    makeCombination("", numbers);
    
    int answer = 0;
    for (int number : numberSet)
        if (isPrime(number))
            answer++;
    
    return answer;
}

Metadata

Metadata

Assignees

Projects

Status

Done

Relationships

None yet

Development

No branches or pull requests

Issue actions