Parenthèses – Épreuve régionale 2012

Niveau 2

Énoncé

Allons, vous n'avez pas assez perdu comme ça ? Vous allez fouiner dans les
alt-text ? — Randall Munroe, Parenthesis (http://xkcd.com/859/

« (Une parenthèse ouvrante non refermée crée une tension en suspens qui vous accompagnera toute la journée. »

Joseph Marchand s'amuse à récupérer des mots rigolos au hasard dans le dictionnaire, et les découpe en plusieurs morceaux afin de les faire breveter et de gagner de l'argent avec. Pour éviter que quelqu'un lui vole sa découverte, il a noté ces morceaux de mots de la manière suivante :

  • Il entoure les morceaux intéressants par des parenthèses de cette manière : (pro)((log)in)
  • Il note ensuite le « numéro » de la partie de mot qu'il souhaite breveter (par exemple 3)

Les morceaux entourés sont numérotés par ordre d'apparition de l'ouverture. Dans l'exemple ci-dessus, les morceaux de mots suivants correspondent aux valeurs suivantes :

  • « pro » : 1
  • « login » : 2
  • « log » : 3

On vous demande d'écrire une fonction qui, à partir du mot entouré et de la position de la partie de mot à breveter, retourne cette partie de mot. Ainsi, si la position du mot notée par Joseph dans cet exemple est « 3 », vous devez retourner « log ».

Entrée

  • Sur la première ligne, la taille T du mot entouré par Joseph ;
  • Sur la deuxième ligne, le mot entouré (On vous garantit qu'il ne contient que des caractères alphanumériques et des parenthèses) ;
  • Sur la troisième ligne, la position P à rechercher.

Sortie

La partie de mot qu'il veut breveter.

Contraintes

  • 1 <= T <= 125 000
  • 1 <= P <= 1 000

Contraintes d'exécution

Utilisation mémoire maximum
10000 kilo-octets
Temps d'exécution maximum
200 millisecondes

Exemples d'entrée/sortie

Exemple d'entrée
15
((CAN)E)T(O(N))
1
Exemple de sortie
CANE
Exemple d'entrée
15
((CAN)E)T(O(N))
3
Exemple de sortie
ON