[PYTHON] Quand j'ai essayé le concours AtCoder pour débutants, c'était un résultat terrible, alors je regarde en arrière

Lorsque j'ai participé au concours AtCoder pour débutants, qui se tient régulièrement, j'ai trébuché dans un endroit autre que le pur manque de capacité et j'ai fait beaucoup de gaspillage, donc pour approfondir mon prochain apprentissage Notez ce que vous pouvez faire.

Participation à «ABC 170» https://atcoder.jp/contests/abc170

L'entrée est "entrée standard" au lieu de l'argument de ligne de commande

Oui.

Un problème, j'écrivais du code pour obtenir l'entrée de sys.args. Naturellement, c'est de la mousse, mais je l'ai fait fondre pendant 20 minutes avec la puissance de ma croyance. C'était le moment le plus insignifiant.

La valeur d'entrée est capturée par ʻinput`.

#erreur
import sys

args = sys.argv

# do something ...
#Bonne réponse.Ce qui suit est lorsque l'entrée est de deux valeurs entières
x, y = [ int(i) for i input().split() ]

# do something ...

Si vous êtes bloqué avec WA (mauvaise réponse) ou RE (erreur d'exécution), essayez d'écrire un cas de test simple

C'est un peu un obstacle de générer tous les cas qui peuvent bien prendre en compte toutes les conditions (probablement pas obstrués si cela peut être pris en compte), donc j'aimerais au moins écrire le code pour générer des données de test qui peuvent être exécutées localement. Je vais.

Heureusement, la condition de la valeur d'entrée est spécifiée, vous pouvez donc écrire un peu de code pour générer immédiatement les données de test. Je pense que si vous le transmettez au code de réponse via le tube, la vérification sera un peu meilleure.

Si vous laissez strerr cracher les données générées du côté du générateur de cas de test, cela n'interférera pas avec l'entrée du code de réponse lors de la vérification de la valeur d'entrée, donc pour le moment, j'essaierai cela lorsque le WA sera bloqué la prochaine fois.

Rétrospective du problème qui s'est terminé en tant que WA

Pendant le concours, les détails de la cause de l'échec du test ne seront pas donnés, donc s'il y a un problème qui s'est terminé par essais et erreurs comme WA, je reviendrai dessus.

Quand je suis accro, je ne sais pas vraiment ce qui ne va pas, alors je m'inquiète si je ne vérifie pas si cela est dû à un manque de considération lié à la logique ou aux algorithmes tels que les conditions aux limites, ou simplement à mes propres erreurs de négligence. Je ne peux pas dormir.

Les cas de test des questions précédentes sont affichés dans les «Liens pratiques» ci-dessous. Il est possible de supprimer des données à partir de là et de vérifier le cas qui était réellement WA.

https://atcoder.jp/posts/261

Testcases d'AtCoder Ceci est un cas de test des questions passées d'AtCoder. Il peut être utilisé pour l'examen, etc. Il ne supporte pas les concours très anciens.

En observant chaque cas de test, vous pouvez voir la façon de penser comme les conditions aux limites, ce qui peut être utile pour le travail de développement de cas de test de projets réels.

Je voudrais également confirmer les réponses et les commentaires officiels des autres participants. Je voudrais revenir sur les problèmes avec lesquels j'ai lutté parce que je ne voyais pas la solution.

de la prochaine fois

À ce stade, nous ne prévoyons pas de donner suffisamment de priorité pour nous engager dans Procon.

Cependant, je continuerai à participer à ABC. Je ne regarderai en arrière que le soin du problème qui s'est terminé au milieu de la réponse et qui viendra la prochaine fois. Si vous le répétez, le jour viendra où vous pourrez faire ce travail rétrospectif avec un problème difficile dans la seconde moitié. peut être.

Recommended Posts

Quand j'ai essayé le concours AtCoder pour débutants, c'était un résultat terrible, alors je regarde en arrière
Dans IPython, quand j'ai essayé de voir la valeur, c'était un générateur, donc je l'ai inventé quand j'étais frustré.
AtCoder Beginner Contest 177 Problème C J'ai essayé de découvrir pourquoi c'était faux
Lorsque j'ai essayé d'exécuter Python, j'ai été ignoré dans le Microsoft Store
[Entraînement compétitif] J'ai essayé AtCoder Beginner Contest 171
Une histoire qui était pratique lorsque j'ai essayé d'utiliser le module d'adresse IP python
J'ai essayé de faire sonner le téléphone lorsqu'il a été publié sur le poste IoT
Les débutants en Python ont créé un chat BOT alors j'ai essayé de résumer comment le faire
Un débutant a essayé de colorier un dessin au trait avec un chainer. J'ai pu le faire.
Cela fait un an que j'ai rejoint le département de développement d'applications Web, alors je regarde en arrière
[Pratique compétitive] J'ai essayé le concours AtCoder Beginner Contest 175 (A ~ C)
Quand j'ai essayé d'installer PIL et matplotlib dans un environnement virtualenv, j'en étais accro.
J'ai trébuché lorsque j'ai essayé d'installer Basemap, donc un mémorandum
Depuis qu'il y avait Doppelgenger, j'ai essayé de le distinguer avec l'intelligence artificielle (rires) (Partie 1)
Quand j'ai essayé de gratter en utilisant des requêtes en python, j'étais accro à SSLError, donc un mémo de contournement
Un mémorandum lors de l'acquisition automatique avec du sélénium
Les débutants en Python ont essayé d'utiliser Bottle et cela a fonctionné facilement de manière inattendue
Je suis tombé sur un filtre d'image avec un nom clairement japonais appelé filtre Kuwahara, et quand je l'ai essayé, c'était incroyable, alors je vais le présenter.
Est-ce devenu tellement plus facile quand il est devenu centos8? 2 ~ J'ai essayé d'ajouter PHP ~
J'ai essayé de vérifier le résultat du test A / B avec le test du chi carré
Quand je retourne en utilisant le chainer, ça va un peu
L'arbre.plot_tree de scikit-learn était très simple et pratique, j'ai donc essayé de résumer comment l'utiliser facilement.
Quand j'ai fait un treemap (graphique de zone) avec python, c'était subtil, donc quand j'ai utilisé fleurir, c'était plutôt bien.
J'ai essayé d'utiliser pipenv, alors prenez note
Je voulais connaître le nombre de lignes dans plusieurs fichiers et j'ai essayé de l'obtenir avec une commande
J'ai vérifié si l'API COTOHA pouvait comprendre Mansai, et c'était raisonnable.
Lorsque j'ai essayé de changer le mot de passe root avec ansible, je ne pouvais pas y accéder.
Quand j'ai essayé de créer un VPC avec AWS CDK mais que je n'ai pas pu le faire
D'une manière ou d'une autre, le code que j'ai écrit a fonctionné et j'ai été impressionné, alors je vais le poster
J'ai essayé de vérifier le théorème du Big Bang [Est-il sur le point de revenir?]
Je n'ai pas compris le redimensionnement de TensorFlow, alors je l'ai résumé visuellement.
Notez que j'étais accro à la configuration de TensowFlow
En tant que débutant, j'ai cherché dans le répertoire / proc
J'ai essayé de gratter YouTube, mais je peux utiliser l'API, alors ne le faites pas.
Un débutant en python a tenté de faire un stage dans une entreprise informatique [Jour 3 vers les nuages ...]
Quand j'ai essayé de faire une communication socket avec Raspberry Pi, le protocole était différent
Lorsque j'ai vérifié la requête générée par Django, elle a été émise en grand nombre
Lorsque j'explore la webapi qui apparaît pendant le rendu, elle a été lue avec CORS
C'était une vie que je voulais faire de l'OCR sur AWS Lambda pour localiser les personnages.
Ce que j'ai fait quand j'étais en colère de le mettre avec l'option enable-shared