【容斥+组合数】Massage @2018acm徐州邀请赛 E

2018ACM江苏省邀请赛题解+std 2018年ACM江苏省邀请赛题解+std,北京邮电大学 张恺晨(JSZKC)出题 立即下载

问题 E: Massage

时间限制: 1 Sec  内存限制: 64 MB

题目描述

JSZKC  feels  so  bored  in  the  classroom  that  he  wants  to  send  massages  to  his  girl  friend. However, he can’t move to his girl friend by himself. So he has to ask his classmates for help. 
The classroom is a table of size N × M. We'll consider the table rows numbered from top to bottom 1 through N, and the columns numbered from left to right 1 through M. Then we'll denote the cell in row x and column y as (x, y). And every cell sits a student. 
Initially JSZKC sits on the cell (1, 1) . And his girl friend sits on cell (n, m). A message can go from  cell (x, y) to  one  of  two  cells (x + 1, y) and (x, y + 1).  JSZKC  doesn’t  want  to  trouble  his classmates too much. So his classmates(not including his girl friend) may not take massages more than once. It’s obvious that he can only send out two massages. Please help JSZKC find the number of ways in which the two massages can go from cell (1, 1) to cell (n, m). 
More  formally,  find  the  number  of  pairs  of  non-intersecting  ways  from  cell (1, 1) to cell (n, m) modulo 1000000007 .  Two  ways  are  called  non-intersecting  if  they  have  exactly  two common points — the starting point and the final point. 

输入

The input file contains several test cases, each of them as described below. 
The first line of the input contains one integers N (2 ≤ N,M≤ 1000), giving the number of rows and columns in the classroom. 
There are no more than 100 test cases. 

输出

One line per case, an integer indicates the answer mod 1000000007. 

样例输入

2 2
2 3
3 3

样例输出

1
1
3


meaning

从(1,1)到(n,m)只能向(x+1,y)和(x,y+1)走,问有多少种方案走两条不相交的路。

solution

又是一道想到了就很水的题

要求走两条路且不相交,可以将起点看作A1(1,2)和A2(2,1),终点看作B1(n-1,m)和B2(n,m-1)。

设S(A,B)表示从A到B的方案数。(C(n+m-2,n-1),n,m为矩形长宽)

那么由容斥,ans = S(A1,B1)*S(A2,B2)-S(A1,B2)*S(A2,B1) (因为只要路径相交,从A1就可以到B2,从A2就可以到B1)

code

#define IN_LB() freopen("C:\\Users\\acm2018\\Desktop\\in.txt","r",stdin)
#define OUT_LB() freopen("C:\\Users\\acm2018\\Desktop\\out.txt","w",stdout)
#define IN_PC() freopen("C:\\Users\\hz\\Desktop\\in.txt","r",stdin)
#include <bits/stdc++.h>
using namespace std;
 
typedef long long ll;
const int maxn = 200005;
ll fac[maxn],MOD = 1e9+7;
 
void init() {
    int i;
    fac[0] =1;
    for(i =1; i <= (int)2e5+10; i++) //modify
        fac[i] = fac[i-1]*i % MOD;
}
 
ll fastpow(ll a, ll b) {
    ll tmp = a % MOD, ans =1;
    while(b) {
        if(b &1)
            ans = ans * tmp % MOD;
        tmp = tmp*tmp % MOD;
        b >>=1;
    }
    return ans;
}
 
ll comb(ll n, ll m) {
    return  m>n ? 0 : fac[n]*fastpow(fac[m]*fac[n-m], MOD-2) % MOD;
}
 
ll Lucas(ll n, ll m) {
    return m ? (comb(n%MOD, m%MOD)*Lucas(n/MOD, m/MOD))%MOD : 1;
}
 
int main() {
//    IN_LB();
    init();
    int n,m;
    while(scanf("%d%d",&n,&m)!=EOF){
        cout<<(Lucas(n+m-4,n-2)*Lucas(n+m-4,n-2)%MOD-Lucas(n+m-4,n-1)*Lucas(n+m-4,m-1)%MOD+MOD)%MOD<<endl;
    }
    return 0;
}

深交所 vs 上交所:Level-2实时数据推送规则详解与策略适配指南 本文深度解析沪深Level-2实时数据推送规则的关键差异,包括逐笔成交、逐笔委托和10档行情接口的处理逻辑。针对高频交易策略,详细对比上交所与深交所在数据推送机制、时间戳处理及委托队列解析等方面的差异,并提供具体的策略适配方案和性能优化建议,帮助量化投资者提升跨市场交易稳定性。 阅读详情

相关推荐

Xilinx实战-深入AXI UART Lite IP核的配置与调试

本文详细介绍了Xilinx FPGA中AXI UART Lite IP核的配置与调试方法,包括Vivado环境下的IP核设置、关键参数优化、寄存器操作及常见问题排查。通过实战案例和代码示例,帮助开发者快速掌握AXI接口的串口通信技术,提升嵌入式系统开发效率。

weixin_29189377的博客 228

2018徐州邀请赛B - Array - 动态规划

