Rezolvare completă PbInfo #1346 PbInfo

Cerința

NOTĂ : aceasta este o problemă introductivă în funcțiile care procesează șiruri de caractere. Povestea din cerința NU este adevărată.

Hacker-ul Gogu și-a neglijat serios activitatea în ultima vreme, așa că și-a propus să mai spargă încă un site, care, din întâmplare, este chiar www.pbinfo.ro.

Date de intrare

Pe prima linie se citește un șir reprezentând un link al site-ului PbInfo. Pe linia a doua, se citește un număr întreg n (1 <= n <= 20), iar pe următoarele n linii se citesc n cuvinte cheie. Scopul vostru este să aflați dacă hacker-ul Gogu s-a infiltrat și a schimbat link-ul original.

Date de ieșire

Dacă link-ul dat conține unul din cuvintele cheie precizate în fișierul de intrare sau conține cuvântul “virus”, afișați DA, altfel afișați NU.

Restricții și precizări

  • cuvintele vor fi mai scurte decât link-ul precizat, iar link-ul va avea maxim 100 de caractere;
  • hacker-ul Gogu nu este profesionist, așa că nu este nevoie să va alarmați;
  • input-ul va conține numai litere mici ale alfabetului englez și separatorii ,.!?/:.

Exemplul 1

pbinfo.in

//htttp:www.pbinfo.ro
3
hacked
gogu
htttp

pbinfo.out

DA

Exemplul 2

pbinfo.in

//http:www.pbinfo.ro 
3
hacked
gogu
htttp

pbinfo.out

NU

Exemplul 3

pbinfo.in

//http:www.pbinfo.virus.ro
1
gogu

pbinfo.out

DA

Cum e corect?

cout < "As la info"; cout << "As la info"; cout >> "As la info";

Felicitări! Poți mai mult?

Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.

Greșit, dar nu-i bai!

Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.

Rezolvare

Iată rezolvarea de 100 de puncte pentru problema PbInfo :

#include <bits/stdc++.h>

using namespace std;

char cuv[105] , s[105] , *p , virus[] = "virus";

int main()
{
    freopen ("pbinfo.in" , "r" , stdin) ;
    freopen ("pbinfo.out" , "w" , stdout) ;

    int n ;
    gets (s) ;
    scanf ("%d\n" , &n) ;
    int i ;
    for (i = 1 ; i <= n ; ++ i)
    {
        gets (cuv) ;

        p = strstr (s , cuv) ;

        if (p != NULL)
        {
            printf ("DA\n") ;
            return 0 ;
        }

        p = strstr (s , virus) ;

        if (p != NULL)
        {
            printf ("DA\n") ;
            return 0 ;
        }
    }
    printf ("NU\n") ;
    return 0;
}

Atenție

Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa Adresa de email.

Rezolvarea problemei #1346 PbInfo

Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #1346 PbInfo de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.

Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!