------
## 最终结论
```python
def minDays(n: int) -> int:
    memo = {}

    def helper(n):
        if n == 0:
            return 0
        if n in memo:
            return memo[n]
        
        # Always can eat 1 orange
        days = 1 + helper(n - 1)
        
        if n % 2 == 0:
            days = min(days, 1 + helper(n // 2))
        
        if n % 3 == 0:
            days = min(days, 1 + helper(n // 3))
        
        memo[n] = days
        return days

    return helper(n)

# Example usage
print(minDays(10))  # Output: 4
print(minDays(6))   # Output: 3
print(minDays(1))   # Output: 1
print(minDays(56))  # Output: 6
```