Witam,
stworzyłem działający kod który przyjmuje zbiór o mocy n, i liczbę k który ma znaleźć najmniejszą liczbę nienależącą do zbioru i podzielną przez k. Jednak nie mieści się on w ramach czasowych zadania i chciałbym się dowiedzieć jak mogę go zoptymalizować. Oto wspomniany kod:
#include <bits/stdc++.h>
using namespace std;
vector <long long> vec;
int n;
bool isit(long long l)
{
for (int i=0;i<n;i++)
{
if (l==vec[i])
return 1;
}
return 0;
}
int main()
{
ios_base::sync_with_stdio(false);
long long k,a,l=1;
cin>>n>>k;
for(int j=0;j<n;j++)
{
cin>>a;
vec.push_back(a);
}
int i=1;
while(true)
{
l=k*i;
if (isit(l)==0)
{
cout<<l;
return 0;
}
i++;
}
}