Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2019-01-12 15:11:40.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:interact.in, interact.outSursăFMI No Stress 8
AutorLucian BicsiAdăugată defminostress2018Fmi no stress 2018 fminostress2018
Timp execuţie pe test0.5 secLimită de memorie262144 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Interact

Comisia are un şir secret s format din N (1 ≤ N ≤ 100 ) caractere mici ( a - z ) ale alfabetului englez iar voi trebuie să ghiciti şirul. Aveti la dispozitie următoarele tipuri de operatii:

? t - Este t subsir in sirul secret s? Daca da, comisia va afişa 1, altfel va afisa 0. Lungimea lui t nu trebuie sa depaseasca 1000 de caractere.
! str - Sirul secret este str. Aceasta operatie poate fi facuta o singura data, iar comisia va va rasplati corespunzator.

Puteti face maxim 6000 de operatii.

Interactiune

Problema aceasta este interactiva. Initial veti putea citi de la stdin numarul N reprezentand lungimea sirului secret.
Pentru fiecare operatie veti proceda astfel: veti afisa la stdout operatia si veti da flush la stdout(de exemplu cu fflush(stdout) in C sau cu std::cout << std::flush în C++). Apoi cititi raspunsul la operatia voastra din stdin ($1$ sau 0 in cazul in care operatia voastra a fost de tipul ? t SAU -1 cand se inchide programul (OK sau cu eroare). Cand primiti -1 de la comisie, trebuie sa opriti executia programului (de exemplu return 0).

DE ADAUGAT IN ENUNT:

- LA UN QUERY - SIRUL DE QUERY ARE LUNGIME MAXIM 1000

- OPERATIA ! ESTE TOT UN QUERY SI SE NUMARA LA LIMITA DE 6000

- DE FACUT DE ASA NATURA CAND INTERACTIUNEA SE OPRESTE SA AFISAM UN TOKEN GEN "OK / BAD"
^
\--- COMISIA AFISEAZA -1 CAND SE INCHIDE PROGRAMUL (OK SAU EROARE). CONCURENTUL TRE SA DEA RETURN LA PRIMUL -1 INTALNIT

Restricţii

  • 1 ≤ N ≤ 100
  • Pentru teste în valoare de 30 de puncte, N ≤ 20
  • Puteti folosi o singura data operatia ! str !!!
  • Formal, t este subşir în s dacă t se poate obţine din s eliminând 0 sau mai multe caractere şi păstrând ordinea relativă a caracterelor neeliminate. Spre ex: for, if, arena sunt subisiruri ale sirului infoarena.

Exemplu

table(example). |_. stdout |_. stdin |_. Explicatie
|
? a
? ba
? ac
? abc
! abc

| 3
1
0
1
1
-1

| N = 3
a este subir in sirul secret
ba nu este subsir in sirul secret
ac este subsir in sirul secret
abc este subir in sirul secret
abc este chiar sirul secret!

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?