Résolvez AtCoder Beginner Contest 153 avec Java

AtCoder Beginner Contest 153 Merci pour votre travail acharné! Page officielle

Le code que j'ai écrit cette fois est ici Le résultat était AC de A à D et TLE de F.

Je vais vous expliquer brièvement ci-dessous.

Problème A

Le problème que HP attaque les monstres H avec une puissance d'attaque A et demande combien de fois ils peuvent être vaincus. Cela devrait être correct si vous faites attention au traitement lorsque le H / A est simplement divisible.

Problème B

Le problème de l'addition des nombres (puissance d'attaque du coup spécial) et de se demander s'il atteindra ou non les PV de l'adversaire. Vous devriez pouvoir faire un simple ajout.

Problème C

Il y a N monstres, et vous pouvez utiliser des coups spéciaux K fois. Vous pouvez tuer des monstres instantanément avec ce mouvement spécial, donc si on vous demande qui utiliser ce mouvement spécial, vous pouvez ajouter la force physique des ennemis restants.

Bien sûr, je veux utiliser les mouvements spéciaux du corps K par ordre décroissant de force physique, alors faisons de notre mieux pour l'exprimer avec du code.

Problème D

Lorsque vous attaquez une fois, le monstre devient H / 2 et se divise, et si vous en avez 1, vous pouvez le vaincre. Cela a été rendu relativement simple en ayant ** le nombre d'ennemis ** et ** la force physique des ennemis **.

Avec une seule opération Additionnez le nombre d'attaques par ** le nombre d'ennemis **

Ce n'est pas grave si vous répétez cette opération jusqu'à ce que votre force physique devienne 0.

Problème E

Je ne sais pas, pensant que cela semble être un problème standard de l'algorithme.

Problème F

C'était un TLE à 2 cas ... Ma façon de penser ① Triez les coordonnées par ordre croissant ② Convertissez le nombre d'attaques pouvant vaincre la force physique de l'ennemi En tant que prétraitement,

① Obtenez une coordonnée dans l'ordre croissant ② Obtenez combien de fois l'ennemi peut être vaincu à ce moment-là ③ À partir de là, obtenez des points pour la portée de la bombe ④ Attaquez les ennemis dans cette plage autant que vous êtes entré ②.

Je pense que ce sera AC si elle peut être mise en œuvre correctement, mais je pense que l'idée de base n'est pas fausse.


La note est 956 → 944.

J'ai pu aborder le problème D en 17 minutes et j'ai senti une croissance. Il semble que le taux n'augmentera pas d'ici à moins qu'il ne puisse être résolu après le problème E. ..

Nous passerons en revue les problèmes E et F cette fois! !! : cri:

Recommended Posts

Résolvez AtCoder Beginner Contest 151 avec Java
Résolvez AtCoder Beginner Contest 150 avec Java
Résolvez AtCoder Beginner Contest 153 avec Java
Résolvez AtCoder Beginner Contest 175 avec Java
Résolvez AtCoder Beginner Contest 160 avec Java
Résolvez AtCoder Beginner Contest 152 avec Java
Résolvez AtCoder Beginner Contest 156 avec Java
Concours AtCoder Débutant 168
AtCoder Beginner Contest 167 Problème C (Java)
Article sur la participation au concours AtCoder
AtCoder Débutant Contest 132 D Problème
java débutant 4
java débutant 3
java débutant
Concours de programmation AtCoder dwango B à résoudre en Ruby, Perl et Java
AtCoder ARC 081 C hash à résoudre en Ruby, Perl et Java
Essayez de résoudre Project Euler en Java
Partition en Java
Changements dans Java 11
Tri par hachage AtCoder ABC 111 C résolu en Ruby, Perl et Java
Janken à Java
Exercices pour les débutants Java
Taux circonférentiel à Java
FizzBuzz en Java
Exercice Java "Débutant"
AtCoder Beginner Contest 169 A, B, C avec rubis
[AtCoder Problem-ABC001] Observation du vent C-Do en Java [Code]
Comment résoudre les problèmes d'expression en Java
[Débutant] Installez l'outil de développement java dans l'environnement de développement cloud9.
L'histoire d'un super débutant participant pour la première fois au concours AtCoder (AtCoder Beginner Contest 140)
Implémentation de l'interpréteur par Java
Faites un blackjack avec Java
Application Janken en Java
Programmation par contraintes en Java
Mettez java8 dans centos7
NVL-ish guy en Java
"Hello World" en Java
Interface appelable en Java
Il est tard! Essayez d'implémenter la notification Android en Java (débutant)
Commentaires dans la source Java
Fonctions Azure en Java
Formater XML en Java
AtCoder Beginner Contest 170 A, B, C jusqu'au rubis
Simple htmlspecialchars en Java
Implémentation Boyer-Moore en Java
Hello World en Java
Utiliser OpenCV avec Java
Mémorandum WebApi avec Java
Détermination de type en Java
Exécuter des commandes en Java (ping)
Divers threads en java
Implémentation du tri de tas (en java)
API Zabbix en Java
Art ASCII à Java
Comparer des listes en Java
POST JSON en Java
Exprimer l'échec en Java
Essayez de résoudre un problème FizzBuzz restreint en Java
Créer JSON en Java
Manipulation de la date dans Java 8