Ciao a tutti, ho urgente bisogno di aiuto, questa è la traccia:
Dato un vettore di interi v e un intero x scrivi una funzione in C che stabilisce se esistono in v dueelementi
v[i] e v[i] tali che v[i] + v[i] = x. Calcola la complessita computazionale dell'algoritmo
proposto. Esiste un'algoritmo che funziona in tempo
O(n^2)? E possibile fare meglio?


Questo è quello che ho provato a fare



codice:
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int v[100], n, i, j, position;
    printf("Inserisci il numero degli elementi\n");
    scanf("%d", &n);
 
    printf("Inserisci %d elementi\n", n);
    
    for ( i = 0 ; i < n ; i++ )
      scanf("%d", &v[i]);
    
    int x;
    printf("inserisci un intero x \n");
    scanf("%d", &x);
    for ( i = 0 ; i < ( n - 1 ) ; i++ )
    {
         position = i;
         int somma = v[position] + v[j];
         
         for ( j = i + 1 ; j < n ; j++ )
         {
             if ( somma = x )
             somma = x;
         }
         if   ( somma != x )
             i++;
             }
    system("pause");
    return 0;
}