网站服务器租用资质啥叫优化
网站服务器租用资质,啥叫优化,拱墅网站建设,大城网站优化题意:给你一串数字#xff0c;最少一个#xff0c;最多七个#xff0c;问用这里面的数字能组成多少素数#xff0c;不重复。 思路#xff1a;之前还遍历10000000的每一个素数#xff0c;结果超时#xff0c;后来发现直接dfs就可以了#xff0c;只是标记一下做过的数。 …题意:给你一串数字最少一个最多七个问用这里面的数字能组成多少素数不重复。 思路之前还遍历10000000的每一个素数结果超时后来发现直接dfs就可以了只是标记一下做过的数。 1 #pragma comment(linker, /STACK:1000000000)2 #include bits/stdc.h3 #define LL long long4 #define INF 0x3f3f3f3f5 #define IN freopen(in.txt,r,stdin)6 #define OUT freopen(out.txt, w, stdout)7 #define MAXN 100000058 using namespace std;9 bool vis[MAXN], done[MAXN], has[10];
10 int p[1000005];
11 char s[10];
12 int cnt[15], a[15];
13 int n, ans;
14 void dfs(int m, int res){
15 if(done[res]) return;
16 if(!vis[res]){
17 ans;
18 }
19 done[res] true;
20 if(m n) return;
21 for(int i 1; i n; i){
22 if(has[i]) continue;
23 has[i] true;
24 dfs(m 1, res * 10 (s[i] - 0));
25 dfs(m 1, res);
26 has[i] false;
27 }
28 }
29 int main()
30 {
31 //IN;
32 //OUT;
33 int T;
34 memset(vis, 0, sizeof(vis));
35 int o 0;
36 vis[0] vis[1] true;
37 for(int i 2; i 3200; i){
38 if(!vis[i]){
39 p[o] i;
40 }
41 for(int j 2 * i; j 10000000; j i){
42 vis[j] true;
43 }
44 }
45 scanf(%d, T);
46 while(T--){
47 //memset(cnt, 0, sizeof(cnt));
48 ans 0;
49 memset(has, 0, sizeof(has));
50 memset(done, 0, sizeof(done));
51 scanf(%s, s 1);
52 n strlen(s 1);
53 dfs(1, 0);
54 printf(%d\n, ans);
55 }
56 return 0;
57 } 转载于:https://www.cnblogs.com/macinchang/p/4747861.html
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/88296.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!