Fişierul date.in conţine pe prima linie un număr natural n din intervalul (0,5000), iar pe a doua linie, separate prin câte un spaţiu, n numere naturale, formate din cel mult 4 cifre fiecare. Scrieţi un program C/C++ care determină şi scrie în fişierul date.out, toate numerele, citite de pe a doua linie a fişierului date.in, care apar de cel puţin două ori. Numerele determinate se vor scrie în ordine crescătoare, pe aceeaşi linie, separate prin câte un spaţiu.
Exemplu: dacă fişierul date.in conţine pe prima linie numărul 11, iar pe linia a doua valorile 23 12 54 12 78 345 67 23 78 934 23
atunci fişierul date.out va conţine: 12 23 78
Răspunsuri la întrebare
Răspuns de
0
Răspuns:
#include <iostream>
#include <cmath>
#include <fstream>
using namespace std;
ifstream in("date.in");
ofstream out("date.out");
int f[10000],n,x,vmax=0;
int main()
{
in>>n;
for(int i=1;i<=n;i++)
{
in>>x;
vmax=max(vmax,x);
f[x]++;
}
for(int i=0;i<=vmax;i++)
if(f[i]>=2)
out<<i<<' ';
return 0;
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Engleza,
8 ani în urmă
Matematică,
8 ani în urmă
Franceza,
8 ani în urmă
Franceza,
8 ani în urmă
Matematică,
9 ani în urmă