👤

Buna, in c++ cum pot cauta un prefix? De ex

5

pre

preadmitere

eprezicere

pre

prezentare

practica

Am aceste date de intrare la output o sa afiseze 2, pentru ca doua cuvinte se potrivesc primul cuvant.

Programul va citi de pe prima linie numărul natural n, reprezentând numărul de cuvinte din listă, de pe linia următoare șirul de caractere care reprezintă începutul expresiei regulare, conform cerinței de mai sus, iar de pe următoarele n linii câte un singur cuvânt format doar din litere mici ale alfabetului englez.


Stiu sa parcurg sirul pentru a afla un prefix dar nu prea imi iese cand trb sa le pun pe mai multe linii:)), o idee?


Răspuns :

Răspuns:

#include<iostream>

#include<fstream>

#include<string.h>

using namespace std;

ifstream f("cuvinte.in");

int main()

{

   int n,cnt = 0;

   f>>n;

   char prefix[10];

   f>>prefix;

   for(int i = 0 ; i<n;i++){

       char aux[101];

       f>>aux;

       if(strncmp(aux,prefix,strlen(prefix)) == 0 && strlen(prefix)!=strlen(aux)){

           cnt++;

       }

   }

   cout<<cnt;

   return 0;

}

Explicație: