2018ACM-ICPC徐州赛区网络赛: A. Hard to prepare(递推)

ACM-ICPC徐州赛区网络预赛 A题Hard to prepare(线性代数解法) (ICPC18徐州A)求n元环相邻元素同或不为零的方案.\text{(ICPC18徐州A)求n元环相邻元素同或不为零的方案.}(ICPC18徐州A)求n元环相邻元素同或不为零的方案. 如果从大家的思路来看,异或结果与同或结果只差一个奇数(有人说是偶数,我算了一下…貌似是奇数!)方案的2k2^k2k.现在考虑异或方案. 设MMM是2k2^k2k阶矩阵,若f(i,j)f(i,j)f(i,j)代表选择到... 阅读详情

2018ACM-ICPC徐州赛区网络赛: A. Hard to prepare(递推)

After Incident, a feast is usually held in Hakurei Shrine. This time Reimu asked Kokoro to deliver a Nogaku show during the feast. To enjoy the show, every audience has to wear a Nogaku mask, and seat around as a circle.

There are N guests Reimu serves. Kokoro has 2k2^k2k masks numbered from 0,1,⋯,0,1,\cdots,0,1,⋯, 2k−12^k - 12k−1, and every guest wears one of the masks. The masks have dark power of Dark Nogaku, and to prevent guests from being hurt by the power, two guests seating aside must ensure that if their masks are numbered iii and jjj , then iii XNOR jjj must be positive. (two guests can wear the same mask). XNOR means ~(iii^jjj) and every number has kkk bits. (111 XNOR 1=11 = 11=1, 000 XNOR 0=10 = 10=1, 111 XNOR 0=00 = 00=0)

You may have seen 《A Summer Day’s dream》, a doujin Animation of Touhou Project. Things go like the anime, Suika activated her ability, and the feast will loop for infinite times. This really troubles Reimu: to not make her customers feel bored, she must prepare enough numbers of different Nogaku scenes. Reimu find that each time the same guest will seat on the same seat, and She just have to prepare a new scene for a specific mask distribution. Two distribution plans are considered different, if any guest wears different masks.

In order to save faiths for Shrine, Reimu have to calculate that to make guests not bored, how many different Nogaku scenes does Reimu and Kokoro have to prepare. Due to the number may be too large, Reimu only want to get the answer modules 1e9+71e9+71e9+7 . Reimu did never attend Terakoya, so she doesn’t know how to calculate in module. So Reimu wishes you to help her figure out the answer, and she promises that after you succeed she will give you a balloon as a gift.
Input

First line one number TTT , the number of testcases; (T≤20)(T≤20)(T≤20)(T≤20)(T≤20)(T≤20) .

Next TTT lines each contains two numbers, NNN andk(0<N,k≤1e6)k(0<N,k≤1e6)k(0<N,k≤1e6)k(0<N,k≤1e6)k(0<N,k≤1e6)k(0<N,k≤1e6) .
Output

For each testcase output one line with a single number of scenes Reimu and Kokoro have to prepare, the answer modules 1e9+71e9+71e9+7 .
样例输入

2
3 1
4 2

样例输出

2
84

题目来源

ACM-ICPC 2018 徐州赛区网络预赛

题意:

n个数字,每个数字范围[0,2k−1][0,2k−1],问有多少种不同的序列满足对于所有相邻的两个数字,它们异或值不能为2k−12k−1,其中第一个数字和最后一个数字也算相邻

分析:

我们仔细分析一下这道题

根据题意我们知道异或取反后的答案只有正数或者0,所以我们只要让他们相邻异或取反不为0即可,异或取反为0说明异或为全1,也就是说明只有两个数的二进制位是互补的时候,才会全一,所以我们只需要避免让二进制互补的两个数相邻即可,而且我们知道对于每个数,与其二进制互补的数只有一个,所以每个位置的选择方案数只需要减去一个和自己互补的那个数即可

