
L'idée principale de ce référentiel est de créer différents programmes avec différentes solutions pour améliorer nos connaissances avec différentes technologies et de nous forcer à en essayer de nouvelles.
Promenade de la promenade
Difficulté: facile (800)?
Problème:
Vous marchez à Parkway près de votre maison. La promenade a n + 1 bensh d'affilée numérotée de 1 à n + 1 de gauche à droite. La distance entre le banc I et I + 1 est des mètres AI.
Au départ, vous avez des moyens d'énergie. Pour marcher 1 mètre de distance, vous dépensez 1 unité de votre énergie. Vous ne pouvez pas marcher si vous n'avez pas d'énergie. En outre, vous pouvez restaurer votre énergie en s'asseyant sur des bancs (et c'est le seul moyen de restaurer l'énergie). Lorsque vous êtes assis, vous pouvez restaurer toute quantité entière d'énergie que vous souhaitez. Notez que la quantité de votre énergie peut dépasser m
Votre tâche consiste à trouver la quantité minimale d'énergie que vous devez restaurer (en s'asseyant sur Benshes) pour atteindre le banc n + 1 du banc 1 (et terminez votre promenade).
Vous devez une réponse T tests d'indépendance.
Saisir:
La première ligne de l'entrée contient un entier t (1 ≤ t ≤ 100) - le nombre de cas de test. Les tests t suivent.
La première ligne du test compte deux entiers n et m (1 ≤ n ≤ 100; 1 ≤ m ≤ 10 ^ 4).
La deuxième ligne du test compte n entières A1, A2,…, An (1 ≤ Ai ≤ 100), où Ai est la distance entre les benchas I et I + 1.
Sortir:
Pour chaque cas de test, imprimez un entier - la quantité minimale d'énergie que vous devez restaurer (en s'asseyant sur des benchas) pour atteindre le banc n + 1 du banc 1 (et terminez votre marche) dans le cas de test correspondant.
Input:
3
3 1
1 2 1
4 5
3 3 5 2
5 16
1 2 3 4 5
Output:
3
8
0
#NOTE: Dans le premier test de l'exemple, vous pouvez marcher jusqu'au banc 2, passer 1 unité d'énergie, la restauration 2 unités d'énergie sur le deuxième banc, marcher jusqu'au banc 3, dépensant 2 unités d'énergie, restaurer 1 unité d'énergie et aller au banc 4.
Dans le troisième test de l'exemple, vous avez de l'énergie angouch pour aller au banc 6 sans s'asseoir du tout.
Lien vers une solution possible
Où est l'évêque?
Difficulté: facile (800)?
CONSTRAINES:
Limite de temps par test: 1 seconde limite de mémoire par test: 256 mégaoctets
Problème:
Mihai a un échec 8 × 8 qui est numéroté de 1 à 8 de haut en bas et quelles colonnes sont numérotées de 1 à 8 de gauche à droite.
Mihai, vous avez placé exactement un évêque sur l'échecteur. L'évêque n'est pas placé sur les bords de la planche. (En d'autres termes, la ligne et la colonne de l'évêque sont comprises entre 2 et 7, inclusives.)
L'évêque attaque dans toutes les directions en diagonale, et il n'y a pas de limite à la distance que l'évêque peut attaquer. Notez que la cellule sur laquelle l'évêque est placée est également considérée comme attarée.
Mihai, vous avez marqué tous les carrés, les attaques de l'évêque, mais j'ai oublié où était l'évêque! Aider Mihai à trouver la position de l'évêque.

