求时间和空间复杂度
  • 板块灌水区
  • 楼主lucy2012
  • 当前回复25
  • 已保存回复27
  • 发布时间2024/9/16 12:56
  • 上次更新2024/9/16 16:43:49
查看原帖
求时间和空间复杂度
1252442
lucy2012楼主2024/9/16 12:56
01 #include<bits/stdc++.h>
02
03 using namespace std;
04
05 const int maxn=1010;
06
07 vector <int> G[maxn];
08 int n,m,ins[maxn];
09
10 void init(int x)
11 {
12 auto lambda_expression=[&](int x,int y)->
13 void {
14 G[x].emplace_back(y);
15 };
16 for(int i=1;i<=n;i+=x)
17 {
18 lambda_expression(i,(i+x-1)%n+1);
19 }
20 }
21
22 bool dfs(int u)
23 {
24 if(ins[u]) return 1;
25 ins[u]=1;
26 bool flag=0;
27 for(auto v:G[u])
28 {
29 if(flag) return 1;
30 flag|=dfs(v);
31 }
32 return flag;
33 }
34
35 int main()
36 {
37 ios::sync_with_stdio(false);
38 cin>>n>>m;
39 for(int i=1;i<=m;i++)
40 {
41 int x;
42 cin>>x;
43 init(x);
44 }
45 cout<<dfs(1)<<'\n';
46 }
2024/9/16 12:56
加载中...