Problem p03564 - Generation 2

Orig Description

Score : 200 points
Problem StatementSquare1001 has seen an electric bulletin board displaying the integer 1.
He can perform the following operations A and B to change this value:
Operation A: The displayed value is doubled.
Operation B: The displayed value increases by K.
Square1001 needs to perform these operations N times in total.
Find the minimum possible value displayed in the board after N operations.
Constraints
1 \leq N, K \leq 10
All input values are integers.
InputInput is given from Standard Input in the following format:
N
K
OutputPrint the minimum possible value displayed in the board after N operations.
Sample Input 14
3
Sample Output 110
The value will be minimized when the operations are performed in the following order: A, A, B, B.
In this case, the value will change as follows: 1 → 2 → 4 → 7 → 10.  
Sample Input 210
10
Sample Output 276
The value will be minimized when the operations are performed in the following order: A, A, A, A, B, B, B, B, B, B.
In this case, the value will change as follows: 1 → 2 → 4 → 8 → 16 → 26 → 36 → 46 → 56 → 66 → 76.  
By the way, this contest is AtCoder Beginner Contest 076.

Extracted Specification

An integer N (1 ≤ N ≤ 10), representing some quantity or size.
An integer K (1 ≤ K ≤ 10), representing another quantity or size.

### Example Input:

```
4
3
```

### 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, I can help you with generating test cases for the given problem statement. Below is the test case generator in Python:

```python
import random

def tcgen():
    N = random.randint(1, 10)
    K = random.randint(1, 10)
    
    return N, K

# Example usage:
for _ in range(5):  # Generate 5 random test cases
    N, K = tcgen()
    print(f"Input: {N} {K}")
```

This generator will create random values for `N` and `K` within the constraints specified in the problem statement (1 ≤ N, K ≤ 10). Each test case will be a tuple containing the values of `N` and `K`.

Extract Arguments

def extract_arguments(fh):
    N = int(fh.readline().strip())
    K = int(fh.readline().strip())
    return N, K