题目

题目大意:给定一个数据,求其全排列中满足 以下条件的数量。

大致思路:如果想要等式左边等于右边,即二进制的每一位相等,那么必须找到一个数,即&上其他数对整个数不会产生影响,将这两个数放到等式两边,即可一定满足等式两边相等,那么怎么求这个数呢?

     cin>>a[0];ll k=a[0];    //将k&上数组中所有的数,找到那个不会影响等式两边的数for(int i=1;i<n;i++){scanf("%lld",&a[i]);k=(k&a[i]);}ll cnt=0;for(int i=0;i<n;i++)     //求出不会影响等式两边数的个数cntif( a[i]-k ==0) cnt++;


将这个数放到等式两边,可保证等式两边一定相等。

答案即为 左边选一个数,右边选一个数,然后将剩下的数全排列即可。

全部代码

#include<iostream>
#include<algorithm>using namespace std;const int N=2*1e5+10,M=1e9+7;typedef long long ll;int n;
ll a[N];int main()
{int t;cin>>t;while (t--){cin>>n;cin>>a[0];ll k=a[0];for(int i=1;i<n;i++){scanf("%lld",&a[i]);k=(k&a[i]);}ll cnt=0;for(int i=0;i<n;i++)if( a[i]-k ==0) cnt++;if(cnt<2) puts("0");else{ll ans=1;ans=cnt*(cnt-1)%M;for(int i=1;i<=n-2;i++) ans=(ans*i)%M;cout<<ans<<endl;}}return 0;
}

Codeforces Round #714 (Div. 2) B. AND Sequences (思维)相关推荐

  1. Codeforces Round #587 (Div. 3) C. White Sheet 思维

    传送门 文章目录 题意: 思路: 题意: 给你一个白色的矩形和俩个黑色的矩形,问白色被黑色覆盖后还能不能看到. 思路: 经典被简单题卡. 一开始写了个自我感觉很对的做法,结果wa41wa41wa41, ...

  2. Codeforces Round #636 (Div. 3) E. Weights Distributing 思维 + bfs

    传送门 文章目录 题意: 思路: 题意: n≤2e5,m≤2e5n\le2e5,m\le2e5n≤2e5,m≤2e5 思路: 怎么感觉每场div3div3div3都有一个巧妙的图论题. 首先如果只有两 ...

  3. Codeforces Round #617 (Div. 3) F. Berland Beauty 思维

    传送门 文章目录 题意: 思路: 题意: 给定一棵树,再给定若干两点最短路之间边权的最小值,让你给树的边权赋值,使得满足给定的条件,如果不存在输出−1-1−1. 思路: 观察一个性质,加入经过这条边的 ...

  4. Codeforces Round #450 (Div. 2)D. Unusual Sequences[数论][组合数学][dp II]

    题目:http://codeforces.com/contest/900/problem/D 题意:找到加和为m的且gcd为n的数列种类数 分析:可以转化为求gcd为1的加和为m/n的种类数,假设有m ...

  5. Codeforces Round #670 (Div. 2) D. Three Sequences(差分序列、数学思维分析)

    D. Three Sequences D. Three Sequences 题意:给定一个长度为nnn的序列a[]a[]a[],要求把他分成两个序列b[],c[]b[],c[]b[],c[] a[i] ...

  6. Codeforces Round #670 (Div. 2) D. Three Sequences

    题目链接 You are given a sequence of nnn integers a1,a2,-,ana_1, a_2, \ldots, a_na1​,a2​,-,an​. You have ...

  7. Codeforces Round #162 (Div. 2): D. Good Sequences(DP)

    题意: 给你n个数字,求出最长相邻不互质子序列 思路: 设dp[i]表示以第i个数字结尾的最长子序列长度 考虑不互质的两个数(x,y),它们一定存在相同的质因子 在DP过程中求出R[p]表示p的倍数当 ...

  8. Codeforces Round #682 (Div. 2)D Powerful Ksenia ///思维

    cf地址 题目大意:Ksenia has an array a consisting of n positive integers a1,a2,-,an. In one operation she c ...

  9. Codeforces Round #548 (Div. 2) C. Edgy Trees(思维+dfs)

    题目链接:https://codeforces.com/contest/1139/problem/C        题意是给了一棵树,n个点,m条边.让从中选k个点,使得从a1到a2,a2到a3,ak ...

  10. Codeforces Round #630 (Div. 2) A~D【思维,数论,字符串,位运算】

    A. Exercising Walk 水题一道:在指定空间内你一定要向各个方向走a,b,c,d步问你能否在规定空间内走完这题的坑点样例都给出来了qwq #include <iostream> ...

最新文章

  1. 虚拟机管理你的服务器,全面解析VMware的虚拟机管理解决方案
  2. Django error信息邮件通知功能配置部署
  3. [Spring Data MongoDB]学习笔记--建立数据库的连接
  4. free 内存 注意点的事
  5. 成功解决windows开机时,系统提示此windows副本不是正版
  6. WordPress.com 开源,弃 PHP 改用 JavaScript
  7. mysql插入timeStamp类型数据时间相差8小时的解决办法
  8. python面试题总结(5)--数据类型(字典)
  9. 消息中间件系列四:RabbitMQ与Spring集成
  10. 如何确定自己是否适合做程序员?
  11. python 微信机器人教程_Python实现微信机器人的方法
  12. uniapp ---- 树组件
  13. UVA 572 Oil Deposits(DFS求连通块)
  14. 每天一道剑指offer-二叉搜索树与双向链表
  15. java软件工程师自我评价_java开发简历自我评价【java简历自我评价模板】
  16. 20.8 cace判断
  17. Camera幻灯片参数设置
  18. pdf转换html器 免费版,pdf转换成html转换器
  19. 烽火2640路由器命令行手册-04-网络协议配置命令
  20. 大数据服务平台---接口自动化

热门文章

  1. 针对目前windows系统的所有勒索病毒补丁和安全工具
  2. 台式计算机刚换的显示屏怎么设置,如何设置双屏显示(笔记本电脑双屏切换的快捷键)...
  3. XRD测试的68个问题(一)
  4. 51单片机数据存储器扩展实验(汇编)
  5. html网站背景雪花飘落效果代码,超酷html5雪花飘落特效源码
  6. 以太坊java_Java调用以太坊智能合约
  7. SAP GOS cl_gos_manager 添加附件功能
  8. 10行Python代码实现抽奖助手自动参与抽奖
  9. ept技术_EPT和VPID简介 - osc_3xz91vxi的个人空间 - OSCHINA - 中文开源技术交流社区
  10. 笑傲江湖 琴箫合奏之曲