A
UBB · Informatică
229 Raspunsuri multiple

Se consideră algoritmul f(arr, used, curr, n, index), unde n este un număr natural (1n1051 \le n \le 10^5), arr, curr și used sunt vectori cu n elemente naturale, iar index este un număr natural.

Algoritm 1

Algorithm f(arr, used, curr, n, index)
  If index = n then
    diff ← curr[0] - curr[n - 1]
    If diff < 0 then
      diff ← -diff
    EndIf
    If g(diff) then
      For i ← 1, n execute
        Write curr[i], " "
      EndFor
      Write newline
    EndIf
    Return
  EndIf
  For i ← 1, n execute
    If not used[i] then
      used[i] ← 1
      curr[index] ← arr[i]
      f(arr, used, curr, n, index + 1)
      used[i] ← 0
    EndIf
  EndFor
EndAlgorithm

Algoritm 2

Algorithm g(num)
  If num ≤ 1 then
    Return False
  EndIf
  For i ← 2, √num execute
    If num MOD i = 0 then
      Return False
    EndIf
  EndFor
  Return True
EndAlgorithm

Care dintre următoarele afirmații sunt adevărate pentru algoritmul prezentat?

12 / 22