首先最一般的情况是,第一个数有2k2k种选择,第2个数到第n-1个数都有2k−12k−1种选择,第n个数有2k−22k−2种选择

即

2k   ,  2k−1   ,  2k−1⋯2k−1   ,  2k−1   ,  2k−22k   ,  2k−1   ,  2k−1⋯2k−1   ,  2k−1   ,  2k−2

最一般的情况答案必然是这样的

但是我们知道中间的2k−12k−1仅仅是保证异或取反为正,没有保证其他(比如说有两个位置数字相同),因此我们从局部开始考虑

我们看到如果第n-1个和第1个时相同的第n个位置仅仅只是和一个数不同(就是只需要不等于唯一的一个和它互补的数)即可,也就是应该有2k−12k−1种方案

但是就像刚才说的

2k   ,  2k−1   ,  2k−1⋯2k−1   ,  2k−1   ,  2k−22k   ,  2k−1   ,  2k−1⋯2k−1   ,  2k−1   ,  2k−2
这个式子中仅仅保证了异或取反为正的条件成立,也就是说这种计算方法中也必然包含了第1个位置和第n-1个位置是相同数字的情况,只不过,当他们相同时,最后一个位置应该是2k−12k−1,而我们呢依然按照2k−22k−2算了,也就是少了一个,那么最后一个位置少了一个,我们想要加上,根据乘法定理,必然是最后一个的那一种方法,乘上前面的所有可能方案,这才能完整的加上少的情况

因此我们需要加上的情况应该是这样的,第一个位置仍然是2k2k种,那么因为第n-1个位置和第一个位置相同,那么方案就是1,又因为我们这次计算的只是第n位置少的那一种,因此第n个位置也只有一种,因此我们写出来就发现应该是这样的

2k   ,  2k−1   ,  2k−1⋯2k−2   ,  1   ,  12k   ,  2k−1   ,  2k−1⋯2k−2   ,  1   ,  1

注意因为第n-1个位置和第一个位置相同了,那么第n-2个位置要同时保证,和前一个后一个都不是互补的数才行,因此变成了2k−22k−2

因此我们发现除去后面两个1,上面数列变成了长度为n-2的

2k   ,  2k−1   ,  2k−1⋯2k−22k   ,  2k−1   ,  2k−1⋯2k−2

所以我们只需要加上这长度n-2的种类数,同理,这个长度下,依然会存在上面说的问题,因此我们发现只需要递归求解就可以了,因为当长度n=1和n=2的时候,答案是唯一确定的

code:

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int mod = 1e9+7;
const int maxn = 1e6+10;
ll q_pow(ll a,ll b){
    ll ans = 1;
    while(b){
        if(b & 1)
            ans = ans * a % mod;
        a = a * a % mod;
        b >>= 1;
    }
    return ans;
}
ll f[maxn];
ll solve(int n,int k){
    ll ans;
    if(n == 2)
        return f[k] * (f[k] - 1) % mod;
    if(n == 1)
        return f[k];
    ans = (f[k] * q_pow(f[k]-1,n-2) % mod * max(f[k]-2,0LL) % mod + solve(n-2,k)) % mod;
    return ans;
}
int main(){
    int T,n,k;
    f[0] = 1;
    for(int i = 1; i < maxn; i++){
        f[i] = f[i-1] * 2 % mod;
    }
    scanf("%d",&T);
    while(T--){
        scanf("%d%d",&n,&k);
        printf("%lld\n",solve(n,k));
    }
    return 0;
}
ZED2双目相机运行VINS-FUSION初试 基于ZED2运行VINS-MONO的经验,在运行VINS-FUSION前有几点tips想跟大家分享,应该能在运行的过程中避免一些踩坑吧。 TIPs 1)关于zed2标定 开始使用Kalibr进行相机单目/双目及联合标定,虽然重投影误差最高也就5个像素,但实际使用效果却并不好,故建议大家相机内参还是从ZED2相机发布出的topic获取或可尝试/usr/local/zed/settings文件下的参数文档 另,启动ZED2.launch的时候,会有一个相机(一般是左目)和IMU的轴系转换关系Camera-IMU 阅读详情

