#ABC156D. Bouquet

Bouquet

题目描述

Akari has nn kinds of flowers, one of each kind.

She is going to choose one or more of these flowers to make a bouquet.

However, she hates two numbers aa and bb, so the number of flowers in the bouquet cannot be aa or bb.

How many different bouquets are there that Akari can make?

Find the count mod (109+7)(10^9 + 7).

Here, two bouquets are considered different when there is a flower that is used in one of the bouquets but not in the other bouquet.

明里有 nn 种花,每种一朵。

她打算从这些花中选择一种或几种做成花束。

但是,她讨厌 aabb 这两个数字,所以花束中的花朵数不能是 aabb

阿卡丽可以制作多少种不同的花束?

(109+7)(10^9 + 7) 的模数。

在这里,如果其中一个花束中使用了一种花,而另一个花束中没有使用,那么这两个花束就被认为是不同的。

输入格式

输入内容按以下格式标准输入:

nn aa bb

输出格式

打印 Akari 可以制作的花束数量,取模 (109+7)(10^9 + 7) 。(如果没有花束,则打印 0)。

样例 #1

样例输入 #1

4 1 3

样例输出 #1

7

样例 #2

样例输入 #2

1000000000 141421 173205

样例输出 #2

34076506

说明

数据规模与约定

  • 输入值均为整数。
  • 2n1092 \leq n \leq 10^9
  • $1 \leq a \lt b \leq \textrm{min}(n, 2 \times 10^5)$

样例 11 解释

在这种情况下,Akari 可以选择 2244 鲜花来制作花束。

44 种花中选择 22 种花的方法有 66 种,选择 44 种花的方法有 11 种,所以 Akari 一共可以制作 77 种不同的花束。

样例 22 解释

打印计数 mod (109+7)(10^9 + 7)