Supposons que l'on nous donne un tableau contenant des entiers non négatifs (pas nécessairement distincts).
Soit un trié dans l'ordre non croissant. Nous voulons calculer A m = max i ∈ [ n ] B [ i ] + i .
La solution évidente consiste à trier puis à calculer . Cela donne un algorithme qui s'exécute dans le temps dans le pire des cas.
Est-il possible de faire mieux? Peut-on calculer en temps linéaire?
Ma principale question est celle ci-dessus. Mais il serait intéressant de connaître la généralisation suivante du problème.
Soit un trié selon une comparaison oracle et une fonction donnée par un oracle. Étant donné et les oracles pour et , que pouvons-nous dire du temps nécessaire pour calculer ?
On peut encore calculer en temps . Mais peut-on prouver une borne inférieure super-linéaire pour ce cas généralisé?
Si la réponse est oui, la borne inférieure est-elle valable si nous supposons que est l'ordre habituel sur les entiers et est une fonction "agréable" (monotone, polynomiale, linéaire, etc.)?f