相关推荐

【破局之道】LangChain4j 0.31.0 + Java 8 + Spring Boot:在“过时”环境中构建本地大模型应用的实战指南

本文为使用Java 8和Spring Boot等“过时”技术栈的团队提供了构建本地大模型应用的实战指南。通过采用LangChain4j 0.31.0这一兼容版本,结合Ollama部署本地大模型,开发者无需升级JDK即可在现有项目中快速集成AI能力,实现智能问答、文档摘要等功能,为传统项目注入创新活力。

t4y5u6i7o的博客 557

(计蒜客 31453)ACM-ICPC 2018 徐州赛区网络预赛 - A. Hard to prepare - (计数&递归)

题目链接:https://nanti.jisuanke.com/t/31453 题解参考自:https://blog.csdn.net/Jaihk662/article/details/82561427 题意:n个数字排成一圈,每个数字范围[0, ],问有多少种不同的序列满足对于所有相邻的两个数字,它们异或值不能为,其中第一个数字和最后一个数字也算相邻。(0&lt;n,k≤1e6) . 解析...

Orz 954

【论文笔记】LIME: low-light image enhancement via illumination map estimation

【论文笔记】LIME: low-light image enhancement via illumination map estimation 一篇低光图像增强,引用超1000次的经典论文

weixin_45565519的博客 1793

A. Hard to prepare

After Incident, a feast is usually held in Hakurei Shrine. This time Reimu asked Kokoro to deliver a Nogaku show during the feast. To enjoy the show, every audience has to wear a Nogaku mask, and seat...

海绵的博客 571

多臂老虎机——入门强化学习

多臂老虎机(Multi-Armed Bandit,MAB)问题是强化学习的经典入门例子,也是理解探索与利用(exploration-exploitation)平衡的重要案例。

qq_56683019的博客 2458

VS配置RTKLIB(卫星定位开源代码)环境

@RTKlib代码调试教程-Visual Studio 2019 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 ##RTKLIB-rtklib_2.4.3 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 @RTKlib代码调试教程-Visual Studio 2019 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技

qq_42209977的博客 4486

ACM-ICPC 2018 徐州赛区网络预赛 A. Hard to prepare(递推)

 A. Hard to prepare 题库链接  262144K After Incident, a feast is usually held in Hakurei Shrine. This time Reimu asked Kokoro to deliver a Nogaku show during the feast. To enjoy the show, every audience ...

FLY_WHITE的博客 420

零中频接收机实战:DC Offset的5种常见解决方案与调试技巧

本文针对零中频接收机中DC Offset这一核心挑战,深入剖析了其产生机理与对信号解调的严重影响。文章从实战角度出发,系统性地介绍了五种解决方案,包括硬件预防、数字域校正、I/Q不平衡联合校正等,并分享了关键的实验室调试与产线测试技巧,旨在帮助射频工程师有效提升接收机性能。

weixin_29234509的博客 396

2018ICPC区域赛徐州站赛后总结(The 2018 ACM-ICPC Asia Xuzhou Regional Contest)

废话 挺长时间不更新了,主要还是上大学了之后事挺多的吧,一般周末有足球和台球的新生杯要打,还偶尔去当其他场次的第四官员,去远征个客场、ACM训练之类的......所以大概之前的回忆录想恢复更新也许要等到寒假再说了QAQ 然后仔细想了想,觉得还是有必要把每次ACM的正式比赛记录一下的,于是有了这篇大学开山文章! 感觉以后这种机会也不多了,所以我所谓的正式比赛放宽到(校赛、邀请赛)这种比较正式的...

commonc的博客 4241

Labview 机器视觉(4)之 图像处理进阶 - 动态ROI与批量保存

