Étant donné un tableau d'entiers appelé nums, vous pouvez effectuer l'opération suivante tant que nums contient au moins 2 éléments :

Choisissez les deux premiers éléments de nums et supprimez-les.

Le score de l'opération est la somme des éléments supprimés.
Votre tâche est de trouver le nombre maximal d'opérations pouvant être effectuées, de sorte que toutes les opérations aient le même score.
Retournez le nombre maximal d'opérations possibles qui satisfont à la condition mentionnée ci-dessus.

Exemple 1 :

Entrée : nums = [3,2,1,4,5]
Sortie : 2
Explication : Nous effectuons les opérations suivantes :
- Supprimez les deux premiers éléments, avec un score de 3 + 2 = 5, nums = [1,4,5].
- Supprimez les deux premiers éléments, avec un score de 1 + 4 = 5, nums = [5].
Nous ne pouvons plus effectuer d'opérations car nums contient seulement 1 élément.
Exemple 2 :

Entrée : nums = [3,2,6,1,4]
Sortie : 1
Explication : Nous effectuons l'opération suivante :
- Supprimez les deux premiers éléments, avec un score de 3 + 2 = 5, nums = [6,1,4].
Nous ne pouvons plus effectuer d'autres opérations car le score de la prochaine opération n'est pas le même que le précédent.

Contraintes :

2 <= nums.length <= 100
1 <= nums[i] <= 1000

Donné un tableau d'entiers appelé nums, vous pouvez effectuer l'opération suivante tant que nums contient au moins 2 éléments :

Choisissez les deux premiers éléments de nums et supprimez-les.

Le score de l'opération est la somme des éléments supprimés.
Votre tâche est de trouver le nombre maximal d'opérations pouvant être effectuées, de sorte que toutes les opérations aient le même score.
Retournez le nombre maximal d'opérations possibles qui satisfont à la condition mentionnée ci-dessus.

Exemple 1 :

Entrée : nums = [3,2,1,4,5]
Sortie : 2
Explication : Nous effectuons les opérations suivantes :
- Supprimez les deux premiers éléments, avec un score de 3 + 2 = 5, nums = [1,4,5].
- Supprimez les deux premiers éléments, avec un score de 1 + 4 = 5, nums = [5].
Nous ne pouvons plus effectuer d'opérations car nums contient seulement 1 élément.
Exemple 2 :

Entrée : nums = [3,2,6,1,4]
Sortie : 1
Explication : Nous effectuons l'opération suivante :
- Supprimez les deux premiers éléments, avec un score de 3 + 2 = 5, nums = [6,1,4].
Nous ne pouvons plus effectuer d'autres opérations car le score de la prochaine opération n'est pas le même que le précédent.

Contraintes :

2 <= nums.length <= 100
1 <= nums[i] <= 1000


On vous donne un tableau d'entiers nums de longueur paire. Vous devez diviser le tableau en deux parties nums1 et nums2 de telle sorte que :

nums1.length == nums2.length == nums.length / 2.
nums1 doit contenir des éléments distincts.
nums2 doit également contenir des éléments distincts.

Retournez vrai s’il est possible de diviser le tableau, et faux sinon.

Exemple 1 :

Entrée : nums = [1,1,2,2,3,4]
Sortie : true
Explication : Une des façons possibles de diviser nums est nums1 = [1,2,3] et nums2 = [1,2,4].

Exemple 2 :

Entrée : nums = [1,1,1,1]
Sortie : false
Explication : La seule façon possible de diviser nums est nums1 = [1,1] et nums2 = [1,1]. Ni nums1 ni nums2 ne contiennent d'éléments distincts. Par conséquent, nous retournons false.

Contraintes :

1 <= nums.length <= 100
nums.length % 2 == 0
1 <= nums[i] <= 100

On vous donne un tableau d'entiers nums de longueur paire. Vous devez diviser le tableau en deux parties nums1 et nums2 de telle sorte que :

nums1.length == nums2.length == nums.length / 2.
nums1 doit contenir des éléments distincts.
nums2 doit également contenir des éléments distincts.

Retournez true s’il est possible de diviser le tableau, et false sinon.

Exemple 1 :

Entrée : nums = [1,1,2,2,3,4]
Sortie : true
Explication : Une des façons possibles de diviser nums est nums1 = [1,2,3] et nums2 = [1,2,4].

Exemple 2 :

Entrée : nums = [1,1,1,1]
Sortie : false
Explication : La seule façon possible de diviser nums est nums1 = [1,1] et nums2 = [1,1]. Ni nums1 ni nums2 ne contiennent d'éléments distincts. Par conséquent, nous retournons false.

Contraintes :

1 <= nums.length <= 100
nums.length % 2 == 0
1 <= nums[i] <= 100

On vous donne un tableau d'entiers nums de longueur paire. Vous devez diviser le tableau en deux parties nums1 et nums2 de telle sorte que:

nums1.length == nums2.length == nums.length / 2.
nums1 doivent contenir des éléments distincts.
nums2 doivent également contenir des éléments distincts.

Retourne true s’il est possible de diviser le tableau, et false sinon.

Exemple 1:

Entrée: nums = [1,1,2,2,3,4]
Sortie: true
Explication: une des façons possibles de diviser les nums est nums1 = [1,2,3] et nums2 = [1,2,4].

Exemple 2:

Entrée: nums = [1,1,1,1]
Sortie: false
Explication : La seule façon possible de diviser nums est nums1 = [1,1] et nums2 = [1,1]. nums1 et nums2 ne contiennent pas tous des éléments distincts. Par conséquent, nous retournons false.

Contraintes:

1 <= nums.length <= 100
nums.length % 2 == 0
1 <= nums[i] <= 100


Soient deux tableaux d'entiers positifs arr1 et arr2.
Un préfixe d'un entier positif est un entier formé par un ou plusieurs de ses chiffres, en commençant par son chiffre le plus à gauche. Par exemple, 123 est un préfixe de l'entier 12345, tandis que 234 ne l'est pas.
Un préfixe commun de deux entiers a et b est un entier c, tel que c est un préfixe de a et b. Par exemple, 5655359 et 56554 ont un préfixe commun 565 tandis que 1223 et 43456 n'ont pas de préfixe commun.
Vous devez trouver la longueur du plus long préfixe commun entre toutes les paires d'entiers (x, y) telles que x appartient à arr1 et y appartient à arr2.
Renvoyez la longueur du plus long préfixe commun parmi toutes les paires. Si aucun préfixe commun n'existe parmi eux, renvoyez 0.

Exemple 1 :

Entrée : arr1 = [1,10,100], arr2 = [1000]
Sortie : 3
Explication : Il y a 3 paires (arr1[i], arr2[j]) :
- Le plus long préfixe commun de (1, 1000) est 1.
- Le plus long préfixe commun de (10, 1000) est 10.
- Le plus long préfixe commun de (100, 1000) est 100.
Le plus long préfixe commun est 100 avec une longueur de 3.

Exemple 2 :

Entrée : arr1 = [1,2,3], arr2 = [4,4,4]
Sortie : 0
Explication : Il n'existe aucun préfixe commun pour aucune paire (arr1[i], arr2[j]), donc nous retournons 0.
Notez que les préfixes communs entre des éléments du même tableau ne comptent pas.

Contraintes :

1 <= arr1.length, arr2.length <= 5 * 10^4
1 <= arr1[i], arr2[i] <= 10^8

Vous avez deux tableaux avec des entiers positifs arr1 et arr2.
Un préfixe d'un entier positif est un entier formé par un ou plusieurs de ses chiffres, en commençant par son chiffre le plus à gauche. Par exemple, 123 est un préfixe de l'entier 12345, tandis que 234 ne l'est pas.
Un préfixe commun de deux entiers a et b est un entier c, tel que c est un préfixe de a et b. Par exemple, 5655359 et 56554 ont un préfixe commun 565 tandis que 1223 et 43456 n'ont pas de préfixe commun.
Vous devez trouver la longueur du plus long préfixe commun entre toutes les paires d'entiers (x, y) telles que x appartient à arr1 et y appartient à arr2.
Retournez la longueur du plus long préfixe commun parmi toutes les paires. Si aucun préfixe commun n'existe parmi eux, retournez 0.

Exemple 1 :

Entrée : arr1 = [1,10,100], arr2 = [1000]
Sortie : 3
Explication : Il y a 3 paires (arr1[i], arr2[j]) :
- Le plus long préfixe commun de (1, 1000) est 1.
- Le plus long préfixe commun de (10, 1000) est 10.
- Le plus long préfixe commun de (100, 1000) est 100.
Le plus long préfixe commun est 100 avec une longueur de 3.

Exemple 2 :

Entrée : arr1 = [1,2,3], arr2 = [4,4,4]
Sortie : 0
Explication : Il n'existe aucun préfixe commun pour aucune paire (arr1[i], arr2[j]), donc nous retournons 0.
Notez que les préfixes communs entre des éléments du même tableau ne comptent pas.

Contraintes :

1 <= arr1.length, arr2.length <= 5 * 10^4
1 <= arr1[i], arr2[i] <= 10^8

On vous donne deux tableaux avec des entiers positifs ARR1 et ARR2.
Un préfixe d'un entier positif est un entier formé par un ou plusieurs de ses chiffres, à partir de son chiffre le plus à gauche. Par exemple, 123 est un préfixe de l'entier 12345, tandis que 234 ne l'est pas.
Un préfixe commun de deux entiers A et B est un entier C, tel que C est un préfixe de A et B. Par exemple, 5655359 et 56554 ont un préfixe commun 565 tandis que 1223 et 43456 n'ont pas de préfixe commun.
Vous devez trouver la longueur du plus long préfixe commun entre toutes les paires d'entiers (x, y) telles que X appartient à l'ARR1 et Y appartient à ARR2.
Retournez la longueur du plus long préfixe commun parmi toutes les paires. Si aucun préfixe commun n'existe parmi eux, retournez 0.

Exemple 1:

Entrée: arr1 = [1,10,100], arr2 = [1000]
Sortie: 3
Explication: Il y a 3 paires (arr1 [i], arr2 [j]):
- Le préfixe commun le plus long de (1, 1000) est 1.
- Le préfixe commun le plus long de (10, 1000) est 10.
- Le préfixe commun le plus long de (100, 1000) est de 100.
Le préfixe commun le plus long est de 100 avec une longueur de 3.

Exemple 2:

Entrée: arr1 = [1,2,3], arr2 = [4,4,4]
Sortie: 0
Explication: Il n'existe pas de préfixe commun pour aucune paire (arr1 [i], arr2 [j]), donc nous retournons 0.
Notez que les préfixes communs entre les éléments du même tableau ne comptent pas.

Contraintes:

1 <= arr1.length, arr2.length <= 5 * 10 ^ 4
1 <= arr1 [i], arr2 [i] <= 10 ^ 8


On vous donne un tableau d'entiers indexé à 0 et un entier k.
Dans une opération, vous pouvez supprimer une occurrence du plus petit élément de nums.
Renvoyez le nombre minimum d'opérations nécessaires pour que tous les éléments du tableau soient supérieurs ou égaux à k.

Exemple 1:

Entrée: nums= [2,11,10,1,3], k = 10
Sortie: 3
Explication: Après une opération, nums devient égal à [2, 11, 10, 3].
Après deux opérations, nums devient égal à [11, 10, 3].
Après trois opérations, nums devient égal à [11, 10].
À ce stade, tous les éléments du tableau sont supérieurs ou égaux à 10, nous pouvons donc nous arrêter.
On peut montrer que 3 est le nombre minimum d'opérations nécessaires pour que tous les éléments du tableau soient supérieurs ou égaux à 10.

Exemple 2:

Entrée: nums = [1,1,2,4,9], k = 1
Sortie: 0
Explication: Tous les éléments du tableau sont supérieurs ou égaux à 1, nous n'avons donc pas besoin d'appliquer d'opérations sur nums.
Exemple 3:

Entrée: nums= [1,1,2,4,9], k = 9
Sortie: 4
Explication: Un seul élément de nums est supérieur ou égal à 9, nous devons donc appliquer d'opérations 4 fois sur nums.

Contraintes:

1 <= nums.length <= 50
1 <= nums[i] <= 10^9
1 <= k <= 10^9
L'entrée est générée de telle sorte qu'il y ait au moins un index i tel que nums[i] >= k.

Vous disposez d'un tableau d'entiers nums indexé à partir de 0, et d'un entier k.
Lors d'une opération, vous pouvez supprimer une occurrence du plus petit élément de nums.
Retournez le nombre minimum d'opérations nécessaires pour que tous les éléments du tableau soient supérieurs ou égaux à k.

Exemple 1 :

Entrée : nums = [2,11,10,1,3], k = 10
Sortie : 3
Explication : Après une opération, nums devient égal à [2, 11, 10, 3].
Après deux opérations, nums devient égal à [11, 10, 3].
Après trois opérations, nums devient égal à [11, 10].
À ce stade, tous les éléments de nums sont supérieurs ou égaux à 10, donc nous pouvons arrêter.
Il peut être montré que 3 est le nombre minimum d'opérations nécessaires pour que tous les éléments du tableau soient supérieurs ou égaux à 10.

Exemple 2 :

Entrée : nums = [1,1,2,4,9], k = 1
Sortie : 0
Explication : Tous les éléments du tableau sont supérieurs ou égaux à 1, donc nous n'avons pas besoin d'effectuer d'opérations sur nums.
Exemple 3 :

Entrée : nums = [1,1,2,4,9], k = 9
Sortie : 4
Explication : un seul élément de nums est supérieur ou égal à 9, donc nous devons appliquer les opérations 4 fois sur nums.

Contraintes :

1 <= nums.length <= 50
1 <= nums[i] <= 10^9
1 <= k <= 10^9
L'entrée est générée de sorte qu'il y ait au moins un indice i tel que nums[i] >= k.

Vous disposez d'un tableau d'entiers de 0-indexé nums, et d'un entier k.
Lors d'une opération, vous pouvez supprimer une occurrence du plus petit élément de nums.
Retournez le nombre minimum d'opérations nécessaires pour que tous les éléments du tableau soient supérieurs ou égaux à k.

Exemple 1 :

Entrée : nums = [2,11,10,1,3], k = 10
Sortie : 3
Explication : Après une opération, nums devient égal à [2, 11, 10, 3].
Après deux opérations, nums devient égal à [11, 10, 3].
Après trois opérations, nums devient égal à [11, 10].
À ce stade, tous les éléments de nums sont supérieurs ou égaux à 10, donc nous pouvons arrêter.
Il peut être montré que 3 est le nombre minimum d'opérations nécessaires pour que tous les éléments du tableau soient supérieurs ou égaux à 10.

Exemple 2 :

Entrée : nums = [1,1,2,4,9], k = 1
Sortie : 0
Explication : Tous les éléments du tableau sont supérieurs ou égaux à 1, donc nous n'avons pas besoin d'effectuer d'opérations sur nums.
Exemple 3 :

Entrée : nums = [1,1,2,4,9], k = 9
Sortie : 4
Explication : un seul élément de nums est supérieur ou égal à 9, donc nous devons appliquer les opérations 4 fois sur nums.

Contraintes :

1 <= nums.length <= 50
1 <= nums[i] <= 10^9
1 <= k <= 10^9
L'entrée est générée de sorte qu'il y ait au moins un indice i tel que nums[i] >= k.


Vous disposez d'un tableau indexé à partir de 1 de n entiers distincts, nommé nums.
Vous devez distribuer tous les éléments de nums entre deux tableaux arr1 et arr2 en utilisant n opérations. Lors de la première opération, ajoutez nums[1] à arr1. Lors de la deuxième opération, ajoutez nums[2] à arr2. Ensuite, lors de la i^ème opération :

Si le dernier élément de arr1 est supérieur au dernier élément de arr2, ajoutez nums[i] à arr1. Sinon, ajoutez nums[i] à arr2.

Le tableau result est formé en concaténant les tableaux arr1 et arr2. Par exemple, si arr1 == [1,2,3] et arr2 == [4,5,6], alors result = [1,2,3,4,5,6].
Retournez le tableau result.

Exemple 1 :

Entrée : nums = [2,1,3]
Sortie : [2,3,1]
Explication : Après les 2 premières opérations, arr1 = [2] et arr2 = [1].
À la 3^ème opération, comme le dernier élément de arr1 est supérieur au dernier élément de arr2 (2 > 1), ajoutez nums[3] à arr1.
Après 3 opérations, arr1 = [2,3] et arr2 = [1].
Ainsi, le tableau result formé par concaténation est [2,3,1].

Exemple 2 :

Entrée : nums = [5,4,3,8]
Sortie : [5,3,4,8]
Explication : Après les 2 premières opérations, arr1 = [5] et arr2 = [4].
À la 3^ème opération, comme le dernier élément de arr1 est supérieur au dernier élément de arr2 (5 > 4), ajoutez nums[3] à arr1, d'où arr1 devient [5,3].
À la 4^ème opération, comme le dernier élément de arr2 est supérieur au dernier élément de arr1 (4 > 3), ajoutez nums[4] à arr2, d'où arr2 devient [4,8].
Après 4 opérations, arr1 = [5,3] et arr2 = [4,8].
Ainsi, le tableau result formé par concaténation est [5,3,4,8].

Contraintes :

3 <= n <= 50
1 <= nums[i] <= 100
Tous les éléments de nums sont distincts.

On vous donne un tableau à 1 indexé d'entiers distincts de la longueur n.
Vous devez distribuer tous les éléments de Nums entre deux tableaux arr1 et arr2 en utilisant N opérations. Dans la première opération, ajoutez nums[1] à arr1. Dans la deuxième opération, ajoutez nums[2] à arr2. Ensuite, dans l'opération i ^ th:

Si le dernier élément d'arr1 est supérieur au dernier élément de l'arr2, ajoutez les numéros [i] à arr1. Sinon, ajoutez les numéros [i] à arr2.

Le résultat du tableau est formé en concaténant les tableaux arr1 et arr2. Par exemple, si arr1 == [1,2,3] et arr2 == [4,5,6], alors résultat = [1,2,3,4,5,6].
Renvoyez le résultat du tableau.

Exemple 1:

Entrée: nums = [2,1,3]
Sortie: [2,3,1]
Explication: Après les 2 premières opérations, arr1 = [2] et arr2 = [1].
Dans l'opération 3e, car le dernier élément de l'arr1 est supérieur au dernier élément d'arr2 (2> 1), ajoutez nums[3] à arr1.
Après 3 opérations, arr1 = [2,3] et arr2 = [1].
Par conséquent, le résultat du tableau formé par la concaténation est [2,3,1].

Exemple 2:

Entrée: nums = [5,4,3,8]
Sortie: [5,3,4,8]
Explication: Après les 2 premières opérations, arr1 = [5] et arr2 = [4].
Dans l'opération 3e, car le dernier élément de l'arr1 est supérieur au dernier élément d'arr2 (5> 4), ajoutez nums[3] à arr1, donc arr1 devient [5,3].
Dans l'opération 4e, comme le dernier élément de l'arr2 est supérieur au dernier élément de l'arr1 (4> 3), ajoutez nums[4] à arr2, donc arr2 devient [4,8].
Après 4 opérations, arr1 = [5,3] et arr2 = [4,8].
Par conséquent, le résultat du tableau formé par la concaténation est [5,3,4,8].

Contraintes:

3 <= n <= 50
1 <= nums[i] <= 100
Tous les éléments en num sont distincts.

Vous disposez d'un tableau nums indexé à partir de 1 de n entiers distincts.
Vous devez distribuer tous les éléments de nums entre deux tableaux arr1 et arr2 en utilisant n opérations. Lors de la première opération, ajoutez nums[1] à arr1. Lors de la deuxième opération, ajoutez nums[2] à arr2. Ensuite, lors de la i^ème opération :

Si le dernier élément de arr1 est supérieur au dernier élément de arr2, ajoutez nums[i] à arr1. Sinon, ajoutez nums[i] à arr2.

Le tableau result est formé en concaténant les tableaux arr1 et arr2. Par exemple, si arr1 == [1,2,3] et arr2 == [4,5,6], alors result = [1,2,3,4,5,6].
Retournez le tableau result.

Exemple 1 :

Entrée : nums = [2,1,3]
Sortie : [2,3,1]
Explication : Après les 2 premières opérations, arr1 = [2] et arr2 = [1].
À la 3^ème opération, comme le dernier élément de arr1 est supérieur au dernier élément de arr2 (2 > 1), ajoutez nums[3] à arr1.
Après 3 opérations, arr1 = [2,3] et arr2 = [1].
Ainsi, le tableau result formé par concaténation est [2,3,1].

Exemple 2 :

Entrée : nums = [5,4,3,8]
Sortie : [5,3,4,8]
Explication : Après les 2 premières opérations, arr1 = [5] et arr2 = [4].
À la 3^ème opération, comme le dernier élément de arr1 est supérieur au dernier élément de arr2 (5 > 4), ajoutez nums[3] à arr1, d'où arr1 devient [5,3].
À la 4^ème opération, comme le dernier élément de arr2 est supérieur au dernier élément de arr1 (4 > 3), ajoutez nums[4] à arr2, d'où arr2 devient [4,8].
Après 4 opérations, arr1 = [5,3] et arr2 = [4,8].
Ainsi, le tableau result formé par concaténation est [5,3,4,8].

Contraintes :

3 <= n <= 50
1 <= nums[i] <= 100
Tous les éléments de nums sont distincts.


Takahashi et Aoki ont joué N parties.
On vous donne une chaîne S de longueur N, représentant les résultats de ces parties.
Takahashi a gagné la i-ème partie si le i-ème caractère de S est T, et Aoki a gagné cette partie si c'est A.
Le gagnant global entre Takahashi et Aoki est celui  des deux qui a gagné plus de parties.
S'ils ont gagné le même nombre de parties, le gagnant global est celui qui a atteint ce nombre de victoires en premier.
Trouvez le gagnant global : Takahashi ou Aoki.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
N
S

Sortie

Si le gagnant global est Takahashi, affichez T; si c'est Aoki, affichez A.

Contraintes

- 1\leq N \leq 100
- N est un entier.
- S est une chaîne de longueur N composée de T et A.

Exemple d'entrée 1

5
TTAAT

Exemple de sortie 1

T

Takahashi a gagné trois parties, et Aoki en a gagné deux.
Ainsi, le gagnant global est Takahashi, qui a gagné plus de parties.

Exemple d'entrée 2

6
ATTATA

Exemple de sortie 2

T

Takahashi et Aoki ont tous deux gagné trois parties.
Takahashi a atteint trois victoires lors de la cinquième partie, et Aoki lors de la sixième.
Ainsi, le gagnant global est Takahashi, qui a atteint trois victoires en premier.

Exemple d'entrée 3

1
A

Exemple de sortie 3

A

Takahashi et Aoki ont joué à N matchs.
On vous donne une chaîne de longueur n, représentant les résultats de ces jeux.
Takahashi a remporté le i-tème match si le i-personnage de S est T, et Aoki a remporté ce match si c'est A.
Le vainqueur général entre Takahashi et Aoki est celui qui a remporté plus de matchs que l'autre.
S'ils ont eu le même nombre de victoires, le vainqueur général est celui qui a atteint ce nombre de victoires en premier.
Trouvez le gagnant général: Takahashi ou Aoki.

Saisir

L'entrée est donnée à partir de l'entrée standard dans le format suivant:
N
S

Sortir

Si le gagnant général est Takahashi, imprimez T; Si c'est Aoki, imprimez A.

Contraintes

- 1\leq N \leq 100
- N est un entier.
- S est une chaîne de longueur n composée de T et A.

Échantillon d'entrée 1

5
TTAAT

Échantillon de sortie 1

T

Takahashi a remporté trois matchs et Aoki en a remporté deux.
Ainsi, le vainqueur général est Takahashi, qui a remporté plus de matchs.

Échantillon d'entrée 2

6
ATTATA

Échantillon de sortie 2

T

Takahashi et Aoki ont tous deux remporté trois matchs.
Takahashi a remporté trois victoires lors du cinquième match et Aoki lors du sixième match.
Ainsi, le vainqueur général est Takahashi, qui a remporté trois victoires en premier.

Exemple d'entrée 3

1
A

Exemple de sortie 3

A

Takahashi et Aoki ont joué N parties.
On vous donne une chaîne S de longueur N, représentant les résultats de ces parties.
Takahashi a gagné la i-ème partie si le i-ème caractère de S est T, et Aoki a gagné cette partie si c'est A.
Le gagnant global entre Takahashi et Aoki est celui qui a gagné plus de parties que l'autre.
S'ils ont gagné le même nombre de parties, le gagnant global est celui qui a atteint ce nombre de victoires en premier.
Trouvez le gagnant global : Takahashi ou Aoki.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
N
S

Sortie

Si le gagnant global est Takahashi, imprimez T; si c'est Aoki, imprimez A.

Contraintes

- 1\leq N \leq 100
- N est un entier.
- S est une chaîne de longueur N composée de T et A.

Exemple d'entrée 1

5
TTAAT

Exemple de sortie 1

T

Takahashi a gagné trois parties, et Aoki en a gagné deux.
Ainsi, le gagnant global est Takahashi, qui a gagné plus de parties.

Exemple d'entrée 2

6
ATTATA

Exemple de sortie 2

T

Takahashi et Aoki ont tous deux gagné trois parties.
Takahashi a atteint trois victoires lors de la cinquième partie, et Aoki lors de la sixième.
Ainsi, le gagnant global est Takahashi, qui a atteint trois victoires en premier.

Exemple d'entrée 3

1
A

Exemple de sortie 3

A


Nous avons une séquence de longueur N composée d’entiers positifs : A=(A_1,\ldots,A_N). Tout couple de termes adjacents a des valeurs différentes.
Insérons des nombres dans cette séquence selon la procédure suivante.

- Si chaque paire de termes adjacents dans A a une différence absolue de 1, terminez la procédure.
- Soit A_i, A_{i+1} la paire de termes adjacents la plus proche du début de A dont la différence absolue n’est pas 1.
- Si A_i < A_{i+1}, insérez A_i+1,A_i+2,\ldots,A_{i+1}-1 entre A_i et A_{i+1}.
- Si A_i > A_{i+1}, insérez A_i-1,A_i-2,\ldots,A_{i+1}+1 entre A_i et A_{i+1}.

- Revenez à l’étape 1.

Affichez la séquence lorsque la procédure se termine.

Entrée

L'entrée est donnée via l'entrée standard dans le format suivant :
N
A_1 A_2 \ldots A_N

Sortie

Affichez les termes de la séquence lorsque la procédure se termine, séparés par des espaces.

Contraintes

- 2 \leq N \leq 100
- 1 \leq A_i \leq 100
- A_i \neq A_{i+1}
- Toutes les valeurs de l'entrée sont des entiers.

Exemple d'entrée 1

4
2 5 1 2

Exemple de sortie 1

2 3 4 5 4 3 2 1 2

La séquence initiale est (2,5,1,2). La procédure se déroule comme suit.

- Insérez 3,4 entre le premier terme 2 et le deuxième terme 5, ce qui donne la séquence (2,3,4,5,1,2).
- Insérez 4,3,2 entre le quatrième terme 5 et le cinquième terme 1, ce qui donne la séquence (2,3,4,5,4,3,2,1,2).

Exemple d'entrée 2

6
3 4 5 6 5 4

Exemple de sortie 2

3 4 5 6 5 4

Aucune insertion ne peut être effectuée.

Nous avons une séquence de longueur N composée d’entiers positifs: A=(A_1,\ldots,A_N). Tout couple de termes adjacents a des valeurs différentes.
Insérons des nombres dans cette séquence selon la procédure suivante.

- Si chaque paire de termes adjacents dans A a une différence absolue de 1, terminez la procédure.
- Soit A_i, A_{i+1} la paire de termes adjacents la plus proche du début de A dont la différence absolue n’est pas 1.
- Si A_i < A_{i+1}, insérez A_i+1,A_i+2,\ldots,A_{i+1}-1 entre A_i et A_{i+1}.
- Si A_i > A_{i+1}, insérez A_i-1,A_i-2,\ldots,A_{i+1}+1 entre A_i et A_{i+1}.

- Revenez à l’étape 1.

Affichez la séquence lorsque la procédure se termine.

Entrée

L'entrée est donnée via l'entrée standard dans le format suivant:
N
A_1 A_2 \ldots A_N

Sortie

Affichez les termes de la séquence lorsque la procédure se termine, séparés par des espaces.

Contraintes

- 2 \leq N \leq 100
- 1 \leq A_i \leq 100
- A_i \neq A_{i+1}
- Toutes les valeurs de l'entrée sont des entiers.

Exemple d'entrée 1

4
2 5 1 2

Exemple de sortie 1

2 3 4 5 4 3 2 1 2

La séquence initiale est (2,5,1,2). La procédure se déroule comme suit.

- Insérez 3,4 entre le premier terme 2 et le deuxième terme 5, ce qui donne la séquence (2,3,4,5,1,2).
- Insérez 4,3,2 entre le quatrième terme 5 et le cinquième terme 1, ce qui donne la séquence (2,3,4,5,4,3,2,1,2).

Exemple d'entrée 2

6
3 4 5 6 5 4

Exemple de sortie 2

3 4 5 6 5 4

Aucune insertion ne peut être effectuée.


Un jeu de cartes pour un joueur est populaire chez AtCoder Inc.
Chaque carte du jeu a une lettre anglaise minuscule ou le symbole @ écrit dessus. Il y a suffisamment de cartes pour chaque type.
Le jeu se déroule comme suit.

