Il problema a mio parere è molto bello... non così la mia soluzione, comunque la posto lo stesso
L'idea è quella di mettere degli upperbound sia a quali primi possono dividere a, sia al loro massimo esponente. Cominciamo con l'esponente:
sia $ a=\prod p_i^{a_i} $ e $ n=\prod q_i ^ {b_i} $, ed inoltre sia $ K=1+max(b_i) $
Notiamo ora che $ a' = p_j^{a_j-M} \prod_{i \neq j} p_i^{a_i} \cdot p_{k+1} $ è contemporaneamente minore di a e con più divisori (fate due conti...) se prendiamo $ M=\lfloor \frac{a_j+1}{2} \rfloor $ e $ p_{k+1} \leq p_j^M $. Perciò esiste un a'<a e con più divisori di a, assurdo. Perciò per ogni primo $ p_i $ tutti i primi minori di $ p_i^{\lfloor \frac{a_i+1}{2} \rfloor} $ dividono a.
Ora andiamo con la dimensione dei primi. Supponiamo ci sia un $ p_j >n^K $. Allora consideriamo $ a''=\frac{a}{p_j} \cdot n^K $, che è minore di a, ed inoltre ha più divisori, perchè il rapporto $ \displaystyle \frac{d(a'')}{d(a)} = \frac{a_j-1+1}{a_j+1} \cdot \frac{\displaystyle \prod_{p_i|n} (a_i+K+1)}{\displaystyle \prod_{p_i|n} (a_i+1)} \geq \frac12 \cdot 2 = 1 $, perchè almeno uno dei primi che dividono sia n che a ha - in a - un esponente minore di quello con cui compare in n (altrimenti n dividerebbe a), esponente che a sua volta è minore o uguale a K-1.
Perciò il più grande primo che divide n non può superare $ n^K $, ma d'altro canto se $ p_i|a $ tutti i primi minori di $ p_i^{\lfloor \frac{a_i+1}{2} \rfloor} $ dividono a. Perciò l'esponente di ogni primo non può crescere indefinitamente (altrimenti prima o poi troveremmo che deve dividere a un primo > n^K), e perciò, essendo finiti i primi che possono dividere a ed essendo il loro esponente superiormente limitato, abbiamo solo un numero finito di possibili a, per ogni scelta di n.
Sono consapevole del fatto che non si capisce molto: chiedo solo di avere un po' di comprensione, perchè non è semplicissimo da scrivere. Ovviamente chiedete quanto volete!