```python
def rate_cap(price: int, rate: int, most: int) -> int:
    if price < 0 or rate < 0 or most < 0:
        raise ValueError("Price, rate, and most must be non-negative")
    
    increase = min(rate // 100, most)  # Calculate the maximum allowed increase
    new_price = price + increase
    
    return new_price
```