2015多校联合第六场hdu5363Key Set 快速幂+yy
2015-09-11 07:52
253 查看
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 of S are
key set.
Input
There are multiple test cases. The first line of input contains an integer T (1≤T≤105),
indicating the number of test cases. For each test case:
The first line contains an integer n (1≤n≤109),
the number of integers in the set.
Output
For each test case, output the number of key sets modulo 1000000007.
Sample Input
Sample Output
纯数学题 ,尝试着找公式,失败,据说这是这是找规律的题,貌似之前也见到过类似的写几个数就看出来端倪的orz
这个题更是……
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 of S are
key set.
Input
There are multiple test cases. The first line of input contains an integer T (1≤T≤105),
indicating the number of test cases. For each test case:
The first line contains an integer n (1≤n≤109),
the number of integers in the set.
Output
For each test case, output the number of key sets modulo 1000000007.
Sample Input
4 1 2 3 4
Sample Output
0 1 3 7
纯数学题 ,尝试着找公式,失败,据说这是这是找规律的题,貌似之前也见到过类似的写几个数就看出来端倪的orz
这个题更是……
#include <iostream> #include<cstdio> #include<cstring> using namespace std; #define MOD 1000000007 long long mod(long long a,long long b) { long long ans=1; while(b) { if(b&1) ans=(ans*a)%MOD; b/=2; a=(a*a)%MOD; } return ans; } int main() { int t; long long n; cin>>t; while(t--) { cin>>n; cout<<mod(2,n-1)-1<<endl; } return 0; }
相关文章推荐
- tmux使用教程
- html ---- web sql 例子
- 一个引用类型的对象占多大堆空间
- Add Digits
- 2015前半年热门营销渠道解析
- C++Primer第五版 2.6.3节练习
- C++Primer第五版 2.6.2节练习
- BZOJ 4247 挂饰 背包
- Volley框架解析(一)-----整体介绍
- *Add Binary
- 【IOS 开发学习总结-OC-2】objective-c 数据类型
- C++Primer第五版 2.6.1节练习
- gradle--第7章、Java快速开始2
- C++Primer第五版 2.5.3节练习
- VS2013常用快捷键:
- 给各位聚聚和大大介绍一个开源项目 Expression2Sql
- C++Primer第五版 2.5.2节练习
- Linux 上将出现一个新的文件系统:bcachefs
- HDU 2102 A计划 (BFS + 预处理)
- C++Primer第五版 2.4.4节练习