Răspuns :
Răspuns:
#include <fstream>
#include <cstring>
#include <string>
using namespace std;
ifstream fin("ratc2.in");
ofstream fout("ratc2.out");
struct
{
string nume, prenume;
bool b;
int nr;
} v[105];
int main ()
{
string c[101]="", aux;
int n, p, k=0, ok=0, a[101]={0};
fin>>n>>p;
for(int i=1; i<=n; i++)
{
fin>>v[i].prenume>>v[i].nume>>v[i].b;
string s = v[i].prenume + " " + v[i].nume;
for(int j=1; j<=k; j++)
if(s.compare(c[j])==0)
{
ok=1;
if(v[i].b == 0)
a[j]++;
}
if(ok==0)
{
c[++k] = s;
if(v[i].b == 0)
a[k]++;
}
ok=0;
}
for(int i=1; i<k; i++)
for(int j=i+1; j<=k; j++)
if(a[i]<a[j])
{
swap(a[i], a[j]);
aux = c[i];
c[i] = c[j];
c[j] = aux;
}
else if(a[i]==a[j])
{
if(c[i].compare(c[j])>0)
{
aux = c[i];
c[i] = c[j];
c[j] = aux;
}
}
if(p==1)
fout<<c[1]<<' '<<a[1];
else
for(int i=1; i<=k; i++)
fout<<c[i]<<' '<<a[i]<<'\n';
}
Explicație:
bafta