编程题
### 问题描述
小明今天在学校玩了一个数学游戏,老师给定两个初始整数 $x$ 和 $p$。需要对这两个整数进行多轮操作来更新 $x$ 的值,直到达到操作上限次数 $c$ 或是更新后 $x$ 的值严格大于临界值 $k$ 为止。
每轮操作包含如下步骤:
- 计算 $x^p$ 的值。
- 如果前一步结果是偶数,对结果减一,反之对结果加一。
- 将第二步结果更新为 $x$ 的新值。
现在给定一组整数,请你告诉小明所有操作结束后 $x$ 的值是多少。
### 输入格式
输入第一行包含四个整数 $x(1 \leq x \leq 10),p(2 \leq p \leq 5),c(1 \leq c \leq 10),k(x < k \leq 10^3)$,每个整数含义参见问题描述。
### 输出格式
输出仅一行,包含一个整数,表示所有操作结束后 $x$ 的值。
### 样例输入1
```text
5 2 10 500
```
### 样例输出1
```text
675
```
### 样例输入2
```text
1 2 4 1000
```
### 样例输出2
```text
99
```