Pagini recente » Cod sursa (job #1496506) | Cod sursa (job #689271) | Cod sursa (job #3292475) | Cod sursa (job #2800572) | Cod sursa (job #2962143)
#include <iostream>
#include <fstream>
using namespace std;
int num[10];
int frecv[1000];
int main()
{
int i, n, c, nrmin, nrmax, x, j, x_aux, cf, nr, len_num, nrapmin, nrapmax, x1min, x1max, x2min, x2max, aparitii_max;
ifstream fin;
fin.open("3cifre.in");
ofstream fout;
fout.open("3cifre.out");
fin >> n;
fin >> c;
switch(c)
{
case 1:
nrmin = 1000;
nrmax = -1;
for(i = 0; i < n; i++)
{
num[0] = 0; num[1] = 0;num[2] = 0;num[3] = 0;num[4] = 0;num[5] = 0;num[6] = 0;num[7] = 0;num[8] = 0;num[9] = 0;
fin >> x;
x_aux = x;
j = 0;
while(x > 0)
{
cf = x % 10;
x /= 10;
num[j] = cf;
j++;
}
len_num = j;
for(j = len_num - 1; j >= 2; j--)
{
if(num[j] != 0)
{
nr = num[j] * 100 + num[j - 1] * 10 + num[j - 2];
if(nr > nrmax)
{
nrmax = nr;
nrapmax = 1;
x2min = x_aux;
x2max = x_aux;
}else if(nr == nrmax)
{
nrapmax++;
x2max = x_aux;
}
if(nr < nrmin)
{
nrmin = nr;
nrapmin = 1;
x1min = x_aux;
x1max = x_aux;
}else if(nr == nrmin)
{
nrapmin++;
x1max = x_aux;
}
}
}
}
fout << nrmin << " " << nrapmin << " " << x1min << " " << x1max << endl;
fout << nrmax << " " << nrapmax << " " << x2min << " " << x2max << endl;
break;
case 2:
for(i = 0; i < n; i++)
{
num[0] = 0; num[1] = 0;num[2] = 0;num[3] = 0;num[4] = 0;num[5] = 0;num[6] = 0;num[7] = 0;num[8] = 0;num[9] = 0;
fin >> x;
x_aux = x;
j = 0;
while(x > 0)
{
cf = x % 10;
x /= 10;
num[j] = cf;
j++;
}
len_num = j;
for(j = len_num - 1; j >= 2; j--)
{
if(num[j] != 0)
{
nr = num[j] * 100 + num[j - 1] * 10 + num[j - 2];
frecv[nr]++;
}
}
}
aparitii_max = -1;
for(i = 100; i <= 999; i++)
{
if(frecv[i] > aparitii_max)
{
aparitii_max = frecv[i];
}
}
fout << aparitii_max << endl;
for(i = 100; i < 999; i++)
{
if (frecv[i] == aparitii_max)
{
fout << i << " ";
}
}
break;
default:
break;
}
fin.close();
fout.close();
return 0;
}