Codeforces Round #714 (Div. 2) B. AND Sequences (思维)
题目
题目大意:给定一个数据,求其全排列中满足 以下条件的数量。
大致思路:如果想要等式左边等于右边,即二进制的每一位相等,那么必须找到一个数,即&上其他数对整个数不会产生影响,将这两个数放到等式两边,即可一定满足等式两边相等,那么怎么求这个数呢?
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 (思维)相关推荐
- Codeforces Round #587 (Div. 3) C. White Sheet 思维
传送门 文章目录 题意: 思路: 题意: 给你一个白色的矩形和俩个黑色的矩形,问白色被黑色覆盖后还能不能看到. 思路: 经典被简单题卡. 一开始写了个自我感觉很对的做法,结果wa41wa41wa41, ...
- Codeforces Round #636 (Div. 3) E. Weights Distributing 思维 + bfs
传送门 文章目录 题意: 思路: 题意: n≤2e5,m≤2e5n\le2e5,m\le2e5n≤2e5,m≤2e5 思路: 怎么感觉每场div3div3div3都有一个巧妙的图论题. 首先如果只有两 ...
- Codeforces Round #617 (Div. 3) F. Berland Beauty 思维
传送门 文章目录 题意: 思路: 题意: 给定一棵树,再给定若干两点最短路之间边权的最小值,让你给树的边权赋值,使得满足给定的条件,如果不存在输出−1-1−1. 思路: 观察一个性质,加入经过这条边的 ...
- 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 ...
- 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] ...
- 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 ...
- Codeforces Round #162 (Div. 2): D. Good Sequences(DP)
题意: 给你n个数字,求出最长相邻不互质子序列 思路: 设dp[i]表示以第i个数字结尾的最长子序列长度 考虑不互质的两个数(x,y),它们一定存在相同的质因子 在DP过程中求出R[p]表示p的倍数当 ...
- 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 ...
- Codeforces Round #548 (Div. 2) C. Edgy Trees(思维+dfs)
题目链接:https://codeforces.com/contest/1139/problem/C 题意是给了一棵树,n个点,m条边.让从中选k个点,使得从a1到a2,a2到a3,ak ...
- Codeforces Round #630 (Div. 2) A~D【思维,数论,字符串,位运算】
A. Exercising Walk 水题一道:在指定空间内你一定要向各个方向走a,b,c,d步问你能否在规定空间内走完这题的坑点样例都给出来了qwq #include <iostream> ...
最新文章
- 虚拟机管理你的服务器,全面解析VMware的虚拟机管理解决方案
- Django error信息邮件通知功能配置部署
- [Spring Data MongoDB]学习笔记--建立数据库的连接
- free 内存 注意点的事
- 成功解决windows开机时,系统提示此windows副本不是正版
- WordPress.com 开源,弃 PHP 改用 JavaScript
- mysql插入timeStamp类型数据时间相差8小时的解决办法
- python面试题总结(5)--数据类型(字典)
- 消息中间件系列四:RabbitMQ与Spring集成
- 如何确定自己是否适合做程序员?
- python 微信机器人教程_Python实现微信机器人的方法
- uniapp ---- 树组件
- UVA 572 Oil Deposits(DFS求连通块)
- 每天一道剑指offer-二叉搜索树与双向链表
- java软件工程师自我评价_java开发简历自我评价【java简历自我评价模板】
- 20.8 cace判断
- Camera幻灯片参数设置
- pdf转换html器 免费版,pdf转换成html转换器
- 烽火2640路由器命令行手册-04-网络协议配置命令
- 大数据服务平台---接口自动化
热门文章
- 针对目前windows系统的所有勒索病毒补丁和安全工具
- 台式计算机刚换的显示屏怎么设置,如何设置双屏显示(笔记本电脑双屏切换的快捷键)...
- XRD测试的68个问题(一)
- 51单片机数据存储器扩展实验(汇编)
- html网站背景雪花飘落效果代码,超酷html5雪花飘落特效源码
- 以太坊java_Java调用以太坊智能合约
- SAP GOS cl_gos_manager 添加附件功能
- 10行Python代码实现抽奖助手自动参与抽奖
- ept技术_EPT和VPID简介 - osc_3xz91vxi的个人空间 - OSCHINA - 中文开源技术交流社区
- 笑傲江湖 琴箫合奏之曲