Documente Academic
Documente Profesional
Documente Cultură
#include <iostream>
#include <string.h>
#include <stdlib.h>
char voc[]={'a','e','i','o','u'};
char s[100], q[300];
}
s2[j++]=s1[n-1];
s2[j]='\0';}
int main()
{
int nr=0;
cin.get(s,100);
char *p;
char s1[100];
/*se extrage fiecare cuvant si se determina prin apelul functiei
mijlociu, sirul mijlociu asociat acestuia. In variabila q se retin
sirurile mijlocii asociate cuvintelor gasite */
p=strtok(s," ");
while (p!=NULL)
{
mijlociu(p,s1);
daca sirul a mai fost asociat altui cuvant atunci se
contorizeaza perechile
if (strstr(q,s1))nr+
+; else
{strcat(q," ");
strcat(q,s1);
}
p=strtok(NULL," ");
}
cout<<nr;
return 0;
}
Rezolvare
#include <fstream>
#include <iostream>
using namespace std;
ifstream f("titu.in");
int na,nb,ok, a[1001], b[1001];
int main()
{
int i,j;
f>>na>>nb; //sirul descrescator se inverseaza la citire for(i=na-
1;i>=0;i--)f>>a[i];
//se elimina valorile care se repeta
i=0;
while (i<na-1)
{
if (a[i]==a[i+1])
{for(j=i;j<na;++j)a[j]=a[j+1]; na--;i--;
}
i++;}
//citirea sirului crescator
for(i=0;i<nb;++i)f>>b[i];
//se elimina valorile care se repeta
i=0;
while (i<nb-1)
{
if (b[i]==b[i+1])
{
for(j=i;j<nb;++j)b[j]=b[j+1]; nb--;i--;
}i++;}
//printr-un algoritm asemanator interclasarii se afiseaza
valorile cerute
// variabila ok marcheaza procesul de afisare
i=j=0;
while (i<na && j<nb)
{
if (a[i]<b[j])
{
if (a[i]%2){ok=1; cout<<a[i]<<" ";} i++;}
else
if (b[j]<a[i])
{
if (b[j]%2) {ok=1; cout<<b[j]<<" ";} j++;}
else i++,j++;}
for(;i<na;++i) if (a[i]%2){ok=1; cout<<a[i]<<" ";} for(;j<nb;++j)
if (b[j]%2){ok=1; cout<<b[j]<<" ";} if(ok==0)cout<<"Nu exista";
return 0;