```python

def rate_cap(price: int, rate: int, most: int) -> int:
    if price < 0 or rate < 0 or most <= 0:
        raise ValueError("Rate and most must be non-negative integers")

    increase = min(rate // 100 * price, most)
    return price + increase
```