CF R630 div2 1332 E Height All the Same
LINK:Height All the Same
比赛的时候 被这道题给打自闭了 还有1个多小时的时候开始想 想了30min 无果 放弃治疗。
心态炸了 F不想看了 应该要把题目全看一遍的 下次不能这样了。
首先考虑总共的方案数 \((nm)^{R-L+1}\)
你发现 什么都没有了 开始分析性质。
这张矩阵图 完全可以变成01矩阵经过每一个格子不断加2 最后统一减去某个值会变成这个样子。
我们想让这个01矩阵变成全0或者全1.
开始手玩 \(1*1\) 的矩阵可以发现所有方案都合法 \(1*3\)的也是如此 考虑\(1*5\)的 发现也是如此。
\(1*4\)的就不行了。考虑\(2*2\)的发现不行 考虑\(2*3\)发现也不行 \(2*4\)也不行...
考虑\(3*3\)的 发现可以了....
大力猜结论 奇数个格子都是可以的。
偶数的格子可能可以可能不可以。
经过无数次的试验+大力猜结论 可以发现 当0或1的某个的数量为偶数的时候就可以。剩下的则不行。
这个还是不难猜的 毕竟是从偶数个格子过来的。
那么其实就等价于对于偶数个格子我们进行计算。
给每个格子分配一个权值 最后看他们的奇偶性。
可以发现都为奇数的时候 异或和为奇数 我们给依次给每个格子赋值即可f[i][j]表示前i个格子奇数个偶数或奇数 或偶数个偶数或奇数。
利用矩阵快速幂转移即可。因为一共有nm个格子。
考虑另外一种做法 统计不合法方案吧 考虑有奇数个格子为1剩下的奇数个格子为偶数。
那么方案为\(\sum_{i=1}^{nm}\)[(i&1)==1]\(C(nm,i)w1^{i}w2^{nm-i}\)
这个东西显然和 二项式定理有关。
不难得到上述式子等于\(((w1+w2)^{nm}-(w2-w1)^{nm})/2\)
这道题关键是猜出结论。
const ll MAXN=100010;
ll n,m,L,R;
inline ll ksm(ll b,ll p)
{
if(b==mod)return 0;
p=p%(mod-1);
ll cnt=1;
while(p)
{
if(p&1)cnt=cnt*b%mod;
b=b*b%mod;p=p>>1;
}
return cnt;
}
int main()
{
freopen("1.in","r",stdin);
get(n);get(m);get(L);get(R);
if((n*m)&1){putl(ksm(R-L+1,n*m));}
else
{
ll w1=(R-L+1)/2;
ll w2=w1;
if((R-L+1)&1)++w1;
putl((ksm(w1+w2,n*m)+ksm(w1-w2,n*m))%mod*ksm(2,mod-2)%mod);
}
return 0;
}
CF R630 div2 1332 E Height All the Same的更多相关文章
- cf 442 div2 F. Ann and Books(莫队算法)
cf 442 div2 F. Ann and Books(莫队算法) 题意: \(给出n和k,和a_i,sum_i表示前i个数的和,有q个查询[l,r]\) 每次查询区间\([l,r]内有多少对(i, ...
- CF R 630 div2 1332 F Independent Set
LINK:Independent Set 题目定义了 独立集和边诱导子图.然而和题目没有多少关系. 给出一棵树 求\(\sum_{E'\neq \varnothing,E'\subset E}w(G( ...
- CF R303 div2 C. Woodcutters
C. Woodcutters time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- CF#603 Div2
差不多半年没打cf,还是一样的菜:不过也没什么,当时是激情,现在已是兴趣了,开心就好. A Sweet Problem 思维,公式推一下过了 B PIN Codes 队友字符串取余过了,结果今天早上一 ...
- CF 354 div2 B 酒杯金字塔
B. Pyramid of Glasses time limit per test 1 second memory limit per test 256 megabytes input standar ...
- CF R631 div2 1330 E Drazil Likes Heap
LINK:Drazil Likes Heap 那天打CF的时候 开场A读不懂题 B码了30min才过(当时我怀疑B我写的过于繁琐了. C比B简单多了 随便yy了一个构造发现是对的.D也超级简单 dp了 ...
- CF#581 (div2)题解
CF#581 题解 A BowWow and the Timetable 如果不是4幂次方直接看位数除以二向上取整,否则再减一 #include<iostream> #include< ...
- [CF#286 Div2 D]Mr. Kitayuta's Technology(结论题)
题目:http://codeforces.com/contest/505/problem/D 题目大意:就是给你一个n个点的图,然后你要在图中加入尽量少的有向边,满足所有要求(x,y),即从x可以走到 ...
- CF 197 DIV2 Xenia and Bit Operations 线段树
线段树!!1A 代码如下: #include<iostream> #include<cstdio> #define lson i<<1 #define rson i ...
随机推荐
- (六)pandas 日常使用技巧
pandas数据处理 1.删除重复元素 import numpy as np import pandas as pd from pandas import Series,DataFrame df = ...
- 数据可视化之分析篇(九)PowerBI数据分析实践第三弹 | 趋势分析法
https://zhuanlan.zhihu.com/p/133484654 以财务报表分析为例,介绍通用的分析方法论,整体架构如下图所示: (点击查看大图) 我会围绕这五种不同的方法论,逐步阐述他们 ...
- 从零搭建Spring Cloud Gateway网关(三)——报文结构转换
背景 作为网关,有些时候可能报文的结构并不符合前端或者某些服务的需求,或者因为某些原因,其他服务修改报文结构特别麻烦.或者需要修改的地方特别多,这个时候就需要走网关单独转换一次. 实现 话不多说,直接 ...
- 从Excel(CSV)文件导入数据到Oracle
步骤: 1.准备数据:在excel中构造出需要的数据2.将excel中的数据另存为文本文件(有制表符分隔的)3.将新保存到文本文件中的数据导入到pl*sql中在pl*sql中选择tools--text ...
- GPO - Backup and Restore
Backup the GPO to a second server is very important. Restore a GPO if necessary. Note: WMI filter an ...
- Docker部署LNMP完整教程
在Docker中部署LNMP环境可以分为以下几个步骤: 安装Docker 创建镜像 创建Dockerfile build Docerfile 复制/修改配置文件 运行镜像,并映射端口 为了方便分布式部 ...
- k8s教程:Kubernetes集群使用网络存储NFS
NFS存储 NFS即网络文件系统Network File System,它是一种分布式文件系统协议,最初是由Sun MicroSystems公司开发的类Unix操作系统之上的一款经典网络存储方案,其功 ...
- 题解 洛谷 P6640 【[BJOI2020] 封印】
设\(lenth_i\)为\(s\)在\(i\)位置的前缀的后缀为\(t\)的一个子串的最长长度,即为从\(i\)位置开始往前和\(t\)的最长公共子串长度.其可以通过对\(t\)建后缀自动机,然后让 ...
- 题解 洛谷 P3639 【[APIO2013]道路费用 】
不难想到可以\(2^k\)去枚举\(k\)条新边的选择方案,然后加入原图中的边来使图连通,用当前方案的收益去更新答案,但是这样复杂度过不去. 可以先把\(k\)条新边都连上,然后再加入边权从小到大排序 ...
- iframe子页面取父页面的变量问题
iframe包含的子页面,想获取父页面的变量,不能直接获取到. 但是子页面可以访问父页面的方法 window.parent.parentFunctionName(); 利用这一点,可以将父页面的变 ...