AT_arc076_a.[ABC065C] Reconciled?

普及-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

すぬけ君养了 NN 只狗和 MM 只猴子。すぬけ君打算把这 N+MN+M 只动物排成一列。

すぬけ君想让这些本来不和的狗和猴子和好,因此他希望在排列时,任何两个狗或者任何两个猴子都不能挨在一起。

问有多少种这样的排列方式。由于狗和猴子都无法理解大于等于 109+710^9+7 的数字,请你输出排列方式的数量对 109+710^9+7 取模的结果。注意,同样种类的狗、同样种类的猴子彼此区别。此外,只有左右对称的队列也被认为是不同的排列。

输入格式

输入以如下格式给出,通过标准输入读入。

NN MM

输出格式

输出排列方式的数量对 109+710^9+7 取模后的结果。

输入输出样例

  • 输入#1

    2 2

    输出#1

    8
  • 输入#2

    3 2

    输出#2

    12
  • 输入#3

    1 8

    输出#3

    0
  • 输入#4

    100000 100000

    输出#4

    530123477

说明/提示

限制条件

  • 1≤N,M≤1051 \leq N, M \leq 10^5

样例解释 1

将两只狗分别记作 A、B,将两只猴分别记作 C、D,则可能的排列为:ACBD、ADBC、BCAD、BDAC、CADB、CBDA、DACB、DBCA,共 88 种排列方式。

由 ChatGPT 5 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页