题解链接 http://www.lucien.ink/archives/251/ 题目 题目描述 JSZKC is the captain of the lala team. There are N girls in the lala team. And their height is [1,N] and distinct. So it means there are no tw...

LucienShui 1167

《UDS协议从入门到精通》系列——到底什么是DTC?

到底什么是DTC?看这里,深度图解DTC格式,详述DTC状态位、快照信息和扩展信息!!

车载系统攻城狮 1万+

2018 ACM ICPC 全国邀请赛(江苏)赛后感受

                                    一个打铁菜鸟的赛后反思        徐州邀请赛结束啦,带着郁闷的心情回到学校,可以说是非常失落,还是自己太菜了,没能给上半年留下一个很好的结尾,都是我的锅,感觉自己罪孽深重的样子,状态也很是不好,最近在调整自己的状态,虽然快考试了,但还是想坚持训练,不能放弃。         从今年1月份开始,我们开始准备省赛,一直到现在,...

howell 2605

无法将“choco”项识别为 cmdlet、函数、脚本文件或可运行程序的名称的解决方案

本文主要介绍了无法将“choco”项识别为 cmdlet、函数、脚本文件或可运行程序的名称的解决方案,希望能对使用wIndows的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 12万+

【YOLOv8/v9/v10 实战 01】YOLOv8/v9/v10全系列实战对决:性能矩阵、架构拆解与2026部署指南

2026年YOLO生态已进入“战国时代”,Ultralytics YOLOv8/11/26、阿里YOLO12、清华YOLOv10、微软YOLOv9四大路线并行发展。本文基于官方文档、学术论文及实测数据,系统剖析三大核心版本(YOLOv8/v9/v10)的架构演进逻辑,构建覆盖参数量、mAP、FPS、FLOPs的完整性能矩阵。通过8组工业场景实测、全流程代码实现(训练-导出-部署)、6类硬件适配方案,解决新手选型难、进阶者优化无门、工业开发者部署低效的痛点。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 534

【倍增】T-shirt @2018acm徐州邀请赛 I

问题 I: T-shirt 时间限制:1 Sec内存限制:64 MB 题目描述 JSZKC is going to spend his vacation!His vacation has N days. Each day, he can choose a T-shirt to wear. Obviously, he doesn’t want to wear a singer c...

weixin_30613433的博客 202

Linux ARM平台开发系列讲解(网络篇)1.3 MDIO总线设备device和设备driver匹配

在设备和驱动都载入内核后,设备和驱动是如何匹配起来的呢?其实他们就是通过的唯一标识phyID进行匹配phy_dev和phy_drv是通过phy_bus_match函数进行匹配,匹配成功后会建立链表链接,具体流程如下图: 返回总目录......

DSMGUOGUO的博客 1098

The 2018 ACM-ICPC China JiangSu (2018徐州邀请赛)(solve9/11)

题目链接:https://www.jisuanke.com/contest/1408?view=challenges A题: 题意:就是给你n*m的格子,然后k个点,K个点有火,开始四个方向蔓延,问你最后烧的那个格子的位置,有多个的话,x优先再y优先。 思想:n*m*t暴力求即可。 #include&lt;bits/stdc++.h&gt; using namespace std; co...

passer__的博客 675

ESP32S3接入讯飞在线语音识别教程及配套源代码

本文介绍了如何使用ESP32-S3开发板实现讯飞在线语音识别功能。首先,需要准备硬件设备,包括ESP32-S3开发板、麦克风模块、MicroSD卡模块和扬声器模块。接着,安装Arduino IDE并配置ESP32-S3开发环境,注册讯飞开放平台账号并获取API凭证。然后,通过I2S接口连接麦克风模块,并编写代码实现语音录制、Base64编码、API请求和识别结果处理。代码包括初始化WiFi、麦克风、系统时间,以及录制语音、发送请求、解析响应等功能。最后,通过按键触发录音,并将识别结果输出到串口。

2401_88800025的博客 748

LLC电路细讲笔记(二)LLC谐振转换器:频率、增益与Q值的详细探讨

这本电子书通过详细分析LLC谐振转换器的工作原理、等效电路和增益公式,帮助读者深入理解如何设计和优化谐振转换器系统。通过这些公式和设计方法,工程师可以根据不同的应用需求调整参数,实现高效的电能转换。

weixin_43199439的博客 6890

2018 ACM-ICPC 徐州邀请赛 B.Array 滚动dp+前缀和+离线处理

链接: https://www.jisuanke.com/contest/1408/85274 题意: 多组样例,每组给一个1-&amp;amp;amp;amp;amp;amp;gt;n的数组,问全排列方案中,有多少种方案会使得满足i 数据规模: 0&amp;amp;amp;amp;amp;amp;lt;样例数,n,k&amp;amp;amp;amp;amp;amp;lt;=5000 内存限制:65536K 时间限制:1000ms 思路: 大佬说,遇事不决先打表,首

krypton12138的博客 635

从0到1用OpenClaw打造酒店收益管理系统:数据整合→AI策略迭代全链路落地实战