Saisir:
La première ligne de l'entrée contient un seul entier t (1 ≤ t ≤ 36) - le nombre de cas de test. La description des cas de test suit. Il y a une ligne vide à chaque cas de test.
Chaque cas de test se compose de 8 lignes, chacune contenant 8 caractères. Chaque personnage OFSE est soit «#» ou ».
Sortir:
Pour chaque cas de test, sortez deux entiers R et C (2 ≤ R, C ≤ 7) - la ligne et la colonne de l'évêque.
L'entrée est générée de telle manière qu'il y a toujours exactement un emplacement positif de l'évêque qui n'est pas au bord de la planche.
Input:
3
.....#..
#...#...
.#.#....
..#.....
.#.#....
#...#...
.....#..
......#.
#.#.....
.#......
#.#.....
...#....
....#...
.....#..
......#.
.......#
.#.....#
..#...#.
...#.#..
....#...
...#.#..
..#...#.
.#.....#
#.......
Output:
4 3
2 2
4 5
Lien vers une solution possible
Jeu de quête de Kana et Dragon
Difficulté: facile + (900)?
CONSTRAINES: Limite de temps par test: 1 seconde Limite de mémoire par test: 256 mégaoctets
Problème:
Kana n'était qu'une lycéenne ordinaire avant de talent scout la découverte. Ensuite, elle est devenue une idole. Mais différent du stéréotype, elle est également à GameHolic. Un jour, Kana se fait comprendre dans un nouveau jeu d'aventure appelé Dragon Quest. Dans ce jeu, sa quête est de battre un dragon.
Le dragon a initialement un point de vie de X. Lorsque le point de frappe de Son passe à 0 ou moins 0, il sera défini. Afin de vaincre le dragon, Kana peut lancer les deux types de sorts suivants.
- Absorption narquois ⚫-
Supposons que le point de vie actuel du dragon est H, après avoir lancé ce sort, son point de vie deviendra [H / 2] +10. Ici [h / 2] désigne H divisé par deux, arrondi.
-Déclairage de lumière ⚡-
Ce sort décrèdera le point de vie du dragon par 10. Supposons que le point de vie actuel du dragon est H, après le lancer de ce sort est abaissé à H - 10.
En raison de Summans, Kana ne peut ne pas ne plus que n sur les absorptions de vide et les coups de foudre M. Elle peut lancer les sorts dans n'importe quel ordre et n'a pas à punir tous les sorts. Kana n'est pas bonne en mathématiques, vous allez donc l'aider à savoir s'il est positif de vaincre le dragon.
Saisir:
La première ligne contient un seul entier T (1 ≤ t ≤ 1000) - le nombre de cas de test.
Les lignes T suivantes décrivent les cas de test. Pour chaque cas de test, la seule ligne contient trois entiers x, n, m (1 ≤ x ≤ 10 ^ 5, 0 ≤ n, m ≤ 30) - Le point de vie initial du dragon, le nombre maximal d'absorption de vide et les strikes de la foudre peut couler respectivement.
Sortir:
S'il est postible de vaincre le dragon, imprimez "oui" (sans citations). Sinon, imprimez "non" (sans citations).
Vous pouvez imprimer chaque lettre dans tous les cas (supérieur ou inférieur).
Exemple:
#NOTE: Une séquence de coulée possible du premier test est illustrée ci-dessous:
- Absorption des nœuds [100/2] +10 = 60.
-Déclairage de la lumière 60−10 = 50.
- Absorption des nœuds [50/2] +10 = 35.
- Absorption des nœuds [35/2] +10 = 27.
-Déclairage de la lumière 27-10 = 17.
-Déclairage de la lumière 17-10 = 7.
-Déclairage 7−10 = −3.
Input:
7
100 3 4
189 3 4
64 2 3
63 2 3
30 27 7
10 9 1
69117 21 2
Output:
YES
NO
NO
YES
YES
YES
YES
Lien vers une solution possible
Pizzaforces
Difficulté: facile + (900)
Limite de temps par test: 2 secondes
Limite de mémoire par test: 256 mégaoctets
Les pizzaforces sont la pizzeria préférée de Petya. Les pizzaforces fabriquent et vendent des pizzas de trois tailles: les petites pizzas se composent de 6 tranches, les moyennes composées de 8 tranches et de grandes pizzas se composent de 10 tranches chacune. Les cuisiner prend respectivement 15, 20 et 25 minutes.
L'anniversaire de Petya est aujourd'hui, et le nn de ses amis viendra, j'ai donc décidé de passer une commande de sa pizzeria préférée. Petya veut commander si Muan Pizza que chacun de ses amis obtient au moins une tranche de pizza. Le temps de cuisson de la commande est le temps de cuisson total de toutes les pizzas dans l'ordre.
Votre tâche consiste à déterminer le nombre minimum de minutes nécessaires pour fabriquer des pizzas contenant au moins des tranches NN au total. Par exemple:
Si 12 amis viennent à l'anniversaire de Petya, vous devez commander des pizzas en contrant au moins 12 tranches au total. J'ai commandé deux petites pizzas, contenant exactement 12. Slíces, et le temps de les cuire est de 30 minutes;
Si 15 amis mangent pour l'anniversaire de Petya, vous devez commander des pizzas contenant au moins 15 smlices au total. J'ai commandé une petite pizza et une grande pizza, contenant 16 tranches, et le temps de cuire est 40 minutes;
Si 300 amis viennent à l'anniversaire de Petya, vous devez commander des pizzas qui contribuent au moins 300 tranches au total. Il peut commander 15 petites pizzas, 10 pizzas moyennes et 13 grandes pizzas, au total, ils comptent 15⋅6 + 10⋅8 + 13⋅10 = 300 tranche, et le temps total pour les cuire est de 15⋅15 + 10⋅20 + 13⋅25 = 750 minutes;
Si un seul ami vient à l'anniversaire de Petya, j'ai commandé une petite pizza, et le temps de le faire cuire est de 15 minutes.
Saisir
La première ligne contient un seul entier TT (1≤t≤1041≤t≤104) - le nombre de cas de test.
Chaque test se compose d'une seule ligne qui contient un seul entier NN (1≤n 10161≤ n≤1016) - le nombre d'amis de Petya.
Sortie pour chaque test, imprimez un entier - le nombre minimum de minutes nécessaires pour cuire des pizzas contenant au moins N tranche au total.
input
6
12
15
300
1
9
9999999999999993
output
30
40
750
15
25000000000000000
15
Les portes
Difficulté: facile (800)
Contraintes
Limite de temps par test: 1 seconde Limite de mémoire par test: 256 mégaoctets
Problème
Trois ans ont réussi et rien n'a changé. Il pleut toujours à Londres et M. Black doit fermer toutes les portes de son domicile pour ne pas être inondé. Onze, cependant, M. Black est devenu si nerveux qu'il a ouvert une porte, l'autre, l'une de plus et ainsi de suite jusqu'à ce qu'il ouvre toutes les portes de sa maison.
Il y a exactement deux sorties de la maison de M. Black, les nommons-les gauche et droite. Il y a des portes sévères dans chacun des succès, donc chaque porte de la maison de M. Black est située Eithher à gauche ou à la sortie droite. Vous savez où se trouve chaque porte. Initialement, toutes les portes sont fermées. M. Black peut quitter la maison si et seulement si toutes les portes dans au moins une des sorties sont ouvertes. On vous donne une séquence dans laquelle M. Black a ouvert les portes, s'il vous plaît l'indice le plus petit k tel que M. Black peut quitter la maison après avoir ouvert les premières portes.
Nous devons noter que M. Black a ouvert chaque porte au plus une fois, et à la fin, toutes les portes sont devenues ouvertes.
Saisir
La première ligne compte entier n (2 ≤ n ≤ 2000) - le nombre de Dours.
La ligne suivante compte N Ingers: la séquence dans laquelle M. Black a ouvert les portes. Le i-tth des intervenants est égal à 0 au cas où la première porte ouverte est située dans la sortie gauche, et elle est égale à 1 au cas où elle se trouvera dans la sortie droite.
Il est garanti qu'il y a au moins une porte située dans la sortie gauche et qu'il y a au moins une porte située à la sortie droite.
Sortir
Imprimez le plus petit entier k tel qu'après que M. Black ait ouvert les premières portes, il était à la maison.
Exemple
#NOTE Dans le premier exemple, les deux premières portes proviennent de la sortie gauche, donc lorsque M. Black a ouvert uniquement les deux, il y avait deux autres portes fermées dans la sortie gauche et une porte fermée à la sortie droite. Donc, M. Black n'était pas uble pour quitter à ce moment-là.
Lorsqu'il a opté la troisième porte, toutes les portes de la sortie droite sont devenues ouvertes, donc M. Black a pu sortir de la maison.
Dans le deuxième exemple, lorsque les deux premières portes ont été ouvertes, il y avait une porte fermée ouverte dans chacune de la sortie.
Avec trois portes ouvertes, M. Black devait utiliser la sortie gauche.
Input
5
0 0 1 0 0
Output
3
----------------------
Input
4
1 0 0 1
Output
3