Submission
Status:
xxxxxxxxxx
Subtask/Task Score:
0/100
Score: 0
User: nik121416
Problemset: การเรียงสับเปลี่ยน
Language: cpp
Time: 0.004 second
Submitted On: 2026-03-16 15:49:56
#include <bits/stdc++.h>
using namespace std;
vector<bool> prime(1000000,true);
void p(){
prime[0] = false;
prime[1] = false;
for(int i = 2; i * i < 10000000;i++){
if(prime[i]){
for(int j = i*i ;j < 10000000;j+=i){
prime[j] = false;
}
}
}
}
int main(){
p();
int m,n;
cin >> m >> n;
vector<int> sum(m,0);
for(int i = 0 ; i < m;i++){
string s;
cin >> s;
sort(s.begin(),s.end());
do{
//if(s[0] == '0') continue;
int nn = 0;
for(char c : s){
nn = nn*10 + (c-'0');
}
if(nn < 1e6 &&prime[nn]){
sum[i] +=1;
}
}
while(next_permutation(s.begin(),s.end()));
}
for(int i:sum){
cout << i << '\n';
}
}