本文深入探讨了LabVIEW机器视觉中动态ROI与批量保存两大进阶技术。动态ROI通过模式匹配或粒子分析实现检测区域的自动追踪,解决了产品位置变化带来的挑战。同时,文章详细介绍了如何设计高效的文件命名规则与异步保存机制,以实现海量图像数据的批量保存与管理,从而构建稳定、高效的工业自动化检测系统。

weixin_29234423的博客 218

YOLO26改进策略【Neck】| CVPR 2024 MFM(Modulation Fusion Module,调制融合模块):动态特征加权融合,突出关键特征抑制冗余

本文主要利用DCMPNet中的 MFM 模块优化 YOLO26 的目标检测网络模型。模块通过动态调制特征融合过程,实现了对多尺度、跨层级特征的智能聚合。将其应用于的改进过程中,针对目标检测中边界特征与语义信息的互补性需求,缓解网络中浅层细节与深层语义融合不足的问题。Depth Information Assisted Collaborative Mutual Promotion Network for Single Image Dehazing在图像去雾网络中,不同层级和类型的特征包含着互补的信息(如浅层的

Limiiiing的博客 221

2018ACM-ICPC徐州赛区网络赛: A. Hard to prepare【递推】+【dp】

题目链接:传送门 题意就不说了 思路: 一开始比赛的时候就是想    k = 2^m 答案等于 k*((k-1)^(m-1)) 发现多了情况 因为是个环 然后换成 k*((k-2)^(m-1))*(k-2) 发现漏算了第一个和倒数第二个相同的情况 看了网上的其他题解,包括比赛时打的表明白了这其中的规律 那么我们可以先算出第一个和倒数第二个不同的情况,而当他们相同的时候那么最后一个就...

OOOak 243

RHCA II之路---EX442-10

这题比较耗时,可以多开2个窗口让他跑起来后先做后面的题目。

Q先生 582

ACM-ICPC 2018 徐州赛区网络预赛-A.Hard to prepare-组合数学+递归

题意: 有n个点,每个点可从[0~2^k-1]中任取一值,n个点围成一个圆,要求相邻两点值的nxor(同或)值不为0,求方案数 思路: 根据题意可推出,对于一个值X,只有唯一一个值~X不能与其相邻 对于第一个点,有2^k种选择 对于第2~n-1个点,每个位置有2^k-1种选择,共有(2^k-1)^n-2种选择 对于第n个点,因其不能与第n-1个点和第1个点nxor为0,所以...

Ogmx的博客 343

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

ACM-ICPC 2018 徐州赛区网络预赛 A. Hard to prepare

After Incident, a feast is usually held in Hakurei Shrine. This time Reimu asked Kokoro to deliver a Nogaku show during the feast. To enjoy the show, every audience has to wear a Nogaku mask, an...

pxlsdz的博客 940

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Hard to prepare(2018 ACM-ICPC 徐州赛区网络赛 A)

Problem Description After Incident, a feast is usually held in Hakurei Shrine. This time Reimu asked Kokoro to deliver a Nogaku show during the feast. To enjoy the show, every audience has to wear a...

Alex_McAvoy的博客 417

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

ACM-ICPC 2018 徐州赛区网络预赛 A.Hard to prepare 【规律递推】

t题意:就是有n个人围成圈,每个人能选择顶不同的帽子,但是相邻两个人选择的帽子的编号不能同或为0,问有多少种方案 联想 + 推理 我们假设有 颗珠子, 我们不考虑开头 对末尾的限制, 只是考虑 对 的限制,答案就是 , 这些情况是多了的,多了 这种情况, 然后我们再来计算这种情况有多少? 现在的条件 是 已知 第一个是 , 最后一个是, 问一共有多少种方案。 我们先考虑简...

xizi_ghq的博客 182

ACM-ICPC 2018 徐州赛区网络预赛 A.Hard to prepare(dp)

题目 n(n<=1e6)个人围成一个环,每个人可以从0到(k<=1e6)这些数里选一个数,每个数可以被重复选 但当前人i不能和他相邻的人j选的数的同或值为0,求满足题意的方案数%(1e9+7) 同或值为0,即所有对应位置二进制位值都相反,如4和3同或值就为0 思路来源 https://blog.csdn.net/Originum/article/details/8259832...

小衣同学的博客 258

ACM-ICPC 2018 徐州赛区网络预赛徐州网络赛

ACM-ICPC 2018 徐州赛区网络预赛 A.Hard to prepare ACM-ICPC 2018 徐州赛区网络预赛 A.Hard to prepare 设答案 为 dp[n]; 考虑第n个人的面具 1.与第一个相同,这时候相当于n-1个人,即dp[n-1] 2. 与第一个不同,根据同或不等于0的原则最后一个有 (2^k-2)中选择(排除自身和同或等于0)...

海边拾贝,沧海一粟 533

ACM-ICPC 2018 徐州赛区网络预赛 A. Hard to prepare [ DP + 快速幂 + 环上组合 ]

题目链接: ACM-ICPC 2018 徐州赛区网络预赛 A. Hard to prepare 题意概括: N 个人围成一个环,每个人可以选  之间的一个整数(某个数字可以被重复选),要求是相邻两人的数同或后是正数 结果模 1e9 + 7 数据范围: 题解分析: 同或的概念就是对于两个二进制位,相同为 1,不同为 0 由于是无符号数,故两数同或后不会出现负数。所以只要满足得...

Originum的博客 425

[2018 徐州 网络赛|Hard to prepare ] 环形染色问题的公式解法

题目来源 After Incident, a feast is usually held in Hakurei Shrine. This time Reimu asked Kokoro to deliver a Nogaku show during the feast. To enjoy the show, every audience has to wear a Nogaku mask, and seat around as a circle. There are N guests Reimu serve

PushyTao的博客 443

【dp】ACM-ICPC 2018 徐州赛区网络预赛 - A - Hard to prepare

题目链接&lt;https://nanti.jisuanke.com/t/31453&gt; 题意: 一共有0~种面具,n个人围成一圈,每个人带一个面具。要求相邻两人的同或不能为0。问有几种情况。 题解: 表示与第一个人相同, 表示与第一个人非法, 表示与第一个人无关。 转移一下就可以出结果。 #include&lt;bits/stdc++.h&gt; using namespa...

Eliot的博客 271

ACM-ICPC 2018 徐州赛区网络预赛-A-Hard to prepare(瞎搞)

After Incident, a feast is usually held in Hakurei Shrine. This time Reimu asked Kokoro to deliver a Nogaku show during the feast. To enjoy the show, every audience has to wear a Nogaku mask, and seat...

信仰.的博客 626

ACM-ICPC 2018 徐州赛区网络预赛 A. Hard to prepare——涂色问题

After Incident, a feast is usually held in Hakurei Shrine. This time Reimu asked Kokoro to deliver a Nogaku show during the feast. To enjoy the show, every audience has to wear a Nogaku mask, and seat...

天翼之城的博客 760

【ACM-ICPC 2018 徐州赛区网络预赛 A. Hard to prepare】 DP

题目链接 https://nanti.jisuanke.com/t/31453 题意 一个圆环,每个位置可以选择2^k中任意一个数,要求相邻位置异或不等于2k−12^{k-1}2k−1 做法 考虑递推时的做法,如果我们把这道题转换为求一条链上的方案数,就很容易递推,但是由于环有一个限定就是开头结尾可能完全相反,导致方案数会改变,于是我们就多开一个数组存这种方案进行转移即可。 具体为 : a[i]表...

lajiyuan的博客 308
上一篇: ACM-ICPC 2018 徐州赛区网络预赛 - G Trace - 思维
下一篇: Ryuji doesn't want to study (树状数组)
Guuuuuu老师儿
博客等级 码龄9年 259粉丝 718原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值