Ce este gresit la acest algoritm?..
Se dau doi vectori cu câte n elemente, numere naturale. Verificați dacă cei doi vectori conțin exact aceleași elemente.
#include
using namespace std;
int main()
{
int n,i,j,k,b,c=0;
cin >> n;
int v[n],a[n];
for(i=1;i<=n;i++)
cin >> v[i];
for(i=1;i<=n;i++)
cin >> a[i];
for(i=1;i<=n;i++)
{
b=v[i];
k=0;
for(j=1;j<=n;j++)
{
if(b==a[j]&& k==0)
k++;
}
c=c+k;
}
if(c==n)
cout<<"DA";
else
cout<<"NU";
return 0;
}
artur99:
Poate am copiat eu greșit, dar așa cred să fie
Răspunsuri la întrebare
Răspuns de
12
Uite, codul tău corectat:
#include <iostream>
using namespace std;
int main(){
int n,i,j,k,b,c=0,ok=1;
cin >> n;
int v[n],a[n];
for(i=1;i<=n;i++)
cin >> v[i];
for(i=1;i<=n;i++)
cin >> a[i];
for(i=1;i<=n;i++){
b=v[i];
k=0;
c=0;
for(j=1;j<=n;j++){
if(b==a[j]) k++;
if(b==v[j]) c++;
}
if(c!=k) ok=0;
}
if(ok)
cout<<"DA";
else
cout<<"NU";
return 0;
}
#include <iostream>
using namespace std;
int main(){
int n,i,j,k,b,c=0,ok=1;
cin >> n;
int v[n],a[n];
for(i=1;i<=n;i++)
cin >> v[i];
for(i=1;i<=n;i++)
cin >> a[i];
for(i=1;i<=n;i++){
b=v[i];
k=0;
c=0;
for(j=1;j<=n;j++){
if(b==a[j]) k++;
if(b==v[j]) c++;
}
if(c!=k) ok=0;
}
if(ok)
cout<<"DA";
else
cout<<"NU";
return 0;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Geografie,
9 ani în urmă