Submission

Status:

PPPPPxxPxx

Subtask/Task Score:

60/100

Score: 60

User: Gunto

Problemset: การเรียงสับเปลี่ยน

Language: cpp

Time: 0.008 second

Submitted On: 2026-03-04 13:18:41

#include <bits/stdc++.h>
using namespace std;

bool tes(int n){
    if(n <= 1) return false;
    for(int i = 2; i * i <= n; ++i){
        if(n % i == 0) return false;
    }
    return true;
}

vector<int> bob(string x){
    set<int> unique_nums;
    sort(x.begin(), x.end());

    do {
        unique_nums.insert(stoi(x));
    }
    while(next_permutation(x.begin(),x.end()));

    return vector<int>(unique_nums.begin(), unique_nums.end());
}

int main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    int l,c;
    cin >> l >> c;

    vector<string> x(l);

    for(int i=0;i<l;++i){
        cin >> x[i];
    }

    for(int i=0;i<l;++i){
        int sum = 0;
        vector<int> check = bob(x[i]);

        for(int num : check){
            if(tes(num)) sum++;
        }

        cout << sum << "\n";
    }

    return 0;
}