------
## 最终结论
```python
def validate(num):
    from collections import Counter
    
    # Convert the number to a string and count the frequency of each digit
    digit_count = Counter(str(num))
    
    # Check if the frequency of each digit is less than or equal to the digit itself
    for digit, count in digit_count.items():
        if count > int(digit):
            return False
            
    return True

# Test cases
assert validate(1234) == True
assert validate(51241) == False
assert validate(321) == True
```