Cod sursa(job #896347)
| Utilizator | Data | 27 februarie 2013 15:15:32 | |
|---|---|---|---|
| Problema | Elementul majoritar | Scor | 20 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.68 kb |
#include<stdio.h>
FILE *in,*out;
int n,v[100001],ma,mijloc,i,j,a;
int main()
{
in=fopen("elmaj.in","rt");
out=fopen("elmaj.out","wt");
fscanf(in,"%d",&n);
for(i=1;i<=n;i++)
fscanf(in,"%d",&v[i]);
mijloc=(n+1)/2;
for(i=1;i<n;i++)
for(j=i+1;j<=n;j++)
{
if(v[i]>v[j])
{
ma=v[i];
v[i]=v[j];
v[j]=ma;
}
}
i=mijloc;
while(v[i++]==v[mijloc])
a++;
i=mijloc;
while(v[i--]==v[mijloc])
a++;
if(a-1>mijloc)
fprintf(out,"%d %d",v[mijloc],a-1);
fclose(in);
fclose(out);
return 0;
}
