AcWing 1351. 密码锁

2021-03-01 15:25

阅读:354

标签:col   做了   turn   ios   back   暴力   rgba   ret   get   

原题链接

考察:暴力枚举

完全是因为有容斥原理才做了这题,结果这题和容斥原理有啥关系...

思路:

       dfs枚举所有可能性

 1 #include  2 #include 
 3 #include set>
 4 #include  5 using namespace std;
 6 typedef long long ll;
 7 vectorint> v[10],t;
 8 setint> > s;
 9 void dfs(int k,int sz)
10 {
11     if(sz==3)
12     {
13         s.insert(t);
14         return;
15     }
16     for(int i=0;i)
17     {
18         t.push_back(v[k][i]);
19         dfs(k+1,sz+1);
20         t.pop_back();
21     }
22 }
23 int main()
24 {
25     int n;
26     scanf("%d",&n);
27     for(int i=1;i6;i++)
28     {
29         int x; scanf("%d",&x);
30         for(int d=-2;d2;d++)
31         {
32             if(x+d>0&&x+dd);
33             else if(x+d>n&&x+d-n>0&&x+d-nn);
34             else if(x+d0&&x+d+n0) v[i].push_back(x+d+n);
35         }
36     }
37     dfs(1,0);
38     dfs(4,0);
39     ll ans = s.size();
40     printf("%lld\n",ans);
41     return 0;
42 }

 

AcWing 1351. 密码锁

标签:col   做了   turn   ios   back   暴力   rgba   ret   get   

原文地址:https://www.cnblogs.com/newblg/p/14350933.html


评论


亲,登录后才可以留言!