问题描述:
小A喜欢吃烤串,一天他来到了烧烤摊,发现一共有n种套餐,第i种套餐会有ai块肉和bi块蔬菜,但是小A只能选择不同两种套餐,然后把所有的肉和蔬菜串在一起,形成一个烤串。现在我们知道的是,肉都是一样的,菜也是完全相同的,小A想知道,他有把这些肉和菜按照某种顺序串起来后,会有多少种不同的可能,两种烤串被 认为不同,当且仅当选的套餐有不同,或者两个套餐相同,但是肉和菜的排列方式不同。
输入:
第一行有一个整数n,表示一共有多少种烤串。
接下来n行,第i行两个整数ai,bi,表示第i种套餐有ai块肉,bi块蔬菜。
其中ai和bi都是非负整数
输出:
输出一个整数占一行,表示对应的答案对1e9+7。
样例输入:
3
1 1
1 1
2 1
样例输出:
26
数据范围:
对于40%的数据,2≤ n ≤ 1000。
对于100%的数据,2≤ n ≤ 200000。
对于100%的数据,1 ≤ai,bi ≤2000
样例解释:第一和第二串一共可以组成6种,第一和第三串一共可以组成10种,第二和第三串一共可以组成10种,总共26种。
时间限制:1 s
空间限制:128 MB