- Disposez le même nombre de cartes en deux rangées.
- Remplacez chaque carte avec @ par une des cartes suivantes : a, t, c, o, d, e, r.
- Si les deux rangées de cartes coïncident, vous gagnez. Sinon, vous perdez.

Pour gagner à ce jeu, vous allez tricher de la manière suivante.

- Réarrangez librement les cartes dans une rangée quand vous le souhaitez après l'étape 1.

On vous donne deux chaînes S et T, représentant les deux rangées après l'étape 1. Déterminez s'il est possible de gagner avec la triche autorisée.

Entrée

L'entrée est donnée à partir de l'entrée standard dans le format suivant :
S
T

Sortie

Si gagner avec la triche autorisée est possible, Affichez Yes ; sinon, affichez No.

Contraintes

- S et T sont composées de lettres anglaises minuscules et de @.
- Les longueurs de S et T sont égales et comprises entre 1 et 2\times 10^5, inclus.

Exemple d'entrée 1

ch@ku@ai
choku@@i

Exemple de sortie 1

Yes

Vous pouvez remplacer les @ de sorte que les deux rangées deviennent chokudai.

Exemple d'entrée 2

ch@kud@i
akidu@ho

Exemple de sortie 2

Yes

Vous pouvez tricher et remplacer les @ de sorte que les deux rangées deviennent chokudai.

Exemple d'entrée 3

aoki
@ok@

Exemple de sortie 3

No

Vous ne pouvez pas gagner même en trichant.

Exemple d'entrée 4

aa
bb

Exemple de sortie 4

No

Un jeu de cartes à un seul joueur est populaire dans AtCoder Inc.
Chaque carte du jeu porte une lettre anglaise minuscule ou le symbole @. Il y a un grand nombre de cartes pour chaque type de carte.
Le jeu se déroule comme suit.

- Disposez le même nombre de cartes sur deux rangées.
- Remplacez chaque carte avec @ par l'une des cartes suivantes : a, t, c, o, d, e, r.
- Si les deux rangées de cartes coïncident, vous gagnez. Sinon, vous perdez.

Pour gagner ce jeu, vous devez effectuer les opérations suivantes.

- Après l'étape 1, vous pouvez librement réarranger les cartes d'une même rangée quand vous le souhaitez.

Vous disposez de deux chaînes S et T, représentant les deux rangées dont vous disposez après l'étape 1. Déterminez s'il est possible de gagner en autorisant la tricherie.

Entrée

L'entrée est donnée à partir de l'entrée standard dans le format suivant :
S
T

Sortie

S'il est possible de gagner avec la tricherie autorisée, imprimez Oui ; sinon, imprimez Non.

Contraintes

- S et T sont constitués de lettres minuscules anglaises et de @.
- Les longueurs de S et T sont égales et comprises entre 1 et 2 fois 10^5, inclusivement.

Exemple d'entrée 1

ch@ku@ai
choku@@i

Exemple de sortie 1

Yes

Vous pouvez remplacer les @s pour que les deux lignes deviennent chokudai.

Exemple d'entrée 2

ch@kud@i
akidu@ho

Exemple de sortie 2

Yes

Vous pouvez tricher et remplacer les @s pour que les deux lignes deviennent chokudai.

Exemple d'entrée 3

aoki
@ok@

Exemple de sortie 3

No

Vous ne pouvez pas gagner même en trichant.

Exemple d'entrée 4

aa
bb

Exemple de sortie 4

No

Un jeu de cartes en solo est populaire chez AtCoder Inc.
Chaque carte du jeu a une lettre anglaise minuscule ou le symbole @ inscrit dessus. Il y a suffisamment de cartes pour chaque type.
Le jeu se déroule comme suit.

- Disposez le même nombre de cartes en deux rangées.
- Remplacez chaque carte avec @ par une des cartes suivantes : a, t, c, o, d, e, r.
- Si les deux rangées de cartes coïncident, vous gagnez. Sinon, vous perdez.

Pour gagner à ce jeu, vous allez tricher de la manière suivante.

- Réarrangez librement les cartes dans une rangée quand vous le souhaitez après l'étape 1.

On vous donne deux chaînes S et T, représentant les deux rangées après l'étape 1. Déterminez s'il est possible de gagner avec la triche autorisée.

Entrée

L'entrée est donnée à partir de l'entrée standard dans le format suivant :
S
T

Sortie

Si gagner avec la triche autorisée est possible, imprimez Yes ; sinon, imprimez No.

Contraintes

- S et T sont composées de lettres anglaises minuscules et de @.
- Les longueurs de S et T sont égales et comprises entre 1 et 2\times 10^5, inclusivement.

Exemple d'entrée 1

ch@ku@ai
choku@@i

Exemple de sortie 1

Yes

Vous pouvez remplacer les @ de sorte que les deux rangées deviennent chokudai.

Exemple d'entrée 2

ch@kud@i
akidu@ho

Exemple de sortie 2

Yes

Vous pouvez tricher et remplacer les @ de sorte que les deux rangées deviennent chokudai.

Exemple d'entrée 3

aoki
@ok@

Exemple de sortie 3

No

Vous ne pouvez pas gagner même en trichant.

Exemple d'entrée 4

aa
bb

Exemple de sortie 4

No


