Fişierul bac.txt conţine, în ordine descrescătoare, cel puţin două şi cel mult 10^6 numere naturale din intervalul [0,10^9], separate prin câte un spaţiu. Se cere să se afişeze pe ecran, în ordine strict descrescătoare, separate prin câte un spaţiu, numai numerele care apar în fişier de exact două ori. Dacă nu există niciun astfel de număr, se afișează pe ecran mesajul nu exista. Proiectați un algoritm eficient din punctul de vedere al memoriei utilizate şi al timpului de executare.
Exemplu: dacă fişierul conţine numerele 100 50 50 50 49 49 36 16 16 12 10 10 9 7 7
pe ecran se afişează, în această ordine, numerele 49 16 10 7
Anexe:
Răspunsuri la întrebare
Răspuns de
4
Răspuns:
#include <iostream>
using namespace std;
int main()
{
unsigned int n,i,x;
cout<<"n=";
cin>>n;
long a[n],b[100000]={0};
for(i=0;i<n;i++)
{
cout<<"a["<<i<<"]=";
cin>>a[i];
}
for(i=0;i<n;i++)
{
x=a[i];
b[x]++;
}
for(i=100000;i>0;i--)
if(b[i]==2)
cout<<i<<" ";
return 0;
}
Explicație:
Eu nu am ajuns inca la fisier, poti sa il bagi si tu
Alte întrebări interesante
Limba română,
8 ani în urmă
Ed. tehnologică,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă
Chimie,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă