Pagini recente » Cod sursa (job #170596) | Cod sursa (job #2183726) | Cod sursa (job #838394) | Cod sursa (job #3203832) | Cod sursa (job #2215615)
#include <stdio.h>
int v[3000000];
int main()
{
FILE *fin;
FILE *fout;
int n,i,nr,maj;
fin=fopen("majoritar.in","r");
fscanf(fin,"%d",&n);
for (i=0;i<n;i++)
fscanf(fin,"%d",&v[i]);
fclose(fin);
maj=v[0];
nr=1;
for (i=1;i<n;i++)
if(v[i]==maj)
nr++;
else
{
nr--;
if (nr<0)
{
maj=v[i];
nr=1;
}
}
nr=0;
for (i=0;i<n;i++)
if (v[i] == maj)
nr++;
fout=fopen ("majoritar.out","w");
if (nr>n/2)
fprintf(fout,"%d %d\n",maj,nr);
else
fprintf(fout,"-1\n");
fclose(fout);
}