本文基于三亚某连锁海景酒店真实项目落地经验编写,系统上线3个月,酒店平均入住率从62%提升至80%,RevPAR(平均可售房收入)提升26%,淡季空置率降低46%,完全覆盖中小酒店全场景收益管理需求。本文配套OpenClaw全量Skill代码、工作流配置文件,可直接复用落地。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 493

2018徐州邀请赛I - T-shirt - 矩阵快速幂

题解链接 http://www.lucien.ink/archives/249/ 题目 题目描述 JSZKC is going to spend his vacation! His vacation has N days. Each day, he can choose a T-shirt to wear. Obviously, he doesn’t want to wear ...

LucienShui 1164

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

2018ACM/ICPC全国邀请赛(江苏) 总结

抱憾打铁。整理了一下今天的思路,记录如下。 开始时我先开的A题,我感觉是模拟,和lqs讨论了一下,感觉会T,就想其他方法了。开始wjj开的B,他说感觉是推个公式,要想一下。我想了一会,然后叫wjj过来讨论了一下,感觉每个点入队一次,2秒1e7可能不会超,就准备试一发,这时有人过A了,wjj和我整理了一下思路,就去敲了,wjj优先队列忘了,我就把他换下来了。这时,太长时间没A题的劣...

Krone_的博客 1422

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【分治-前缀积后缀积】JS Window @2018acm徐州邀请赛G

问题 G: JS Window 时间限制:2 Sec内存限制:512 MB 题目描述 JSZKC has an array A of N integers. More over, he has a Window of length M which means the Window can contain M continuous integers in the array.At...

weixin_30797199的博客 171

2018江苏ICPC邀请赛感受

这次的江苏邀请赛6月2号到6月3号在徐州举办,所以我们星期六一大早就出发了。坐了四个小时的车后终于到了徐州,比赛地点在中国矿业大学,我们先入住了金晨假日酒店,这是主办方推荐的,还是挺不错的,四星级酒店。之后就去学校参加了开幕式和下午的热身赛,下午的热身比赛一开始,超哥就迅速A掉了A题(当时我还在读题中~~~省略一些心情),然后就卡在第二题上,第二是字符串拓展KMP,直接丢给了易楠,自己看到了第三题...

aaakirito的博客 674

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

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

commonc的博客 4241

js属性操作实例

html> lang="en"> charset="UTF-8"> Title #box{width: 100px;height: 100px;background: red;} /* * 需求: * 点击按钮获取输入框里的属性名称与属性值,对div进行设置 * 分析: * 1,

IT_zkc的博客 424

ICPC 江苏站 邀请赛心得

这次的江苏赛,学校的安排还是非常周到的,有集中的酒店,专门接送的大巴,就很贴心。酒店说是四星级的,窗户好大好大的,旁边还有一个躺椅,躺在上面,听听歌,看看窗外,完全忘了自己是来比赛的。。。热身赛,好快做了第一题,很简单,其他的题感觉不是不能做,一个字符串让你从n方变成nlogn的题目,不过后来还是没有写出来、、、、、、正赛,这次感觉 没有 那种很水比手速的那种题。一开始做了两个题,一个搜索,一个大...

xxxxhc的博客 415

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

Prefix Substring (2018年徐州矿大亚洲区邀请赛热身赛)

Given two stringA ,B,how many sustring of A is prefix_substring of B ? Two substring are considered different if their first or last orboth indexes in A are differentInputMultiple te...

weixin_30929195的博客 189

NYOJ 1218 zkc学长的福利

zkc学长的福利 时间限制:10000 ms  |  内存限制:65535 KB 难度:3 描述 又是一年ACM集训的时刻,zkc学长邀请n位同学来玩一个有奖游戏。首先,他让每个同学在左、右手上面分别写下一个整数,zkc学长自己也在左、右手上各写一个整数。然后,让这n位同学排成一排,zkc学长站在队伍的最前面。排好队后,所有的同学都会获得zkc学长分发的若干肉松饼,每位同学获得的肉松饼

MADE_Y 1275

2017ACM-ICPC全国邀请赛(陕西)

没想到大二下学期又能有幸的参加一场全国邀请赛,跟各位大佬齐聚一堂享受被虐的快感。 =========================日常水==========================弱校抱着拿区域赛拿名额的心态来打了这场比赛,前几场比赛没打好,想要这场好好再打一把。周五下午上完课,跟着队友赶着去了高铁,队友帮我去送个电脑给他朋友,hovees先跟着我去了机场,于是就有了协会历史上第一次误机事

QuanQqqqq的博客 5739

2018徐州邀请赛I题 I. T-shirt

JSZKC is going to spend his vacation! His vacation has NN days. Each day, he can choose a T-shirt to wear. Obviously, he doesn't want to wear a singer color T-shirt since others will consider he has ...

yjt9299的博客 654
上一篇: 【分治-前缀积后缀积】JS Window @2018acm徐州邀请赛G
下一篇: 【倍增】T-shirt @2018acm徐州邀请赛 I
乌拉尔银狼
博客等级 码龄10年 9粉丝 35原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值