hdoj5363Key Set
来源:互联网 发布:中信期货交易软件 编辑:程序博客网 时间:2024/06/02 04:44
Problem Description
soda has a set S with n integers {1,2,…,n} . A set is called key set if the sum of integers in the set is an even number. He wants to know how many nonempty subsets ofS are key set.
Input
There are multiple test cases. The first line of input contains an integerT (1≤T≤105) , indicating the number of test cases. For each test case:
The first line contains an integern (1≤n≤109) , the number of integers in the set.
The first line contains an integer
Output
For each test case, output the number of key sets modulo 1000000007.
Sample Input
41234
Sample Output
0137
Author
zimpha@zju
题意:给你一个具有n个元素的集合s{1,2,3,4,,,,n},问该集合的非空子集中和为偶数的非空子集的个数。经过推导,sum=2^(n-1)-1;
此题需要用到快速幂(用于求2^(n-1));
代码如下:
#include<cstdio>#include<cstring>#include<algorithm>#define LL long longusing namespace std; const int mod = 1000000007;LL quickpow(LL n,LL m){int ans=1;while(m){if(m&1){ans=n*ans%mod;}n=n*n%mod;m>>=1;}return ans;}int main(){int n;scanf("%d",&n);while(n--){LL q;scanf("%lld",&q);LL sum=quickpow(2,q-1)-1;printf("%lld\n",sum);}}
0 0
- hdoj5363Key Set
- hdoj5363Key Set(快速幂+同余定理)
- set /?
- Set
- set
- set
- set
- Set
- set
- Set
- Set
- set
- set
- Set
- set
- Set
- set
- Set
- package的用法
- 在64位的环境下利用Jet来操作Access,Excel和TXT
- 数据库---设计原则
- 341. Flatten Nested List Iterator
- Linux内核之进程调度
- hdoj5363Key Set
- Pseudoprime numbers
- VS项目解决方案中的某个项目总是在编译时“已跳过生成”
- 003-明明的随机数
- HDU1671 Phone List
- 机器分配(变了形的完全背包)
- 2016.7.23 随笔
- 卸载docker
- Cocos2d-x 3.x Lua的启动流程