Vous avez un entier N et une chaîne de caractères S composée de 0, 1, et ?.
Soit T l'ensemble des valeurs pouvant être obtenues en remplaçant chaque ? dans S par 0 ou 1 et en interprétant le résultat comme un entier binaire.
Par exemple, si S= ?0?, nous avons T=\lbrace 000_{(2)},001_{(2)},100_{(2)},101_{(2)}\rbrace=\lbrace 0,1,4,5\rbrace.
Affichez (en tant qu'entier décimal) la plus grande valeur dans T inférieure ou égale à N.
Si T ne contient pas de valeur inférieure ou égale à N, affichez -1 à la place.

Entrée

L'entrée est donnée à partir de l'entrée standard au format suivant :
S
N

Sortie

Affichez la réponse.

Contraintes

- S est une chaîne composée de 0, 1, et ?.
- La longueur de S est comprise entre 1 et 60, inclus.
- 1\leq N \leq 10^{18}
- N est un entier.

Exemple d'entrée 1

?0?
2

Exemple de sortie 1

1

Comme indiqué dans l'énoncé du problème, T=\lbrace 0,1,4,5\rbrace.
Parmi eux, 0 et 1 sont inférieurs ou égaux à N, donc vous devez afficher le plus grand d'entre eux, 1.

Exemple d'entrée 2

101
4

Exemple de sortie 2

-1

Nous avons T=\lbrace 5\rbrace, qui ne contient pas de valeur inférieure ou égale à N.

Exemple d'entrée 3

?0?
1000000000000000000

Exemple de sortie 3

5

On vous donne un entier N et une chaîne S composée de 0, 1 et ?.
Soit T l'ensemble des valeurs qui peuvent être obtenues en remplaçant chaque ? dans S par 0 ou 1 et en interprétant le résultat comme un entier binaire.
Par exemple, si S= ?0?, nous avons T=\lbrace 000_{(2)},001_{(2)},100_{(2)},101_{(2)}\rbrace=\lbrace 0,1,4,5\rbrace.
Affichez (sous forme d'entier décimal) la plus grande valeur de T inférieure ou égale à N.
Si T ne contient pas de valeur inférieure ou égale à N, affichez -1 à la place.

Entrée

L'entrée est donnée à partir de l'entrée standard au format suivant :
S
N

Sortie

Affichez la réponse.

Contraintes

- S est une chaîne composée de 0, 1 et ?.
- La longueur de S est comprise entre 1 et 60, inclus.
- 1\leq N \leq 10^{18}
- N est un entier.

Exemple d'entrée 1

?0?
2

Exemple de sortie 1

1

Comme indiqué dans l'énoncé du problème, T=\lbrace 0,1,4,5\rbrace.
Parmi eux, 0 et 1 sont inférieurs ou égaux à N, vous devez donc imprimer le plus grand d'entre eux, 1.

Exemple d'entrée 2

101
4

Exemple de sortie 2

-1

Nous avons T=\lbrace 5\rbrace, qui ne contient pas de valeur inférieure ou égale à N.

Exemple d'entrée 3

?0?
10000000000000000000

Exemple de sortie 3

5


Nous avons une grille avec H lignes et W colonnes.
Soit (i,j) le carré à la i-ème ligne depuis le haut et la j-ème colonne depuis la gauche.
Chaque carré de la grille est l'un des carrés suivants : le carré de départ, le carré d'objectif, un carré vide, un carré mur et un carré bonbon.
(i,j) est représenté par un caractère A_{i,j}, et est le carré de départ si A_{i,j}= S, le carré d'objectif si A_{i,j}= G, un carré vide si A_{i,j}= ., un carré mur si A_{i,j}= #, et un carré bonbon si A_{i,j}= o.
Ici, il est garanti qu'il y a exactement un départ, exactement un objectif, et au plus 18 carrés bonbons.
Takahashi est maintenant au carré de départ.
Il peut répéter le déplacement vers un carré adjacent non-mur verticalement ou horizontalement.
Il veut atteindre le carré d'objectif en au plus T mouvements.
Déterminez s'il est possible.
Si c'est possible, trouvez le nombre maximum de carrés bonbons qu'il peut visiter en chemin vers le carré d'objectif, où il doit finir.
Chaque carré bonbon ne compte qu'une seule fois, même s'il est visité plusieurs fois.

Entrée

L'entrée est donnée à partir de l'entrée standard dans le format suivant :
H W T
A_{1,1}A_{1,2}\dots A_{1,W}
\vdots
A_{H,1}A_{H,2}\dots A_{H,W}

Sortie

Si atteindre le carré d'objectif en au plus T mouvements est impossible, imprimez -1.
Sinon, imprimez le nombre maximum de carrés bonbons qui peuvent être visités en chemin vers le carré d'objectif, où Takahashi doit finir.

Contraintes

- 1\leq H,W \leq 300
- 1 \leq T \leq 2\times 10^6
- H, W, et T sont des entiers.
- A_{i,j} est l'un des S, G, ., # et o.
- Exactement une paire (i,j) satisfait A_{i,j}= S.
- Exactement une paire (i,j) satisfait A_{i,j}= G.
- Au plus 18 paires (i,j) satisfont A_{i,j}= o.

Exemple d'Entrée 1

3 3 5
S.G
o#o
.#.

Exemple de Sortie 1

1

S'il effectue quatre mouvements comme (1,1) \rightarrow (1,2) \rightarrow (1,3) \rightarrow (2,3) \rightarrow (1,3), il peut visiter un carré bonbon et finir au carré d'objectif.
Il ne peut pas effectuer cinq mouvements ou moins pour visiter deux carrés bonbons et finir au carré d'objectif, donc la réponse est 1.
Notez que faire cinq mouvements comme (1,1) \rightarrow (2,1) \rightarrow (1,1) \rightarrow (1,2) \rightarrow (1,3) \rightarrow (2,3) pour visiter deux carrés bonbons est invalide car il ne finirait pas au carré d'objectif.

Exemple d'Entrée 2

3 3 1
S.G
.#o
o#.

Exemple de Sortie 2

-1

Il ne peut pas atteindre le carré d'objectif en un mouvement ou moins.

Exemple d'Entrée 3

5 10 2000000
S.o..ooo..
..o..o.o..
..o..ooo..
..o..o.o..
..o..ooo.G

Exemple de Sortie 3

18

Nous avons une grille avec H lignes et W colonnes.
Soit (i,j) le carré à la i-ème ligne depuis le haut et la j-ème colonne depuis la gauche.
Chaque carré de la grille est l'un des suivants : le carré de départ, le carré d'objectif, un carré vide, un carré mur et un carré bonbon.
(i,j) est représenté par un caractère A_{i,j}, et est le carré de départ si A_{i,j}= S, le carré d'objectif si A_{i,j}= G, un carré vide si A_{i,j}= ., un carré mur si A_{i,j}= #, et un carré bonbon si A_{i,j}= o.
Ici, il est garanti qu'il y a exactement un départ, exactement un objectif, et au plus 18 carrés bonbons.
Takahashi se situe maintenant au carré de départ.
Il peut répéter le déplacement vers un carré adjacent non-mur verticalement ou horizontalement.
Il veut atteindre le carré d'objectif en au maximum T mouvements.
Déterminez si c'est possible.
Si c'est possible, trouvez le nombre maximum de carrés bonbons qu'il peut visiter en chemin vers le carré d'objectif, où il doit finir.
Chaque carré bonbon n'est compté qu'une seule fois, même s'il est visité plusieurs fois.

Entrée

L'entrée est donnée à partir de l'entrée standard dans le format suivant :
H W T
A_{1,1}A_{1,2}\dots A_{1,W}
\vdots
A_{H,1}A_{H,2}\dots A_{H,W}

Sortie

Si atteindre le carré d'objectif en au plus T mouvements est impossible,affichez -1.
Sinon, imprimez le nombre maximum de carrés bonbons qui peuvent être visités en chemin vers le carré d'objectif, où Takahashi doit finir.

Contraintes

- 1\leq H,W \leq 300
- 1 \leq T \leq 2\times 10^6
- H, W, et T sont des entiers.
- A_{i,j} est l'un des S, G, ., # et o.
- Exactement une paire (i,j) satisfait A_{i,j}= S.
- Exactement une paire (i,j) satisfait A_{i,j}= G.
- Au plus 18 paires (i,j) satisfont A_{i,j}= o.

Exemple d'Entrée 1

3 3 5
S.G
o#o
.#.

Exemple de Sortie 1

1

S'il effectue quatre mouvements comme (1,1) \rightarrow (1,2) \rightarrow (1,3) \rightarrow (2,3) \rightarrow (1,3), il peut visiter un carré bonbon et finir au carré d'objectif.
Il ne peut pas effectuer cinq mouvements ou moins pour visiter deux carrés bonbons et finir au carré d'objectif, donc la réponse est 1.
Notez que faire cinq mouvements comme (1,1) \rightarrow (2,1) \rightarrow (1,1) \rightarrow (1,2) \rightarrow (1,3) \rightarrow (2,3) pour visiter deux carrés bonbons est invalide car il ne finirait pas au carré d'objectif.

Exemple d'Entrée 2

3 3 1
S.G
.#o
o#.

Exemple de Sortie 2

-1

Il ne peut pas atteindre le carré d'objectif en un mouvement ou moins.

Exemple d'Entrée 3

5 10 2000000
S.o..ooo..
..o..o.o..
..o..ooo..
..o..o.o..
..o..ooo.G

Exemple de Sortie 3

18

Nous disposons d'une grille comportant H lignes et W colonnes.
Soit (i,j) la case située à la i-ième ligne en partant du haut et à la j-ième colonne en partant de la gauche.
Chaque case de la grille est l'une des cases suivantes : la case de départ, la case d'arrivée, une case vide, une case murale et une case bonbon.
(i,j) est représentée par un caractère A_{i,j}, et est la case de départ si A_{i,j}= S, la case but si A_{i,j}= G, une case vide si A_{i,j}= ., une case mur si A_{i,j}= #, et une case bonbon si A_{i,j}= o.
Ici, il est garanti qu'il y a exactement un départ, un but et au plus 18 carrés de bonbons.
Takahashi se trouve maintenant sur la case de départ.
Il peut répéter son déplacement vers une case non murale adjacente verticalement ou horizontalement.
Il veut atteindre la case but en au plus T coups.
Déterminer si c'est possible.
Si c'est possible, trouver le nombre maximum de carrés de bonbons qu'il peut visiter sur le chemin de la case d'arrivée, où il doit finir.
Chaque bonbon ne compte qu'une fois, même s'il est visité plusieurs fois.

Entrée

L'entrée est donnée à partir de l'entrée standard dans le format suivant :
H W T
A_{1,1}A_{1,2}\dots A_{1,W}
\vdots
A_{H,1}A_{H,2}\dots A_{H,W}

Sortie

S'il est impossible d'atteindre la case d'arrivée en au plus T coups, afficher -1.
Sinon, on imprime le nombre maximum de carrés de bonbons qui peuvent être visités sur le chemin de la case d'arrivée, où Takahashi doit terminer.

Contraintes

- 1\leq H,W \leq 300
- 1 \leq T \leq 2\times 10^6
- H, W et T sont des nombres entiers.
- A_{i,j} est l'un de S, G, ., #, et o.
- Exactement une paire (i,j) satisfait A_{i,j}= S.
- Exactement une paire (i,j) satisfait à A_{i,j}= G.
- Au plus 18 paires (i,j) satisfont A_{i,j}= o.

Échantillon Entrée 1

3 3 5
S.G
o#o
.#.

Exemple de sortie 1

1

S'il effectue quatre déplacements sous la forme (1,1) \rightarrow (1,2) \rightarrow (1,3) \rightarrow (2,3) \rightarrow (1,3), il peut visiter une case de bonbons et terminer sur la case d'arrivée.
Il ne peut pas faire cinq mouvements ou moins pour visiter deux cases de bonbons et finir sur la case de but, donc la réponse est 1.
Notez que le fait de jouer cinq coups comme (1,1) \rightarrow (2,1) \rightarrow (1,1) \rightarrow (1,2) \rightarrow (1,3) \rightarrow (2,3) pour visiter deux cases de bonbons n'est pas valable puisqu'il n'arriverait pas à la case de but.

Exemple d'entrée 2

3 3 1
S.G
.#o
o#.

Exemple de sortie 2

-1

Il ne peut pas atteindre la case d'arrivée en un coup ou moins.

Exemple d'entrée 3

5 10 2000000
S.o..ooo..
..o..o.o...
..o..ooo..
..o..o.o...
..o..ooo.G

Exemple de sortie 3

18


Une chaîne de type DDoS est une chaîne de longueur 4 composée de lettres anglaises majuscules et minuscules satisfaisant les deux conditions suivantes.

- Les premier, deuxième et quatrième caractères sont des lettres anglaises majuscules et le troisième caractère est une lettre anglaise minuscule.
- Les premier et deuxième caractères sont égaux.

Par exemple, DDoS et AAaA sont des chaînes de type DDoS, alors que ni ddos ni IPoE ne le sont.
On vous donne une chaîne S composée de lettres anglaises majuscules et minuscules et de ?.
Soit q le nombre d'occurrences de ? dans S. Il existe 52^q chaînes qui peuvent être obtenues en remplaçant indépendamment chaque ? dans S par une lettre anglaise majuscule ou minuscule.
Parmi ces chaînes, trouvez le nombre de chaînes qui ne contiennent pas de chaîne de type DDoS en tant que sous-séquence, modulo 998244353.

Entrée

L'entrée est donnée à partir de l'entrée standard au format suivant :
S

Sortie

Imprimez la réponse.

Contraintes

- S est composé de lettres anglaises majuscules, de lettres anglaises minuscules et de ?.
- La longueur de S est comprise entre 4 et 3\fois 10^5, inclus.

Exemple d'entrée 1

DD??S

Exemple de sortie 1

676

Lorsqu'au moins un des ? est remplacé par une lettre anglaise minuscule, la chaîne résultante contiendra une chaîne de type DDoS en tant que sous-séquence.

Exemple d'entrée 2

???????????????????????????????????????

Exemple de sortie 2

858572093

Trouvez le nombre modulo 998244353.

Exemple d'entrée 3

?D??S

Exemple de sortie 3

136604

Une chaîne de type DDoS est une chaîne de longueur 4 composée de lettres anglaises majuscules et minuscules satisfaisant les deux conditions suivantes.

- Les premier, deuxième et quatrième caractères sont des lettres majuscules anglaises, et le troisième caractère est une lettre minuscule anglaise.
- Les premier et deuxième caractères sont égaux.

Par exemple, DDoS et AAaA sont des chaînes de type DDoS, tandis que ni ddos ni IPoE ne le sont.
On vous donne une chaîne S composée de lettres anglaises majuscules et minuscules et de ?.
Soit q le nombre d'occurrences de ? dans S. Il existe 52^q chaînes qui peuvent être obtenues en remplaçant indépendamment chaque ? dans S par une lettre anglaise majuscule ou minuscule.
Parmi ces chaînes, trouvez le nombre de celles qui ne contiennent pas une sous-séquence de type DDoS, modulo 998244353.

Entrée

L'entrée est donnée à partir de l'entrée standard dans le format suivant :
S

Sortie

Afficher la réponse.

Contraintes

- S se compose de lettres anglaises majuscules, de lettres anglaises minuscules et de ?.
- La longueur de S est entre 4 et 3\times 10^5, inclus.

Exemple d'entrée 1

DD??S

Exemple de sortie 1

676

Lorsqu'au moins l'un des ? est remplacé par une lettre anglaise minuscule, la chaîne résultante contiendra une sous-séquence de type DDoS.

Exemple d'entrée 2

????????????????????????????????????????

Exemple de sortie 2

858572093

Trouver le nombre modulo 998244353.

Exemple d'entrée 3

?D??S

Exemple de sortie 3

136604


Il y a un ennemi avec une endurance A. Chaque fois que vous attaquez l'ennemi, son endurance diminue de B.
Combien de fois devez-vous attaquer l'ennemi pour que son endurance atteigne 0 ou moins ?

Entrée

L'entrée est donnée depuis l'entrée standard au format suivant :
A B

Sortie

Affichez la réponse.

Contraintes

- 1 \le A,B \le 10^{18}
- A et B sont des entiers.

Exemple d'entrée 1

7 3

Exemple de sortie 1

3

Attaquer trois fois fait que l'endurance de l'ennemi est -2.
Attaquer seulement deux fois laisse l'endurance à 1, donc vous devez l'attaquer trois fois.

Exemple d'entrée 2

123456789123456789 987654321

Exemple de sortie 2

124999999

Exemple d'entrée 3

999999999999999998 2

Exemple de sortie 3

499999999999999999

Il y a un ennemi avec une endurance A. Chaque fois que vous attaquez l'ennemi, son endurance diminue de B.
Combien de fois au moins devez-vous attaquer l'ennemi pour que son endurance soit de 0 ou moins ?

Entrée

L'entrée est donnée à partir de l'entrée standard au format suivant :
A B

Sortie

Imprimez la réponse.

Contraintes

- 1 \le A,B \le 10^{18}
- A et B sont des entiers.

Exemple d'entrée 1

7 3

Exemple de sortie 1

3

Attaquer trois fois réduit l'endurance de l'ennemi à -2.
Attaquer seulement deux fois réduit l'endurance à 1, vous devez donc l'attaquer trois fois.

Exemple d'entrée 2

123456789123456789 987654321

Exemple de sortie 2

124999999

Exemple d'entrée 3

9999999999999999998 2

Exemple de sortie 3

499999999999999999

On considère un ennemi avec une endurance A.  Chaque fois que vous attaquez l'ennemi, son endurance diminue de B.
Combien de fois devez-vous attaquer l'ennemi pour que son endurance atteigne 0 ou moins ?

Entrée

L'entrée est donnée depuis l'entrée standard au format suivant :
A B

Sortie

Affichez la réponse.

Contraintes

- 1 \le A,B \le 10^{18}
- A et B sont des entiers.

Exemple d'entrée 1

7 3

Exemple de sortie 1

3

Attaquer trois fois fait que l'endurance de l'ennemi est -2.
Attaquer seulement deux fois laisse l'endurance à 1, donc vous devez l'attaquer trois fois.

Exemple d'entrée 2

123456789123456789 987654321

Exemple de sortie 2

124999999

Exemple d'entrée 3

999999999999999998 2

Exemple de sortie 3

499999999999999999


Une grille contient H lignes horizontales et W colonnes verticales. Chaque cellule a une lettre anglaise minuscule inscrite dessus.
On note (i, j) la cellule à la i-ème ligne depuis le haut et la j-ème colonne depuis la gauche.
Les lettres inscrites sur la grille sont représentées par H chaînes S_1, S_2, \ldots, S_H, chacune de longueur W.
La j-ème lettre de S_i représente la lettre inscrite sur (i, j).
Il y a un ensemble unique de cellules contiguës (allant verticalement, horizontalement ou en diagonale) dans la grille
avec s, n, u, k et e inscrites sur elles dans cet ordre.
Trouvez les positions de ces cellules et imprimez-les dans le format spécifié dans la section de sortie.
Un quintuplet de cinq cellules (A_1, A_2, A_3, A_4, A_5) forme un ensemble de cellules contiguës (allant verticalement, horizontalement ou en diagonale) avec s, n, u, k et e inscrites sur elles dans cet ordre
si et seulement si toutes les conditions suivantes sont satisfaites.

- A_1, A_2, A_3, A_4 et A_5 ont respectivement les lettres s, n, u, k et e inscrites dessus.
- Pour tout 1\leq i\leq 4, les cellules A_i et A_{i+1} partagent un coin ou un côté.
- Les centres de A_1, A_2, A_3, A_4 et A_5 sont sur une ligne commune à intervalles réguliers.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
H W
S_1
S_2
\vdots
S_H

Sortie

Imprimez cinq lignes dans le format suivant.
Soit (R_1, C_1), (R_2, C_2)\ldots,(R_5, C_5) les cellules dans l'ensemble recherché avec s, n, u, k et e inscrites dessus respectivement.
La i-ème ligne doit contenir R_i et C_i dans cet ordre, séparés par un espace.
En d'autres termes, imprimez-les dans le format suivant :
R_1 C_1
R_2 C_2
\vdots
R_5 C_5

Voir aussi les exemples d'entrées et de sorties ci-dessous.

Contraintes

- 5\leq H\leq 100
- 5\leq W\leq 100
- H et W sont des entiers.
- S_i est une chaîne de longueur W constituée de lettres anglaises minuscules.
- La grille donnée a un ensemble unique de cellules conformes.

Exemple d'entrée 1

6 6
vgxgpu
amkxks
zhkbpp
hykink
esnuke
zplvfj

Exemple de sortie 1

5 2
5 3
5 4
5 5
5 6

Le quintuplet (A_1, A_2, A_3, A_4, A_5)=((5, 2), (5, 3), (5, 4), (5, 5), (5, 6)) satisfait les conditions.
En effet, les lettres inscrites dessus sont s, n, u, k et e;
pour tout 1\leq i\leq 4, les cellules A_i et A_{i+1} partagent un côté;
et les centres des cellules sont sur une ligne commune.

Exemple d'entrée 2

5 5
ezzzz
zkzzz
ezuzs
zzznz
zzzzs

Exemple de sortie 2

5 5
4 4
3 3
2 2
1 1

Le quintuplet (A_1, A_2, A_3, A_4, A_5)=((5, 5), (4, 4), (3, 3), (2, 2), (1, 1)) satisfait les conditions.
Cependant, par exemple, (A_1, A_2, A_3, A_4, A_5)=((3, 5), (4, 4), (3, 3), (2, 2), (3, 1)) viole la troisième condition car les centres des cellules ne sont pas sur une ligne commune, bien qu'il satisfasse la première et la deuxième conditions.

Exemple d'entrée 3

10 10
kseeusenuk
usesenesnn
kskekeeses
nesnusnkkn
snenuuenke
kukknkeuss
neunnennue
sknuessuku
nksneekknk
neeeuknenk

Exemple de sortie 3

9 3
8 3
7 3
6 3
5 3

Une grille contient H lignes horizontales et W colonnes verticales.  Chaque cellule a une lettre anglaise minuscule inscrite dessus.
On note (i, j) la cellule à la i-ème ligne à partir du haut et la j-ème colonne à partir de la gauche.
Les lettres inscrites sur la grille sont représentées par H chaînes S_1, S_2, \ldots, S_H, chacune de longueur W.
La j-ème lettre de S_i représente la lettre inscrite sur (i, j).
Il y a un ensemble unique de
cellules contiguës (verticalement, horizontalement ou en diagonale) dans la grille
avec s, n, u, k et e inscrites dessus dans cet ordre.
Trouvez les positions de ces cellules et affichez-les dans le format spécifié dans la section de sortie.
Un quintuplet de cinq cellules (A_1, A_2, A_3, A_4, A_5) forme un ensemble de cellules contiguës (verticalement, horizontalement ou en diagonale) avec s, n, u, k et e inscrites sur elles dans cet ordre
si et seulement si toutes les conditions suivantes sont satisfaites.

- A_1, A_2, A_3, A_4 et A_5 ont respectivement les lettres s, n, u, k et e inscrites dessus.
- Pour tout 1\leq i\leq 4, les cellules A_i et A_{i+1} partagent un coin ou un côté.
- Les centres de A_1, A_2, A_3, A_4 et A_5 sont sur une ligne commune à intervalles réguliers.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
H W
S_1
S_2
\vdots
S_H

Sortie

Affichez cinq lignes dans le format suivant.
Soit (R_1, C_1), (R_2, C_2)\ldots,(R_5, C_5) les cellules dans l'ensemble recherché avec respectivement s, n, u, k et e inscrites dessus.
La i-ème ligne doit contenir R_i et C_i dans cet ordre, séparés par un espace.
En d'autres termes, affichez-les dans le format suivant :
R_1 C_1
R_2 C_2
\vdots
R_5 C_5

Voir aussi les exemples d'entrées et de sorties ci-dessous.

Contraintes

- 5\leq H\leq 100
- 5\leq W\leq 100
- H et W sont des entiers.
- S_i est une chaîne de longueur W constituée de lettres anglaises minuscules.
- La grille donnée a un ensemble unique de cellules conformes.

Exemple d'entrée 1

6 6
vgxgpu
amkxks
zhkbpp
hykink
esnuke
zplvfj

Exemple de sortie 1

5 2
5 3
5 4
5 5
5 6

Le quintuplet (A_1, A_2, A_3, A_4, A_5)=((5, 2), (5, 3), (5, 4), (5, 5), (5, 6)) satisfait les conditions.
En effet, les lettres inscrites dessus sont s, n, u, k et e;
pour tout 1\leq i\leq 4, les cellules A_i et A_{i+1} partagent un côté;
et les centres des cellules sont sur une ligne commune.

Exemple d'entrée 2

5 5
ezzzz
zkzzz
ezuzs
zzznz
zzzzs

Exemple de sortie 2

5 5
4 4
3 3
2 2
1 1

Le quintuplet (A_1, A_2, A_3, A_4, A_5)=((5, 5), (4, 4), (3, 3), (2, 2), (1, 1)) satisfait les conditions.
Cependant, par exemple, (A_1, A_2, A_3, A_4, A_5)=((3, 5), (4, 4), (3, 3), (2, 2), (3, 1)) viole la troisième condition car les centres des cellules ne sont pas sur une ligne commune, bien qu'il satisfasse la première et la deuxième conditions.

Exemple d'entrée 3

10 10
kseeusenuk
usesenesnn
kskekeeses
nesnusnkkn
snenuuenke
kukknkeuss
neunnennue
sknuessuku
nksneekknk
neeeuknenk

Exemple de sortie 3

9 3
8 3
7 3
6 3
5 3

Il y a une grille avec H lignes horizontales et W colonnes verticales. Chaque cellule contient une lettre minuscule écrite dessus.
Nous désignons par (i, j) la cellule de la i-ème ligne à partir du haut et de la j-ème colonne à partir de la gauche.
Les lettres écrites sur la grille sont représentées par H chaînes S_1,S_2,\ldots, S_H, chacune de longueur W.
La j-ème lettre de S_i représente la lettre écrite sur (i, j).
Il existe un ensemble unique de
cellules contiguës (allant verticalement, horizontalement ou en diagonale) dans la grille
avec s, n, u, k et e écrits dessus dans cet ordre.
Recherchez les positions de ces cellules et imprimez-les dans le format spécifié dans la section Sortie.
On dit qu'un tuple de cinq cellules (A_1, A_2, A_3, A_4, A_5) forme
un ensemble de cellules contiguës (allant verticalement, horizontalement ou en diagonale) sur lesquelles sont écrits s, n, u, k et e dans cet ordre
si et seulement si toutes les conditions suivantes sont satisfaites.

- A_1, A_2, A_3, A_4 et A_5 ont respectivement les lettres s, n, u, k et e écrites dessus.
- Pour tout 1\leq i\leq 4, les cellules A_i et A_{i+1} partagent un coin ou un côté.
- Les centres de A_1, A_2, A_3, A_4 et A_5 sont sur une ligne commune à intervalles réguliers.

Entrée

L'entrée est donnée à partir de l'entrée standard au format suivant :
H W
S_1
S_2
\vdots
S_H

Sortie

Imprimez cinq lignes au format suivant.
Soient (R_1,C_1), (R_2,C_2)\ldots,(R_5,C_5) les cellules de l'ensemble recherché avec s, n, u, k et e écrits dessus, respectivement.
La i-ème ligne doit contenir R_i et C_i dans cet ordre, séparés par un espace.
En d'autres termes, imprimez-les au format suivant :
R_1 C_1
R_2 C_2
\vdots
R_5 C_5

Voir également les exemples d'entrées et de sorties ci-dessous.

Contraintes

- 5\leq H\leq 100
- 5\leq W\leq 100
- H et W sont des entiers.
- S_i est une chaîne de longueur W composée de lettres minuscules anglaises.
- La grille donnée possède un ensemble unique de cellules conformes.

Exemple d'entrée 1

6 6
vgxgpu
amkxks
zhkbpp
hykink
esnuke
zplvfj

Exemple de sortie 1

5 2
5 3
5 4
5 5
5 6

Le tuple (A_1,A_2,A_3,A_4,A_5)=((5,2),(5,3),(5,4),(5,5),(5,6)) satisfait les conditions.
En effet, les lettres écrites dessus sont s, n, u, k et e ;
pour tout 1\leq i\leq 4, les cellules A_i et A_{i+1} partagent un côté ;
et les centres des cellules sont sur une ligne commune.

Exemple d'entrée 2

5 5
ezzzz
zkzzz
ezuzs
zzznz
zzzzs

Exemple de sortie 2

5 5
4 4
3 3
2 2
1 1

Le tuple (A_1,A_2,A_3,A_4,A_5)=((5,5),(4,4),(3,3),(2,2),(1,1)) satisfait les conditions.
Cependant, par exemple, (A_1,A_2,A_3,A_4,A_5)=((3,5),(4,4),(3,3),(2,2),(3,1)) viole la troisième condition car les centres des cellules ne sont pas sur une ligne commune, bien qu'il satisfasse les première et deuxième conditions.

Exemple d'entrée 3

10 10
kseeusenuk
usesenesnn
kskekeeses
nesnusnkkn
snenuuenke
kukknkeuss
neunnennue
sknuessuku
nksneekknk
neeeuknenk

Exemple de sortie 3

9 3
8 3
7 3
6 3
5 3


On vous donne N chaînes S_1,S_2,\dots,S_N, chacune de longueur M, composées de lettres minuscules anglaises.  Ici, S_i sont distinctes par paire.
Déterminer si l'on peut réarranger ces chaînes pour obtenir une nouvelle séquence de chaînes T_1,T_2,\dots,T_N telle que :

- pour tous les entiers i tels que 1 \le i \le N-1, on peut modifier exactement un caractère de T_i en une autre lettre anglaise minuscule pour le rendre égal à T_{i+1}.

Entrée

L'entrée est donnée à partir de l'entrée standard dans le format suivant :
N M
S_1
S_2
\vdots
S_N

Sortie

Imprimez Oui si l'on peut obtenir une séquence conforme ; imprimez Non dans le cas contraire.

Contraintes

- 2 \le N \le 8
- 1 \le M \le 5
- S_i est une chaîne de longueur M composée de lettres minuscules anglaises.  (1 \le i \le N)
- S_i sont distincts par paire.

Exemple d'entrée 1

4 4
bbed
abcd
abed
fbed

Échantillon de sortie 1

Yes

On peut les réarranger dans l'ordre suivant : abcd, abed, bbed, fbed.  Cette séquence satisfait à la condition.

Exemple d'entrée 2

2 5
abcde
abced

Exemple de sortie 2

No

Quelle que soit la manière dont les chaînes sont réarrangées, la condition n'est jamais remplie.

Exemple d'entrée 3

8 4
fast
face
cast
race
fact
rice
nice
case

Exemple de résultat 3

Yes

Vous avez N chaînes de caractères S_1,S_2,\dots,S_N, chacune de longueur M, composées de lettres minuscules anglaises. Ici, les S_i sont distinctes en paire.
Déterminez s'il est possible de réarranger ces chaînes pour obtenir une nouvelle séquence de chaînes T_1,T_2,\dots,T_N telle que :

- pour tout entier i tel que 1 \le i \le N-1, il est possible de modifier exactement un caractère de T_i en une autre lettre minuscule anglaise pour qu'il soit égal à T_{i+1}.

Entrée

L'entrée est donnée au format Standard Input suivant :
N M
S_1
S_2
\vdots
S_N

Sortie

Affichez Yes si on peut obtenir une séquence conforme ; affichez No sinon.

Contraintes

- 2 \le N \le 8
- 1 \le M \le 5
- S_i est une chaîne de longueur M composée de lettres minuscules anglaises. (1 \le i \le N)
- Les S_i sont distinctes en paire.

Exemple d'entrée 1

4 4
bbed
abcd
abed
fbed

Exemple de sortie 1

Yes

On peut les réarranger dans cet ordre : abcd, abed, bbed, fbed. Cette séquence satisfait la condition.

Exemple d'entrée 2

2 5
abcde
abced

Exemple de sortie 2

No

Peu importe la façon dont les chaînes sont réarrangées, la condition n'est jamais satisfaite.

Exemple d'entrée 3

8 4
fast
face
cast
race
fact
rice
nice
case

Exemple de sortie 3

Yes

Vous avez N chaînes de caractères S_1,S_2,\dots,S_N, chacune de longueur M, composées de lettres minuscules anglaises. Ici, les S_i sont distinctes en paire.
Déterminez s'il est possible de réarranger ces chaînes pour obtenir une nouvelle séquence de chaînes T_1,T_2,\dots,T_N telle que :

- pour tout entier i tel que 1 \le i \le N-1, il est possible de modifier exactement un caractère de T_i en une autre lettre minuscule anglaise pour qu'il soit égal à T_{i+1}.

Entrée

L'entrée est donnée au format entrée standard suivant :
N M
S_1
S_2
\vdots
S_N

Sortie

Affichez Yes si on peut obtenir une séquence conforme ; affichez No sinon.

Contraintes

- 2 \le N \le 8
- 1 \le M \le 5
- S_i est une chaîne de longueur M composée de lettres minuscules anglaises. (1 \le i \le N)
- Les S_i sont distinctes en paire.

Exemple d'entrée 1

4 4
bbed
abcd
abed
fbed

Exemple de sortie 1

Yes

On peut les réarranger dans cet ordre : abcd, abed, bbed, fbed. Cette séquence satisfait la condition.

Exemple d'entrée 2

2 5
abcde
abced

Exemple de sortie 2

No

Peu importe la façon dont les chaînes sont réarrangées, la condition n'est jamais satisfaite.

Exemple d'entrée 3

8 4
fast
face
cast
race
fact
rice
nice
case

Exemple de sortie 3

Yes


Takahashi a décidé d'offrir un cadeau à Aoki et un cadeau à Snuke.
Il y a N candidats de cadeaux pour Aoki,
et leurs valeurs sont A_1, A_2, \ldots,A_N.
Il y a M candidats de cadeaux pour Snuke,
et leurs valeurs sont B_1, B_2, \ldots,B_M.
Takahashi veut choisir des cadeaux de sorte que la différence de valeurs entre les deux cadeaux soit au maximum D.
Déterminez s'il peut choisir une telle paire de cadeaux. S'il le peut, imprimez la somme maximale des valeurs des cadeaux choisis.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
N M D
A_1 A_2 \ldots A_N
B_1 B_2 \ldots B_M

Sortie

S'il peut choisir des cadeaux pour satisfaire la condition,
imprimez la somme maximale des valeurs des cadeaux choisis.
S'il ne peut pas satisfaire la condition, imprimez -1.

Contraintes

- 1\leq N,M\leq 2\times 10^5
- 1\leq A_i,B_i\leq 10^{18}
- 0\leq D \leq 10^{18}
- Toutes les valeurs dans l'entrée sont des entiers.

Exemple d'entrée 1

2 3 2
3 10
2 5 15

Exemple de sortie 1

8

La différence des valeurs des deux cadeaux doit être au maximum 2.
S'il offre un cadeau de valeur 3 à Aoki et un autre de valeur 5 à Snuke, la condition est respectée, réalisant la somme maximale possible des valeurs.
Ainsi, 3+5=8 doit être imprimé.

Exemple d'entrée 2

3 3 0
1 3 3
6 2 7

Exemple de sortie 2

-1

Il ne peut pas choisir de cadeaux pour satisfaire la condition.
Notez que les candidats de cadeaux pour une personne peuvent contenir plusieurs cadeaux de même valeur.

Exemple d'entrée 3

1 1 1000000000000000000
1000000000000000000
1000000000000000000

Exemple de sortie 3

2000000000000000000

Notez que la réponse peut ne pas tenir dans un type entier de 32 bits.

Exemple d'entrée 4

8 6 1
2 5 6 5 2 1 7 9
7 2 5 5 2 4

Exemple de sortie 4

14

Takahashi a décidé d'offrir un cadeau à Aoki et un cadeau à Snuke.
Il y a N options de cadeaux pour Aoki,
et leurs valeurs sont A_1, A_2, \ldots,A_N.
Il y a M options de cadeaux pour Snuke,
et leurs valeurs sont B_1, B_2, \ldots,B_M.
Takahashi veut choisir des cadeaux de sorte que la différence de valeurs entre les deux cadeaux soit au maximum D.
Déterminez s'il peut choisir une telle paire de cadeaux. S'il le peut, affichez la somme maximale des valeurs des cadeaux choisis.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
N M D
A_1 A_2 \ldots A_N
B_1 B_2 \ldots B_M

Sortie

S'il peut choisir des cadeaux pour satisfaire la condition,
affichez la somme maximale des valeurs des cadeaux choisis.
S'il ne peut pas satisfaire la condition, affichez -1.

Contraintes

- 1\leq N,M\leq 2\times 10^5
- 1\leq A_i,B_i\leq 10^{18}
- 0\leq D \leq 10^{18}
- Toutes les valeurs dans l'entrée sont des entiers.

Exemple d'entrée 1

2 3 2
3 10
2 5 15

Exemple de sortie 1

8

La différence des valeurs des deux cadeaux doit être au maximum de 2.
S'il offre un cadeau de valeur 3 à Aoki et un autre de valeur 5 à Snuke, la condition est respectée, réalisant la somme maximale possible des valeurs.
Ainsi, 3+5=8 doit être affiché.

Exemple d'entrée 2

3 3 0
1 3 3
6 2 7

Exemple de sortie 2

-1

Il ne peut pas choisir de cadeaux pour satisfaire la condition.
Notez que les options de cadeaux pour une personne peuvent contenir plusieurs cadeaux de même valeur.

Exemple d'entrée 3

1 1 1000000000000000000
1000000000000000000
1000000000000000000

Exemple de sortie 3

2000000000000000000

Notez que la réponse peut ne pas tenir dans un type entier de 32 bits.

Exemple d'entrée 4

8 6 1
2 5 6 5 2 1 7 9
7 2 5 5 2 4

Exemple de sortie 4

14

Takahashi a décidé d'offrir un cadeau à Aoki et un cadeau à Snuke.
Il y a N cadeaux potentiels pour Aoki,
et leurs valeurs sont A_1, A_2, \ldots,A_N.
Il y a M cadeaux potentiels pour Snuke,
et leurs valeurs sont B_1, B_2, \ldots,B_M.
Takahashi veut choisir des cadeaux de telle sorte que la différence de valeur des deux cadeaux soit au plus égale à D.
Déterminez s'il peut choisir une telle paire de cadeaux. S'il le peut, imprimez la somme maximale des valeurs des cadeaux choisis.

Entrée

L'entrée est donnée à partir de l'entrée standard au format suivant :
N M D
A_1 A_2 \ldots A_N
B_1 B_2 \ldots B_M

Sortie

S'il peut choisir des cadeaux pour satisfaire la condition,
imprimez la somme maximale des valeurs des cadeaux choisis.
S'il ne peut pas satisfaire la condition, imprimez -1.

Contraintes

- 1\leq N,M\leq 2\times 10^5
- 1\leq A_i,B_i\leq 10^{18}
- 0\leq D \leq 10^{18}
- Toutes les valeurs de l'entrée sont des entiers.

Exemple d'entrée 1

2 3 2
3 10
2 5 15

Exemple de sortie 1

8

La différence des valeurs des deux cadeaux doit être au plus égale à 2.
S'il offre un cadeau de valeur 3 à Aoki et un autre de valeur 5 à Snuke, la condition est satisfaite, ce qui permet d'obtenir la somme maximale possible de valeurs.
Ainsi, 3+5=8 doit être imprimé.

Exemple d'entrée 2

3 3 0
1 3 3
6 2 7

Exemple de sortie 2

-1

Il ne peut pas choisir de cadeaux pour satisfaire la condition.
Notez que les candidats de cadeaux pour une personne peuvent contenir plusieurs cadeaux avec la même valeur.

Exemple d'entrée 3

1 1 10000000000000000000
10000000000000000000
10000000000000000000

Exemple de sortie 3

20000000000000000000

Notez que la réponse peut ne pas correspondre à un type entier 32 bits.

Exemple d'entrée 4

8 6 1
2 5 6 5 2 1 7 9
7 2 5 5 2 4

Exemple de sortie 4

14


Il y a un graphe non orienté avec N sommets numérotés de 1 à N, et initialement avec 0 arêtes.
Étant donné Q requêtes, traitez-les dans l'ordre. Après le traitement de chaque requête,
affichez le nombre de sommets qui ne sont connectés à aucun autre sommet par une arête.
La i-ème requête, \mathrm{requête}_i, est de l'un des deux types suivants.

-
1 u v : connecte le sommet u et le sommet v avec une arête. Il est garanti que, lorsque cette requête est donnée, le sommet u et le sommet v ne sont pas connectés par une arête.

-
2 v : supprime toutes les arêtes qui connectent le sommet v et les autres sommets. (Le sommet v lui-même n'est pas supprimé.)

Entrée

L'entrée est donnée à partir de l'entrée standard selon le format suivant :
N Q
\mathrm{requête}_1
\mathrm{requête}_2
\vdots
\mathrm{requête}_Q

Sortie

Affichez Q lignes.
La i-ème ligne (1\leq i\leq Q) doit contenir le nombre de sommets qui ne sont connectés à aucun autre sommet par une arête.

Contraintes

- 2 \leq N\leq 3\times 10^5
- 1 \leq Q\leq 3\times 10^5
- Pour chaque requête du premier type, 1\leq u,v\leq N et u\neq v.
- Pour chaque requête du second type, 1\leq v\leq N.
- Juste avant qu'une requête du premier type soit donnée, il n'y a pas d'arête entre les sommets u et v.
- Toutes les valeurs de l'entrée sont des entiers.

Exemple d'entrée 1

3 7
1 1 2
1 1 3
1 2 3
2 1
1 1 2
2 2
1 1 2

Exemple de sortie 1

1
0
0
1
0
3
1

Après la première requête, le sommet 1 et le sommet 2 sont connectés entre eux par une arête, mais le sommet 3 n'est connecté à aucun autre sommet.
Ainsi, 1 doit être affiché dans la première ligne.
Après la troisième requête, toutes les paires de sommets différents sont connectées par une arête.
Cependant, la quatrième requête demande de supprimer toutes les arêtes reliant le sommet 1 et les autres sommets, en particulier pour supprimer l'arête entre le sommet 1 et le sommet 2, et une autre entre le sommet 1 et le sommet 3.
En conséquence, le sommet 2 et le sommet 3 sont connectés entre eux, tandis que le sommet 1 n'est pas connecté à un autre sommet par une arête.
Ainsi, 0 et 1 doivent être imprimés respectivement dans la troisième et la quatrième ligne.

Exemple d'entrée 2

2 1
2 1

Exemple de sortie 2

2

Lorsque la requête du second type est donnée, il peut n'y avoir aucune arête reliant ce sommet et les autres sommets.

On a un graphe non orienté avec N sommets numérotés de 1 à N, et initialement avec 0 arêtes.
Étant donné Q requêtes, traitez-les dans l'ordre. Après le traitement de chaque requête,
affichez le nombre de sommets qui ne sont connectés à aucun autre sommet par une arête.
La i-ème requête, \mathrm{requête}_i, est de l'un des deux types suivants.

-
1 u v : connecte le sommet u et le sommet v avec une arête.  Il est garanti que, lorsque cette requête est donnée, le sommet u et le sommet v ne sont pas connectés par une arête.

-
2 v : supprime toutes les arêtes qui connectent le sommet v et les autres sommets.  (Le sommet v lui-même n'est pas supprimé.)

Entrée

L'entrée est donnée à partir de l'entrée standard selon le format suivant :
N Q
\mathrm{requête}_1
\mathrm{requête}_2
\vdots
\mathrm{requête}_Q

Sortie

Affichez Q lignes.
La i-ème ligne (1\leq i\leq Q) doit contenir le nombre de sommets qui ne sont connectés à aucun autre sommet par une arête.

Contraintes

- 2 \leq N\leq 3\times 10^5
- 1 \leq Q\leq 3\times 10^5
- Pour chaque requête du premier type, 1\leq u,v\leq N et u\neq v.
- Pour chaque requête du second type, 1\leq v\leq N.
- Juste avant qu'une requête du premier type soit donnée, il n'y a pas d'arête entre les sommets u et v.
- Toutes les valeurs de l'entrée sont des entiers.

Exemple d'entrée 1

3 7
1 1 2
1 1 3
1 2 3
2 1
1 1 2
2 2
1 1 2

Exemple de sortie 1

1
0
0
1
0
3
1

Après la première requête, le sommet 1 et le sommet 2 sont connectés entre eux par une arête, mais le sommet 3 n'est connecté à aucun autre sommet.
Ainsi, 1 doit être affiché à la première ligne.
Après la troisième requête, toutes les paires de sommets différents sont connectées par une arête.
Cependant, la quatrième requête demande de supprimer toutes les arêtes reliant le sommet 1 et les autres sommets, en particulier pour supprimer l'arête entre le sommet 1 et le sommet 2, et une autre entre le sommet 1 et le sommet 3.
En conséquence, le sommet 2 et le sommet 3 sont connectés entre eux, tandis que le sommet 1 n'est pas connecté à un autre sommet par une arête.
Ainsi, 0 et 1 doivent être affichés respectivement à la troisième et la quatrième ligne.

Exemple d'entrée 2

2 1
2 1

Exemple de sortie 2

2

Lorsque la requête du second type est donnée, il peut n'y avoir aucune arête reliant ce sommet aux autres sommets.

Il existe un graphe non orienté avec N sommets numérotés de 1 à N, et initialement avec 0 arête.
Données Q requêtes, traitez-les dans l'ordre. Après avoir traité chaque requête,
affichez le nombre de sommets qui ne sont connectés à aucun autre sommet par une arête.
La i-ème requête, \mathrm{query}_i, est de l'un des deux types suivants.

-
1 u v : connecter le sommet u et le sommet v par une arête. Il est garanti que, lorsque cette requête est donnée, le sommet u et le sommet v ne sont pas connectés par une arête.

-
2 v : supprimer toutes les arêtes qui connectent le sommet v et les autres sommets. (Le sommet v lui-même n'est pas supprimé.)

Entrée

L'entrée est donnée à partir de l'entrée standard au format suivant :
N Q
\mathrm{query}_1
\mathrm{query}_2
\vdots
\mathrm{query}_Q

Sortie

Afficher Q lignes.
La i-ème ligne (1\leq i\leq Q) doit contenir le nombre de sommets qui ne sont connectés à aucun autre sommet par une arête.

Contraintes

- 2 \leq N\leq 3\times 10^5
- 1 \leq Q\leq 3\times 10^5
- Pour chaque requête du premier type, 1\leq u,v\leq N et u\neq v.
- Pour chaque requête du deuxième type, 1\leq v\leq N.
- Juste avant qu'une requête du premier type ne soit donnée, il n'y a pas d'arête entre les sommets u et v.
- Toutes les valeurs de l'entrée sont des entiers.

Exemple d'entrée 1

3 7
1 1 2
1 1 3
1 2 3
2 1
1 1 2
2 2
1 1 2

Exemple de sortie 1

1
0
0
1
0
3
1

Après la première requête, le sommet 1 et le sommet 2 sont connectés l'un à l'autre par une arête, mais le sommet 3 n'est connecté à aucun autre sommet.
Ainsi, 1 doit être imprimé sur la première ligne.
Après la troisième requête, toutes les paires de sommets différents sont connectées par une arête.
Cependant, la quatrième requête demande de supprimer toutes les arêtes qui connectent le sommet 1 et les autres sommets, en particulier de supprimer l'arête entre le sommet 1 et le sommet 2, et une autre entre le sommet 1 et le sommet 3.
En conséquence, le sommet 2 et le sommet 3 sont connectés l'un à l'autre, tandis que le sommet 1 n'est connecté à aucun autre sommet par une arête.
Ainsi, 0 et 1 doivent être imprimés respectivement sur les troisième et quatrième lignes.

Exemple d'entrée 2

2 1
2 1

Exemple de sortie 2

2

Lorsque la requête du deuxième type est donnée, il se peut qu'aucune arête ne relie ce sommet et les autres sommets.


Sur un tableau, il y a N ensembles S_1,S_2,\dots,S_N constitués d'entiers entre 1 et M. Ici, S_i = \lbrace S_{i,1},S_{i,2},\dots,S_{i,A_i} \rbrace.
Vous pouvez effectuer l'opération suivante un nombre quelconque de fois (possiblement zéro) :

- choisissez deux ensembles X et Y avec au moins un élément commun. Effacez-les du tableau, et inscrivez X\cup Y sur le tableau à la place.

Ici, X\cup Y désigne l'ensemble composé des éléments contenus dans X ou Y.
Déterminez s'il est possible d'obtenir un ensemble contenant à la fois 1 et M. Si c'est possible, trouvez le nombre minimum d'opérations nécessaires pour l'obtenir.

Entrée

L'entrée est donnée par l'entrée standard dans le format suivant :
N M
A_1
S_{1,1} S_{1,2} \dots S_{1,A_1}
A_2
S_{2,1} S_{2,2} \dots S_{2,A_2}
\vdots
A_N
S_{N,1} S_{N,2} \dots S_{N,A_N}

Sortie

Si on peut obtenir un ensemble contenant à la fois 1 et M, imprimez le nombre minimum d'opérations nécessaires pour l'obtenir ; sinon, imprimez -1.

Contraintes

- 1 \le N \le 2 \times 10^5
- 2 \le M \le 2 \times 10^5
- 1 \le \sum_{i=1}^{N} A_i \le 5 \times 10^5
- 1 \le S_{i,j} \le M(1 \le i \le N,1 \le j \le A_i)
- S_{i,j} \neq S_{i,k}(1 \le j < k \le A_i)
- Toutes les valeurs de l'entrée sont des entiers.

Exemple d'entrée 1

3 5
2
1 2
2
2 3
3
3 4 5

Exemple de sortie 1

2

Tout d'abord, choisissez et supprimez \lbrace 1,2 \rbrace et \lbrace 2,3 \rbrace pour obtenir \lbrace 1,2,3 \rbrace.
Ensuite, choisissez et supprimez \lbrace 1,2,3 \rbrace et \lbrace 3,4,5 \rbrace pour obtenir \lbrace 1,2,3,4,5 \rbrace.
Ainsi, on peut obtenir un ensemble contenant à la fois 1 et M avec deux opérations. Comme on ne peut atteindre l'objectif qu'en effectuant l'opération une seule fois, la réponse est 2.

Exemple d'entrée 2

1 2
2
1 2

Exemple de sortie 2

0

S_1 contient déjà à la fois 1 et M, donc le nombre minimum d'opérations nécessaires est 0.

Exemple d'entrée 3

3 5
2
1 3
2
2 4
3
2 4 5

Exemple de sortie 3

-1

Exemple d'entrée 4

4 8
3
1 3 5
2
1 2
3
2 4 7
4
4 6 7 8

Exemple de sortie 4

2

Sur un tableau noir, il y a N ensembles S_1,S_2,\dots,S_N composés d’entiers entre 1 et M. Ici, S_i = \lbrace S_{i,1},S_{i,2},\dots,S_{i,A_i} \rbrace.
Vous pouvez effectuer l’opération suivante n’importe quel nombre de fois (éventuellement zéro):

- choisissez deux ensembles X et Y avec au moins un élément commun. Effacez-les du tableau, et écrivez X\cup Y sur le tableau.

Ici, X\cup Y désigne l’ensemble constitué des éléments contenus dans au moins un des X et Y.
Déterminer si l’on peut obtenir un ensemble contenant à la fois 1 et M. Si c’est possible, trouver le nombre minimum d’opérations nécessaires pour l’obtenir.

Entrée en ligne

L’entrée est donnée à partir de l’entrée Standard dans le format suivant:
N M
A_1
S_{1,1} S_{1,2} \dots S_{1,A_1}
A_2
S_{2,1} S_{2,2} \dots S_{2,A_2}
\vdots
A_N
S_{N,1} S_{N,2} \dots S_{N,A_N}

La production

Si l’on peut obtenir un ensemble contenant à la fois 1 et M, imprimez le nombre minimum d’opérations nécessaires pour l’obtenir; Si c’est impossible, imprimez -1 à la place.

Les contraintes

- 1 \le N \le 2 \times 10^5
- 2 \le M \le 2 \times 10^5
- 1 \le \sum_{i=1}^{N} A_i \le 5 \times 10^5
- 1 \le S_{i,j} \le M(1 \le i \le N,1 \le j \le A_i)
- S_{i,j} \neq S_{i,k}(1 \le j < k \le A_i)
- toutes les valeurs dans l’entrée sont des entiers.

Entrée d’échantillon 1

3 5
2
1 2
2
2 3
3
3 4 5

Exemple de sortie 1

2

Tout d’abord, choisissez et supprimez \lbrace 1,2 \rbrace et \lbrace 2,3 \rbrace pour obtenir \lbrace 1,2,3 \rbrace.
Ensuite, choisissez et supprimez \lbrace 1,2,3 \rbrace et \lbrace 3,4,5 \rbrace pour obtenir \lbrace 1,2,3,4,5 \rbrace.
Ainsi, on peut obtenir un ensemble contenant à la fois 1 et M avec deux opérations. Comme on ne peut atteindre l’objectif en n’effectuant l’opération qu’une seule fois, la réponse est 2.

Saisie de l’échantillon 2

1 2
2
1 2

Sortie de l’échantillon 2

0

S_1 contient déjà à la fois 1 et M, donc le nombre minimum d’opérations requises est 0.

Entrée de l’échantillon 3

3 5
2
1 2
2
2 3
3
3 4 5

Sortie de l’échantillon 3

-1

Entrée d’échantillon 4

4 8
3
1 3 5
2
1 2
3
2 4 7
4
4 6 7 8

Exemple de sortie 4

2

Sur un tableau, il y a N ensembles S_1,S_2,\dots,S_N constitués d'entiers entre 1 et M. Ici, S_i = \lbrace S_{i,1},S_{i,2},\dots,S_{i,A_i} \rbrace.
Vous pouvez effectuer l'opération suivante un nombre quelconque de fois (possiblement zéro) :

- choisissez deux ensembles X et Y avec au moins un élément commun.  Effacez-les du tableau, et inscrivez à la place X\cup Y sur le tableau.

Ici, X\cup Y désigne l'ensemble composé des éléments contenus dans X ou Y.
Déterminez s'il est possible d'obtenir un ensemble contenant à la fois 1 et M.  Si c'est possible, trouvez le nombre minimum d'opérations nécessaires pour l'obtenir.

Entrée

L'entrée est donnée par l'entrée standard dans le format suivant :
N M
A_1
S_{1,1} S_{1,2} \dots S_{1,A_1}
A_2
S_{2,1} S_{2,2} \dots S_{2,A_2}
\vdots
A_N
S_{N,1} S_{N,2} \dots S_{N,A_N}

Sortie

Si on peut obtenir un ensemble contenant à la fois 1 et M, affichez le nombre minimum d'opérations nécessaires pour l'obtenir ; sinon, affichez -1.

Contraintes

- 1 \le N \le 2 \times 10^5
- 2 \le M \le 2 \times 10^5
- 1 \le \sum_{i=1}^{N} A_i \le 5 \times 10^5
- 1 \le S_{i,j} \le M(1 \le i \le N,1 \le j \le A_i)
- S_{i,j} \neq S_{i,k}(1 \le j < k \le A_i)
- Toutes les valeurs de l'entrée sont des entiers.

Exemple d'entrée 1

3 5
2
1 2
2
2 3
3
3 4 5

Exemple de sortie 1

2

Tout d'abord, choisissez et supprimez \lbrace 1,2 \rbrace et \lbrace 2,3 \rbrace pour obtenir \lbrace 1,2,3 \rbrace.
Ensuite, choisissez et supprimez \lbrace 1,2,3 \rbrace et \lbrace 3,4,5 \rbrace pour obtenir \lbrace 1,2,3,4,5 \rbrace.
Ainsi, on peut obtenir un ensemble contenant à la fois 1 et M avec deux opérations.  Comme on ne peut atteindre l'objectif en effectuant l'opération une seule fois, la réponse est 2.

Exemple d'entrée 2

1 2
2
1 2

Exemple de sortie 2

0

S_1 contient déjà à la fois 1 et M, donc le nombre minimum d'opérations nécessaires est 0.

Exemple d'entrée 3

3 5
2
1 3
2
2 4
3
2 4 5

Exemple de sortie 3

-1

Exemple d'entrée 4

4 8
3
1 3 5
2
1 2
3
2 4 7
4
4 6 7 8

Exemple de sortie 4

2


Deux caractères x et y sont appelés caractères similaires si et seulement si l'une des conditions suivantes est satisfaite :

- x et y sont le même caractère.
- L'un des caractères x et y est 1 et l'autre est l.
- L'un des caractères x et y est 0 et l'autre est o.

Deux chaînes S et T, chacune de longueur N, sont appelées chaînes similaires si et seulement si :

- pour tout i\ (1\leq i\leq N), le i-ème caractère de S et le i-ème caractère de T sont des caractères similaires.

Étant donné deux chaînes de longueur N, S et T, composées de lettres minuscules anglaises et de chiffres, déterminez si S et T sont des chaînes similaires.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
N
S
T

Sortie

Affichez Yes si S et T sont des chaînes similaires, et No sinon.

Contraintes

- N est un entier entre 1 et 100.
- Chacune des chaînes S et T est une chaîne de longueur N composée de lettres minuscules anglaises et de chiffres.

Exemple d'entrée 1

3
l0w
1ow

Exemple de sortie 1

Yes

Le 1er caractère de S est l, et le 1er caractère de T est 1. Ce sont des caractères similaires.
Le 2ème caractère de S est 0, et le 2ème caractère de T est o. Ce sont des caractères similaires.
Le 3ème caractère de S est w, et le 3ème caractère de T est w. Ce sont des caractères similaires.
Ainsi, S et T sont des chaînes similaires.

Exemple d'entrée 2

3
abc
arc

Exemple de sortie 2

No

Le 2ème caractère de S est b, et le 2ème caractère de T est r. Ce ne sont pas des caractères similaires.
Ainsi, S et T ne sont pas des chaînes similaires.

Exemple d'entrée 3

4
nok0
n0ko

Exemple de sortie 3

Yes

Deux caractères x et y sont appelés caractères similaires si et seulement si l'une des conditions suivantes est remplie :

- x et y sont le même caractère.
- L'un des caractères x et y vaut 1 et l'autre l.
- L'un des caractères x et y vaut 0 et l'autre o.

Deux chaînes de caractères S et T, chacune de longueur N, sont appelées chaînes similaires si et seulement si :

- pour tout i\ (1\leq i\leq N), le i ème caractère de S et le i ème caractère de T sont des caractères similaires.

Étant donné deux chaînes de longueur N, S et T, composées de lettres minuscules et de chiffres anglais, déterminez si S et T sont des chaînes similaires.

Entrée

L'entrée est fournie par l'entrée standard dans le format suivant :
N
S
T

Sortie

Affiche Yes si S et T sont des chaînes de caractères similaires, et No dans le cas contraire.

Contraintes

- N est un nombre entier compris entre 1 et 100.
- S et T sont des chaînes de caractères de longueur N composées de lettres minuscules et de chiffres.

Exemple d'entrée 1

3
l0w
1ow

Exemple de sortie 1

Yes

Le premier caractère de S est l, et le premier caractère de T est 1. Ce sont des caractères similaires.
Le 2e caractère de S est 0, et le 2e caractère de T est o. Ce sont des caractères similaires.
Le 3e caractère de S est w, et le 3e caractère de T est w. Ce sont des caractères similaires.
Ainsi, S et T sont des chaînes de caractères similaires.

Exemple d'entrée 2

3
abc
arc

Exemple de sortie 2

No

Le 2e caractère de S est b, et le 2e caractère de T est r.  Ce ne sont pas des caractères similaires.
Par conséquent, S et T ne sont pas des chaînes de caractères similaires.

Exemple d'entrée 3

4
nok0
n0ko

Exemple de sortie 3

Yes


N personnes numérotées 1,2,\ldots,N étaient sur M photos.  Sur chacune des photos, elles se tenaient en une seule ligne.  Dans la i-ème photo, la j-ème personne de la gauche est la personne a_{i,j}.
Deux personnes qui ne se sont tenues à côté l'une de l'autre dans aucune des photos peuvent être de mauvaise humeur.
Combien de paires de personnes peuvent être de mauvaise humeur?  Ici, nous ne distinguons pas une paire de personne x et personne y, et une paire de personne y et personne x.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
N M
a_{1,1} \ldots a_{1,N}
\vdots
a_{M,1} \ldots a_{M,N}

Sortie

Affichez la réponse.

Contraintes

- 2 \leq N \leq 50
- 1 \leq M \leq 50
- 1 \leq a_{i,j} \leq N
- a_{i,1},\ldots,a_{i,N} contiennent chacun des 1,\ldots,N exactement une fois.
- Toutes les valeurs de l'entrée sont des entiers.

Exemple d'entrée 1

4 2
1 2 3 4
4 3 1 2

Exemple de sortie 1

2

La paire personne 1 et personne 4, et la paire personne 2 et personne 4, peuvent être de mauvaise humeur.

Exemple d'entrée 2

3 3
1 2 3
3 1 2
1 2 3

Exemple de sortie 2

0

Exemple d'entrée 3

10 10
4 10 7 2 8 3 9 1 6 5
3 6 2 9 1 8 10 7 4 5
9 3 4 5 7 10 1 8 2 6
7 3 1 8 4 9 5 6 2 10
5 2 1 4 10 7 9 8 3 6
5 8 1 6 9 3 2 4 7 10
8 10 3 4 5 7 2 9 6 1
3 10 2 7 8 5 1 4 9 6
10 6 1 5 4 2 3 8 9 7
4 5 9 1 8 2 7 6 3 10

Exemple de sortie 3

6

N personnes numérotées 1,2,\ldots,N étaient sur M photos. Sur chacune des photos, elles se tenaient en une seule ligne. Dans la i-ème photo, la j-ème personne de la gauche est la personne a_{i,j}.
Deux personnes qui ne se sont tenues à côté dans aucune des photos peuvent être de mauvaise humeur.
Combien de paires de personnes peuvent être de mauvaise humeur ? Ici, nous ne distinguons pas une paire de personne x et personne y, et une paire de personne y et personne x.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
N M
a_{1,1} \ldots a_{1,N}
\vdots
a_{M,1} \ldots a_{M,N}

Sortie

Affichez la réponse.

Contraintes

- 2 \leq N \leq 50
- 1 \leq M \leq 50
- 1 \leq a_{i,j} \leq N
- a_{i,1},\ldots,a_{i,N} contiennent chacun des 1,\ldots,N exactement une fois.
- Toutes les valeurs de l'entrée sont des entiers.

Exemple d'entrée 1

4 2
1 2 3 4
4 3 1 2

Exemple de sortie 1

2

La paire de la personne 1 et de la personne 4, et la paire de la personne 2 et de la personne 4, peuvent être de mauvaise humeur.

Exemple d'entrée 2

3 3
1 2 3
3 1 2
1 2 3

Exemple de sortie 2

0

Exemple d'entrée 3

10 10
4 10 7 2 8 3 9 1 6 5
3 6 2 9 1 8 10 7 4 5
9 3 4 5 7 10 1 8 2 6
7 3 1 8 4 9 5 6 2 10
5 2 1 4 10 7 9 8 3 6
5 8 1 6 9 3 2 4 7 10
8 10 3 4 5 7 2 9 6 1
3 10 2 7 8 5 1 4 9 6
10 6 1 5 4 2 3 8 9 7
4 5 9 1 8 2 7 6 3 10

Exemple de sortie 3

6

N personnes numérotées 1,2,\ldots,N étaient sur M photos. Sur chacune des photos, elles se tenaient sur une seule ligne. Sur la i-ème photo, la j-ème personne à partir de la gauche est la personne a_{i,j}.
Deux personnes qui ne se tenaient côte à côte sur aucune des photos peuvent être de mauvaise humeur.
Combien de paires de personnes peuvent être de mauvaise humeur ? Ici, nous ne faisons pas de distinction entre une paire de personnes x et y, et une paire de personnes y et x.

Entrée

L'entrée est donnée à partir de l'entrée standard au format suivant :
N M
a_{1,1} \ldots a_{1,N}
\vdots
a_{M,1} \ldots a_{M,N}

Sortie

Imprimez la réponse.

Contraintes

- 2 \leq N \leq 50
- 1 \leq M \leq 50
- 1 \leq a_{i,j} \leq N
- a_{i,1},\ldots,a_{i,N} contiennent chacun des 1,\ldots,N exactement une fois.
- Toutes les valeurs de l'entrée sont des entiers.

Exemple d'entrée 1

4 2
1 2 3 4
4 3 1 2

Exemple de sortie 1

2

La paire de personnes 1 et 4, ainsi que la paire de personnes 2 et 4, peuvent être de mauvaise humeur.

Exemple d'entrée 2

3 3
1 2 3
3 1 2
1 2 3

Exemple de sortie 2

0

Exemple d'entrée 3

10 10
4 10 7 2 8 3 9 1 6 5
3 6 2 9 1 8 10 7 4 5
9 3 4 5 7 10 1 8 2 6
7 3 1 8 4 9 5 6 2 10
5 2 1 4 10 7 9 8 3 6
5 8 1 6 9 3 2 4 7 10
8 10 3 4 5 7 2 9 6 1
3 10 2 7 8 5 1 4 9 6
10 6 1 5 4 2 3 8 9 7
4 5 9 1 8 2 7 6 3 10

Exemple de sortie 3

6


Sur un plan bidimensionnel, Takahashi est initialement au point (0, 0), et sa santé initiale est H.  M objets pour récupérer de la santé sont placés sur le plan ; le i-ème d'entre eux est placé en (x_i, y_i).
Takahashi effectuera N mouvements.  Le i-ème mouvement est le suivant.

-
Soit (x, y) ses coordonnées actuelles. Il consomme 1 de santé pour se déplacer au point suivant, selon S_i, le i-ème caractère de S :

- (x+1, y) si S_i est R ;
- (x-1, y) si S_i est L ;
- (x, y+1) si S_i est U ;
- (x, y-1) si S_i est D.

-
Si la santé de Takahashi devient négative, il s'effondre et cesse de bouger.  Sinon, si un objet est placé au point où il s'est déplacé et que sa santé est strictement inférieure à K, alors il consomme l'objet pour faire sa santé K.

Déterminez si Takahashi peut terminer les N mouvements sans s'évanouir.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
N M H K
S
x_1 y_1
\vdots
x_M y_M

Sortie

Affichez Yes s'il peut accomplir les N mouvements sans s'évanouir ; affichez No sinon.

Contraintes

- 1\leq N, M, H, K\leq 2\times 10^5
- S est une chaîne de longueur N composée de R, L, U et D.
- |x_i|, |y_i| \leq 2\times 10^5
- (x_i, y_i) sont distincts par paires.
- Toutes les valeurs de l'entrée sont des entiers, sauf pour S.

Exemple d'entrée 1

4 2 3 1
RUDL
-1 -1
1 0

Exemple de sortie 1

Yes

Initialement, la santé de Takahashi est de 3.  Nous décrivons les mouvements ci-dessous.

-
1er mouvement : S_i est R, donc il se déplace au point (1, 0).  Sa santé réduit à 2.  Bien qu'un objet soit placé au point (1, 0), il ne le consomme pas car sa santé n'est pas inférieure à K=1.

-
2ème mouvement : S_i est U, donc il se déplace au point (1, 1).  Sa santé réduit à 1.

-
3ème mouvement : S_i est D, donc il se déplace au point (1, 0).  Sa santé réduit à 0. Un objet est placé au point (1, 0), et sa santé est inférieure à K=1, donc il consomme l'objet pour faire sa santé 1.

-
4ème mouvement : S_i est L, donc il se déplace au point (0, 0).  Sa santé réduit à 0.

Ainsi, il peut faire les 4 mouvements sans s'effondrer, donc Yes doit être affiché.  Notez que la santé peut atteindre 0.

Exemple d'entrée 2

5 2 1 5
LDRLD
0 0
-1 -1

Exemple de sortie 2

No

Initialement, la santé de Takahashi est de 1.  Nous décrivons les mouvements ci-dessous.

-
1er mouvement : S_i est L, donc il se déplace au point (-1, 0).  Sa santé réduit à 0.

-
2ème mouvement : S_i est D, donc il se déplace au point (-1, -1).  Sa santé réduit à -1.  Maintenant que la santé est -1, il s'effondre et cesse de bouger.

Ainsi, il sera assommé, donc Non doit être affiché.
Notez que bien qu'il y ait un objet à son point de départ (0, 0), il ne le consomme pas avant le 1er mouvement, car les objets ne sont consommés qu'après un mouvement.

Sur un plan bidimensionnel, Takahashi est initialement au point (0, 0), et sa santé initiale est H. M objets pour récupérer de la santé sont placés sur le plan ; le i-ème d'entre eux est placé en (x_i, y_i).
Takahashi effectuera N mouvements. Le i-ème mouvement est le suivant.

-
Soit (x, y) ses coordonnées actuelles. Il consomme 1 de santé pour se déplacer au point suivant, selon S_i, le i-ème caractère de S :

- (x+1, y) si S_i est R ;
- (x-1, y) si S_i est L ;
- (x, y+1) si S_i est U ;
- (x, y-1) si S_i est D.

-
Si la santé de Takahashi devient négative, il s'effondre et cesse de bouger. Sinon, si un objet est placé au point où il s'est déplacé et que sa santé est strictement inférieure à K, alors il consomme l'objet pour faire sa santé K.

Déterminez si Takahashi peut terminer les N mouvements sans s'évanouir.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
N M H K
S
x_1 y_1
\vdots
x_M y_M

Sortie

Affichez Yes s'il peut accomplir les N mouvements sans s'évanouir ; imprimez No sinon.

Contraintes

- 1\leq N, M, H, K\leq 2\times 10^5
- S est une chaîne de longueur N composée de R, L, U et D.
- |x_i|, |y_i| \leq 2\times 10^5
- (x_i, y_i) sont distincts par paires.
- Toutes les valeurs de l'entrée sont des entiers, sauf pour S.

Exemple d'entrée 1

4 2 3 1
RUDL
-1 -1
1 0

Exemple de sortie 1

Yes

Initialement, la santé de Takahashi est de 3. Nous décrivons les mouvements ci-dessous.

-
1er mouvement : S_i est R, donc il se déplace au point (1, 0). Sa santé réduit à 2. Bien qu'un objet soit placé au point (1, 0), il ne le consomme pas car sa santé n'est pas inférieure à K=1.

-
2ème mouvement : S_i est U, donc il se déplace au point (1, 1). Sa santé réduit à 1.

-
3ème mouvement : S_i est D, donc il se déplace au point (1, 0). Sa santé réduit à 0. Un objet est placé au point (1, 0), et sa santé est inférieure à K=1, donc il consomme l'objet pour faire sa santé 1.

-
4ème mouvement : S_i est L, donc il se déplace au point (0, 0). Sa santé réduit à 0.

Ainsi, il peut faire les 4 mouvements sans s'effondrer, donc Yes doit être imprimé. Notez que la santé peut atteindre 0.

Exemple d'entrée 2

5 2 1 5
LDRLD
0 0
-1 -1

Exemple de sortie 2

No

Initialement, la santé de Takahashi est de 1. Nous décrivons les mouvements ci-dessous.

-
1er mouvement : S_i est L, donc il se déplace au point (-1, 0). Sa santé réduit à 0.

-
2ème mouvement : S_i est D, donc il se déplace au point (-1, -1). Sa santé réduit à -1. Maintenant que la santé est -1, il s'effondre et cesse de bouger.

Ainsi, il sera assommé, donc Non doit être imprimé.
Notez que bien qu'il y ait un objet à son point de départ (0, 0), il ne le consomme pas avant le 1er mouvement, car les objets ne sont consommés qu'après un mouvement.

Sur un plan bidimensionnel, Takahashi est initialement au point (0, 0), et sa santé initiale est H. M objets pour récupérer de la santé sont placés sur le plan ; le i-ème d'entre eux est placé à (x_i,y_i).
Takahashi va faire N déplacements. Le i-ème déplacement est le suivant.

-
Soit (x,y) ses coordonnées actuelles. Il consomme une santé de 1 pour se déplacer jusqu'au point suivant, en fonction de S_i, le i-ème caractère de S :

- (x+1,y) si S_i est R ;
- (x-1,y) si S_i est L ;
- (x,y+1) si S_i est U ;
- (x,y-1) si S_i est D.

-
Si la santé de Takahashi est devenue négative, il s'effondre et arrête de bouger. Sinon, si un objet est placé au point où il s'est déplacé et que sa santé est strictement inférieure à K, alors il consomme l'objet à cet endroit pour que sa santé soit à K.

Déterminez si Takahashi peut effectuer les N mouvements sans être étourdi.

Entrée

L'entrée est donnée à partir de l'entrée standard au format suivant :
N M H K
S
x_1 y_1
\vdots
x_M y_M

Sortie

Afficher Oui s'il peut effectuer les N mouvements sans être étourdi ; afficher Non sinon.

Contraintes

- 1\leq N,M,H,K\leq 2\times 10^5
- S est une chaîne de longueur N composée de R, L, U et D.
- |x_i|,|y_i| \leq 2\times 10^5
- (x_i, y_i) sont deux à deux distincts.
- Toutes les valeurs de l'entrée sont des entiers, à l'exception de S.

Exemple d'entrée 1

4 2 3 1
RUDL
-1 -1
1 0

Exemple de sortie 1

Yes

Au départ, la santé de Takahashi est de 3. Nous décrivons les mouvements ci-dessous.

-
1er mouvement : S_i est R, il se déplace donc vers le point (1,0). Sa santé est réduite à 2. Bien qu'un objet soit placé au point (1,0), il ne le consomme pas car sa santé n'est pas inférieure à K=1.

-
2e mouvement : S_i est U, il se déplace donc vers le point (1,1). Sa santé est réduite à 1.

-
3e mouvement : S_i est D, il se déplace donc vers le point (1,0). Sa santé tombe à 0. Un objet est placé au point (1,0), et sa santé est inférieure à K=1, il consomme donc l'objet pour ramener sa santé à 1.

-
4ème déplacement : S_i est L, il se déplace donc au point (0,0). Sa santé tombe à 0.

Ainsi, il peut faire les 4 déplacements sans s'effondrer, donc Oui devrait être imprimé. Notez que la santé peut atteindre 0.

Exemple d'entrée 2

5 2 1 5
LDRLD
0 0
-1 -1

Exemple de sortie 2

No

Au départ, la santé de Takahashi est de 1. Nous décrivons les déplacements ci-dessous.

-
1er déplacement : S_i est L, il se déplace donc au point (-1,0). Sa santé tombe à 0.

-
2ème déplacement : S_i est D, il se déplace donc au point (-1,-1). Sa santé tombe à -1. Maintenant que sa santé est à -1, il s'effondre et arrête de bouger.

Il sera donc étourdi, donc Non devrait être affiché.
Notez que bien qu'il y ait un objet à son point initial (0,0), il ne le consomme pas avant le 1er déplacement, car les objets ne sont consommés qu'après un déplacement.


Votre ordinateur est équipé d'un clavier avec trois touches : la touche 'a', la touche Majuscule, et la touche Verr. Maj.  La touche Verr. Maj. dispose d'un voyant lumineux.
Initialement, le voyant de la touche Verr. Maj. est éteint, et l'écran affiche une chaîne vide.
Vous pouvez effectuer les trois actions suivantes autant de fois que vous le souhaitez, dans n'importe quel ordre :

- Passer X millisecondes à appuyer uniquement sur la touche 'a'. Si le voyant de la touche Verr. Maj. est éteint, a est ajouté à la chaîne sur l'écran ; s'il est allumé, A est ajouté.
- Passer Y millisecondes à appuyer simultanément sur la touche 'a' et la touche Majuscule. Si le voyant de la touche Verr. Maj. est éteint, A est ajouté à la chaîne sur l'écran ; s'il est allumé, a est ajouté.
- Passer Z millisecondes à appuyer sur la touche Verr. Maj. Si le voyant de la touche Verr. Maj. est éteint, il s'allume ; s'il est allumé, il s'éteint.

Étant donné une chaîne S composée de A et a, déterminez combien de millisecondes au minimum vous devez passer pour faire en sorte que la chaîne affichée sur l'écran soit égale à S.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
X Y Z
S

Sortie

Affichez la réponse.

Contraintes

- 1 \leq X,Y,Z \leq 10^9
- X, Y, et Z sont des entiers.
- 1 \leq |S| \leq 3 \times 10^5
- S est une chaîne composée de A et a.

Exemple d'entrée 1

1 3 3
AAaA

Exemple de sortie 1

9

La séquence d'actions suivante rend la chaîne à l'écran égale à AAaA en 9 millisecondes, ce qui est le plus rapide possible.

- Passer Z(=3) millisecondes à appuyer sur la touche Verr. Maj. Le voyant de la touche Verr. Maj. s'allume.
- Passer X(=1) millisecondes à appuyer sur la touche 'a'. A est ajouté à la chaîne sur l'écran.
- Passer X(=1) millisecondes à appuyer sur la touche 'a'. A est ajouté à la chaîne sur l'écran.
- Passer Y(=3) millisecondes à appuyer simultanément sur la touche Majuscule et la touche 'a'. a est ajouté à la chaîne sur l'écran.
- Passer X(=1) millisecondes à appuyer sur la touche 'a'. A est ajouté à la chaîne sur l'écran.

Exemple d'entrée 2

1 1 100
aAaAaA

Exemple de sortie 2

6

Exemple d'entrée 3

1 2 4
aaAaAaaAAAAaAaaAaAAaaaAAAAA

Exemple de sortie 3

40

Votre ordinateur est doté d'un clavier à trois touches : la touche 'a', la touche Maj et la touche Verr. Maj La touche Verr. Maj est dotée d'un voyant.
Au départ, le voyant de la touche Verr. Maj est éteint et l'écran affiche une chaîne vide.
Vous pouvez effectuer les trois actions suivantes autant de fois que vous le souhaitez et dans n'importe quel ordre :

- Passez X millisecondes à appuyer uniquement sur la touche « a ». Si le voyant de la touche Verr. Maj est éteint, un a est ajouté à la chaîne à l'écran ; s'il est allumé, un A l'est.
- Passez Y millisecondes à appuyer simultanément sur la touche « a » et la touche Maj. Si le voyant de la touche Verr. Maj est éteint, un A est ajouté à la chaîne à l'écran ; s'il est allumé, un a l'est.
- Passez Z millisecondes à appuyer sur la touche Verr. Maj Si le voyant de la touche Verr. Maj est éteint, elle s'allume ; s'il est allumé, elle s'éteint.

Étant donné une chaîne S composée de A et a, déterminez au moins combien de millisecondes vous devez passer pour que la chaîne affichée à l'écran soit égale à S.

Entrée

L'entrée est donnée à partir de l'entrée standard au format suivant :
X Y Z
S

Sortie

Imprimez la réponse.

Contraintes

- 1 \leq X,Y,Z \leq 10^9
- X, Y et Z sont des entiers.
- 1 \leq |S| \leq 3 \times 10^5
- S est une chaîne composée de A et a.

Exemple d'entrée 1

1 3 3
AAaA

Exemple de sortie 1

9

La séquence d'actions suivante rend la chaîne à l'écran égale à AAaA en 9 millisecondes, ce qui est le temps le plus court possible.

- Passez Z(=3) millisecondes à appuyer sur la touche Verr. Maj Le voyant de la touche Verr. Maj s'allume.
- Passez X(=1) millisecondes à appuyer sur la touche « a ». A est ajouté à la chaîne à l'écran.
- Passez X(=1) millisecondes à appuyer sur la touche « a ». A est ajouté à la chaîne à l'écran.
- Passez Y(=3) millisecondes à appuyer simultanément sur la touche Shift et la touche « a ». a est ajouté à la chaîne à l'écran.
- Passez X(=1) millisecondes à appuyer sur la touche « a ». A est ajouté à la chaîne à l'écran.

Exemple d'entrée 2

1 1 100
aAaAaA

Exemple de sortie 2

6

Exemple d'entrée 3

1 2 4
aaAaAaaAAAAaAaaAaaaAAAAAAA

Exemple de sortie 3

40

Votre ordinateur est équipé d'un clavier avec trois touches : la touche 'a', la touche Majuscule, et la touche Verr. Maj. La touche Verr. Maj. dispose d'un voyant lumineux.
Initialement, le voyant de la touche Verr. Maj. est éteint, et l'écran affiche une chaîne vide.
Vous pouvez effectuer les trois actions suivantes autant de fois que vous le souhaitez, dans n'importe quel ordre :

- Dépenser X millisecondes pour appuyer uniquement sur la touche 'a'. Si le voyant de la touche Verr. Maj. est éteint, a est ajouté à la chaîne sur l'écran ; s'il est allumé, A est ajouté.
- Dépenser Y millisecondes pour appuyer simultanément sur la touche 'a' et la touche Majuscule. Si le voyant de la touche Verr. Maj. est éteint, A est ajouté à la chaîne sur l'écran ; s'il est allumé, a est ajouté.
- Dépenser Z millisecondes pour appuyer sur la touche Verr. Maj. Si le voyant de la touche Verr. Maj. est éteint, il s'allume ; s'il est allumé, il s'éteint.

Étant donné une chaîne S composée de A et a, déterminez combien de millisecondes au minimum vous devez passer pour faire en sorte que la chaîne affichée sur l'écran soit égale à S.

Entrée

L'entrée est donnée depuis l'entrée standard dans le format suivant :
X Y Z
S

Sortie

Affichez la réponse.

Contraintes

- 1 \leq X,Y,Z \leq 10^9
- X, Y, et Z sont des entiers.
- 1 \leq |S| \leq 3 \times 10^5
- S est une chaîne composée de A et a.

Exemple d'entrée 1

1 3 3
AAaA

Exemple de sortie 1

9

La séquence d'actions suivante rend la chaîne à l'écran égale à AAaA en 9 millisecondes, ce qui est le plus court possible.

- Dépenser Z(=3) millisecondes pour appuyer sur la touche Verr. Maj. Le voyant de la touche Verr. Maj. s'allume.
- Dépenser X(=1) millisecondes pour appuyer sur la touche 'a'. A est ajouté à la chaîne sur l'écran.
- Dépenser X(=1) millisecondes pour appuyer sur la touche 'a'. A est ajouté à la chaîne sur l'écran.
- Dépenser Y(=3) millisecondes pour appuyer simultanément sur la touche Majuscule et la touche 'a'. a est ajouté à la chaîne sur l'écran.
- Dépenser X(=1) millisecondes pour appuyer sur la touche 'a'. A est ajouté à la chaîne sur l'écran.

Exemple d'entrée 2

1 1 100
aAaAaA

Exemple de sortie 2

6

Exemple d'entrée 3

1 2 4
aaAaAaaAAAAaAaaAaAAaaaAAAAA

Exemple de sortie 3

40