Technika projektowania algorytmów polegająca na dzieleniu problemu na mniejsze podproblemy, aż staną się na tyle proste, że można je rozwiązać bezpośrednio, to:
Dobrze. Problem dzieli się na podproblemy, rozwiązuje i scala wyniki.
Źle. Sito Eratostenesa to algorytm wyznaczania liczb pierwszych.
Źle. To pojęcie z teorii ciągów, nie metoda projektowania algorytmów.
Źle. To konkretny algorytm sortowania, a nie technika projektowania.
„Dziel i zwyciężaj” (divide and conquer) to ogólna technika projektowania algorytmów: problem dzieli się na mniejsze podproblemy tego samego typu, rozwiązuje je (często rekurencyjnie), a następnie scala wyniki w rozwiązanie całości. Podział trwa, aż fragmenty staną się trywialne. Tak działają m.in. sortowanie szybkie (quicksort), sortowanie przez scalanie (merge sort) czy wyszukiwanie binarne. Dlatego opisana metoda to „dziel i zwyciężaj”.
Pozostałe pozycje to konkretne algorytmy lub pojęcia, a nie ogólna technika podziału problemu. Sito Eratostenesa to algorytm wyznaczania liczb pierwszych do zadanej granicy. Sortowanie przez wybór to jeden z prostych algorytmów porządkowania (szuka najmniejszego elementu i przenosi go na początek). Słowa Fibonacciego to pojęcie z teorii ciągów i kombinatoryki, niezwiązane z projektowaniem algorytmów. Dzielenie problemu na podproblemy aż do trywialnych to „dziel i zwyciężaj”, dlatego ta odpowiedź jest poprawna.