Projeto Euler - solução errada nº 1 do Python

Eu sou relativamente novo em codificação em geral e iniciei o Project Euler para levar minha codificação um pouco mais longe. Passei um tempo pensando em como trabalhar a primeira pergunta por conta própria e tentei usar funções recursivas, infelizmente sempre obtendo o mesmo erro (266333). Do que eu perdi? Algum grande erro para aprender?

A pergunta original diz: "Se listarmos todos os números naturais abaixo de 10 que são múltiplos de 3 ou 5, obtemos 3, 5, 6 e 9. A soma desses múltiplos é 23.

Encontre a soma de todos os múltiplos de 3 ou 5 abaixo de 1000. "

def function(i, j, h, k):
    if j < 1000 and k < 1000:
        i = i + j
        h = h + k
        return function(i, j+3, h, k+5)
    elif j < 1000 and k >= 1000:
        i = i + j
        return function(i, j+3, h, k)
    elif j >= 1000 and k < 1000:
        h = h + k
        return function(i, j, h, k+5)
    else:
        print (i + h)


function(0,0,0,0)

Onde i é a soma dos múltiplos de 3, h é a soma dos múltiplos de 5, j é múltiplos de 3 e k é múltiplos de 5.

Fonte do problema

questionAnswers(2)

yourAnswerToTheQuestion