Orig Description
Score : 400 points
Problem StatementWe have N+1 integers: 10^{100}, 10^{100}+1, ..., 10^{100}+N.
We will choose K or more of these integers. Find the number of possible values of the sum of the chosen numbers, modulo (10^9+7).
Constraints
1 \leq N \leq 2\times 10^5
1 \leq K \leq N+1
All values in input are integers.
InputInput is given from Standard Input in the following format:
N K
OutputPrint the number of possible values of the sum, modulo (10^9+7).
Sample Input 13 2
Sample Output 110
The sum can take 10 values, as follows:
(10^{100})+(10^{100}+1)=2\times 10^{100}+1
(10^{100})+(10^{100}+2)=2\times 10^{100}+2
(10^{100})+(10^{100}+3)=(10^{100}+1)+(10^{100}+2)=2\times 10^{100}+3
(10^{100}+1)+(10^{100}+3)=2\times 10^{100}+4
(10^{100}+2)+(10^{100}+3)=2\times 10^{100}+5
(10^{100})+(10^{100}+1)+(10^{100}+2)=3\times 10^{100}+3
(10^{100})+(10^{100}+1)+(10^{100}+3)=3\times 10^{100}+4
(10^{100})+(10^{100}+2)+(10^{100}+3)=3\times 10^{100}+5
(10^{100}+1)+(10^{100}+2)+(10^{100}+3)=3\times 10^{100}+6
(10^{100})+(10^{100}+1)+(10^{100}+2)+(10^{100}+3)=4\times 10^{100}+6
Sample Input 2200000 200001
Sample Output 21
We must choose all of the integers, so the sum can take just 1 value.
Sample Input 3141421 35623
Sample Output 3220280457
Extracted Specification
An integer N (1 ≤ N ≤ 2×10^5), representing some quantity or size.
An integer K (1 ≤ K ≤ N+1), representing another quantity or size.
### Example Input:
```
13 2
```
### Function Signature:
Write a function f(N, K) that takes in the input.
def f(N: int, K: int):
'''
N: an integer
K: an integer
'''
Test Case Generator
Sure! Below is a test case generator for the given problem statement:
```python
import random
def tcgen():
N = random.randint(1, 200000)
K = random.randint(1, N + 1)
return N, K
# Example usage:
if __name__ == "__main__":
N, K = tcgen()
print(N, K)
```
### Explanation:
1. **N Generation**:
- `N` is generated randomly between 1 and 200,000 (inclusive), as per the constraints.
2. **K Generation**:
- `K` is generated randomly between 1 and \(N + 1\) (inclusive), ensuring it adheres to the constraint \(1 \leq K \leq N + 1\).
### Sample Outputs:
- When you run the generator, it will give you random test cases within the specified constraints. For example:
```
13795 4302
200000 150000
1 1
```
You can use this generator to create multiple test cases for your problem. The values will be printed in the required format for each test run.
Extract Arguments
def extract_arguments(fh):
N, K = map(int, fh.readline().strip().split())
return N, K