hdu 5363 Key Set

简介:

hdu 5363 的传送门

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

4
1
2
3
4

Sample Output

0
1
3
7

题目大意:给你一个数m,然后有m个数,这个数有多少个和是偶数的集合,e:给你3,集合有{1},{1,2},{1,3},
{1,2,3},{2},{2,3},{3}

然而和是偶数的只有{1,2},{1,3},{2,3};

解题思路:推出公式; ans=2 ^ (m-1) - 1;

下面上代码:

#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
const int mod = 1000000007;
typedef long long LL;
LL quick(int m)
{
    m-=1;
    LL ans=1;
    LL tmp=2;
    while(m)
    {
        if(m&1)
        {
            ans=ans*tmp%mod;
            m--;
        }
        tmp=(tmp*tmp)%mod;
        m>>=1;
    }
    return ans;
}
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        int m;
        scanf("%d",&m);
        printf("%lld\n",quick(m)-1);
    }
    return 0;
}
目录
相关文章
eggjs 项目报错 Cookie need secret key to sign and encrypt. Please set config.keys first
eggjs 项目报错 Cookie need secret key to sign and encrypt. Please set config.keys first
311 0
eggjs 项目报错 Cookie need secret key to sign and encrypt. Please set config.keys first
|
4月前
|
API
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
|
4月前
|
Java 应用服务中间件 nginx
【Azure 环境】Azure应用程序网关设置set_Cookie=key=value; SameSite=Strict; HTTPOnly,AzureAD登录使用cookie时使用不了的案例记录
【Azure 环境】Azure应用程序网关设置set_Cookie=key=value; SameSite=Strict; HTTPOnly,AzureAD登录使用cookie时使用不了的案例记录
|
4月前
|
缓存 NoSQL Redis
【Azure Redis 缓存】Azure Cache for Redis 是否记录具体读/写(Get/Set)或删除(Del)了哪些key呢?
【Azure Redis 缓存】Azure Cache for Redis 是否记录具体读/写(Get/Set)或删除(Del)了哪些key呢?
|
6月前
|
存储 NoSQL Redis
Redis第七弹-Set与ZSET基本操作,Set(集合特点)SADD key member(注意这个key,必须是你自定义名字,不能用key)​编辑SMEMBERS key-查询所有的key
Redis第七弹-Set与ZSET基本操作,Set(集合特点)SADD key member(注意这个key,必须是你自定义名字,不能用key)​编辑SMEMBERS key-查询所有的key
|
6月前
|
缓存 NoSQL 关系型数据库
Redis第二课,1.set key value(设置对应的key和value)2.get key(得到value值)Redis全局命令(支持很多的数据结构)3.keys(用来查询当前
Redis第二课,1.set key value(设置对应的key和value)2.get key(得到value值)Redis全局命令(支持很多的数据结构)3.keys(用来查询当前
|
7月前
|
API Python Windows
[已解决] openai.error.AuthenticationError: No API key provided. You can set your API key in code using
[已解决] openai.error.AuthenticationError: No API key provided. You can set your API key in code using
444 0
The 'manifest_version' key must be present and set to 2 (without quotes)
The 'manifest_version' key must be present and set to 2 (without quotes)
89 0
|
NoSQL Redis 数据库
REDIS03_概述、安装、key、字符串String、列表List、集合Set、Hash哈希、Zset有序集合、持久化策略(九)
REDIS03_概述、安装、key、字符串String、列表List、集合Set、Hash哈希、Zset有序集合、持久化策略(九)
129 0
REDIS03_概述、安装、key、字符串String、列表List、集合Set、Hash哈希、Zset有序集合、持久化策略(九)
|
NoSQL Redis
REDIS03_概述、安装、key、字符串String、列表List、集合Set、Hash哈希、Zset有序集合、持久化策略(八)
REDIS03_概述、安装、key、字符串String、列表List、集合Set、Hash哈希、Zset有序集合、持久化策略(八)
115 0
REDIS03_概述、安装、key、字符串String、列表List、集合Set、Hash哈希、Zset有序集合、持久化策略(八)