编程题
### 问题描述
假设你有 $ n $ 个小时的空闲时间和 $ m $ 个可选择的活动。每个活动 $ i $ 都有以下三个属性:
$ \text{time}_i $:该活动所需的时间(以小时为单位)
$ \text{fun}_i $:从该活动中获得的乐趣值
$ \text{fatigue}_i $:该活动产生的疲劳值
你可以在这 $ n $ 个小时内选择做一个或多个活动,活动可以重复。你的任务是在不超过累积疲劳值 $ q $ 的前提下,最大化在这 $ n $ 个小时内获得的乐趣。
### 输入格式
第一行包含三个整数 $ n $ , $ m $ , 和 $ q $ ,分别代表你拥有的空闲时间、可选择的活动数量和疲劳值的最大阈值。
接下来的 $ m $ 行,每行包含三个整数 $ \text{time}_i $ , $ \text{fun}_i $ , 和 $ \text{fatigue}_i $ ,分别描述每个活动的所需时间、乐趣值和疲劳值。
### 输出格式
输出一个整数,表示在满足所有条件的前提下,最大可能获得的乐趣值。
### 样例输入
```
10 3 15
2 5 4
3 7 6
1 2 1
```
### 样例输出
```
22
```
### 评测数据范围
$1 \leq n \leq 100 $,$ 1 \leq m \leq 50 $,$ 1 \leq q \leq 100 $ ,$ 1 \leq \text{time}_i, \text{fun}_i, \text{fatigue}_i \leq 20 $。