题解:

挺好的一道题

两次容斥+一次二项式反演

首先考虑部分分不存在k的限制

然后我们发现两维之间是互相独立的

下面以x轴为例

然后问题就变成了

$$\sum\limits_{i=1}^{R} {xi}=k (xi<=Mx)$$

这个东西是个经典问题,容斥做就可以了

$$h(R)=\sum\limits_{i=0}^{R}{{(-1)}^{i}*C_R^i *p(i)}$$

$$p(x)= C_{Tx-(Mx+1)*x+R-1}^{R-1}$$

但是这样还不对,因为走$(0,0)$是不合法的

所以我们求出来的$h(R)$是至多走了$R$步的方案数

令$g(x)$表示正好走了$x$步$(0,0)$的方案数

$$h(R)=\sum\limits_{i=0}^{R} { C_R^i *g(i) }$$

由这个可以二项式反演得出$g(R)$

$$g(R)=\sum\limits_{i=0}^{R} { {(-1)}^{R-i} * C_R^i *h(i) }$$

这个复杂度是$O(R*MIN(R,Tx/Mx))$的

现在加入了k个不能走的限制

显然我们需要继续容斥

因为都是$g$的倍数所以可以$/g$后进行

$dp[i][j]$表示选出$i$个和为$j$的方案数

$$ans=\sum\limits_{i=0}^{n} { {(-1)}^{i} \sum\limits_{j=0}^{100} {dp[i][j]* C_R^i *calc(Tx-j*G,R-i)} }$$

时间复杂度的话

注意到因为$g>=1e4$,所以$Mx$也要$>=1e4$

那么复杂度就是$O(50*(1e6/1e4)*(1e6/1e4)*1e3)$

并且这个很显然是不满的

LOJ#6374 网格的更多相关文章

  1. 【LOJ#6374】网格(二项式反演,容斥)

    [LOJ#6374]网格(二项式反演,容斥) 题面 LOJ 要从\((0,0)\)走到\((T_x,T_y)\),每次走的都是一个向量\((x,y)\),要求\(0\le x\le M_x,0\le ...

  2. LOJ #6374「SDWC2018 Day1」网格

    模拟赛考过的题 当时太菜了现在也一样只拿到了$ 30$分 回来填个坑 LOJ #6374 题意 你要从$ (0,0)$走到$ (T_x,T_y)$,每次移动的坐标增量满足$ 0 \leq \Delta ...

  3. LOJ 546: 「LibreOJ β Round #7」网格图

    题目传送门:LOJ #546. 题意简述: 题目说的很清楚了. 题解: 将不包含起点或障碍物的连续的行或列缩成一行或一列,不会影响答案. 处理过后,新的网格图的行数和列数最多为 \(2k + 3\). ...

  4. LOJ#2084. 「NOI2016」网格

    $n,m \leq 1e9$,$n*m$的网格中有$c \leq 1e5$个是黑的,其他是白的.问:使至少两个白的不连通,最少需要再把几个白的涂黑. 可以发现答案是-1,0,1,2啦.-1要么没白的, ...

  5. 【LOJ】#2084. 「NOI2016」网格

    题解 之前用的mapTLE了,今天用了个hash把题卡了过去,AC数++ 我们只要保留一个点为中心周围5 * 5个格子就可以 如果一个点周围5*5个格子有两个不连通,那么显然输出0 如果一个出现了一个 ...

  6. Loj #2321. 「清华集训 2017」无限之环

    Loj #2321. 「清华集训 2017」无限之环 曾经有一款流行的游戏,叫做 *Infinity Loop***,先来简单的介绍一下这个游戏: 游戏在一个 \(n \times m\) 的网格状棋 ...

  7. loj 3090 「BJOI2019」勘破神机 - 数学

    题目传送门 传送门 题目大意 设$F_{n}$表示用$1\times 2$的骨牌填$2\times n$的网格的方案数,设$G_{n}$$表示用$1\times 2$的骨牌填$3\times n$的网 ...

  8. [LOJ#6259]「CodePlus 2017 12 月赛」白金元首与独舞

    [LOJ#6259]「CodePlus 2017 12 月赛」白金元首与独舞 试题描述 到河北省 见斯大林 / 在月光下 你的背影 / 让我们一起跳舞吧 うそだよ~ 河北省怎么可能有 Stalin. ...

  9. Loj #2719. 「NOI2018」冒泡排序

    Loj #2719. 「NOI2018」冒泡排序 题目描述 最近,小 S 对冒泡排序产生了浓厚的兴趣.为了问题简单,小 S 只研究对 *\(1\) 到 \(n\) 的排列*的冒泡排序. 下面是对冒泡排 ...

随机推荐

  1. Gcc 命令大全

    gcc这条命令用来将源代码生成可执行程序,下面来看一下gcc的常用选项. 1.无选项编译链接 例:命令:gcc test.c //会默认生成a.out可执行程序 2.-E: 进行预处理和编译,生成汇编 ...

  2. MongoDB用户权限认证

    关于用户的认证及权限 用户是跟着库创建的,在哪个库创建的什么权限的什么用户,只对此库有相应权限(除超级管理员以外). 官网文档:https://docs.mongodb.com/master/refe ...

  3. BeanUtils 日期转换(本地格式yyyy-MM-dd)转换成date

    1.BeanUtils工具的使用 1)beanUtils 可以便于对javaBean的属性进行赋值. 2)beanUtils 可以便于对javaBean的对象进行赋值. 3)beanUtils可以将一 ...

  4. python 正则指北之我的总结

    本文经本人搜索网络加上个人理解整理而成,如有侵权,请告知,会立即删除! 正则引擎大体上可分为不同的两类:DFA和NFA,而NFA又基本上可以分为传统型NFA和POSIX NFA. DFA Determ ...

  5. k-means cluster images

    说明 慕课网上例子,使用k-means算法分类图片, 此处调试运行通过, 并添加包管理内容, 使得其他同学容易运行. 例子地址: https://github.com/fanqingsong/clus ...

  6. 在Ubuntu/CentOS/Debian系统下,使用CPU挖Monero (XMR)币

    CentOS7(增加源) yum repolist # 查看yum源列表 yum localinstall http://dl.fedoraproject.org/pub/epel/7/x86_64/ ...

  7. git错误记录及解决

    一.git每次提交.拉取都要输用户名和密码 问题描述:每次提交.拉取文件时都要输用户名和密码,特别麻烦 原因:在git上面注册了用户名a,然后本机安装了TortoiseGit工具,登录时会在本机C:\ ...

  8. centos7 搭建jenkins服务器

    具体可参考:https://blog.csdn.net/it_lihongmin/article/details/80814384 注意: 1. 修改主目录:默认是/var/lib/jenkins,  ...

  9. 20175214 《Java程序设计》第9周学习总结

    20175214 <Java程序设计>第9周学习总结 本周学习任务总结 1.根据<java2实用教程>和蓝墨云学习视频学习第十一章: 2.尝试将课本重点内容用自己的话复述手打: ...

  10. Mac环境下 elasticsearch-6.0.1 和 elasticsearch-head 完整安装过程

     安装步骤: 安装java jdk 安装elasticsearch-6.0.1 及中文分词 anslysis-ik-6.0.1 安装elasticsearch-head 下载jdk https://w ...