J'ai pu créer un environnement stimulant pour AtCoder au point où j'étais satisfait. Je ne sais pas si cela sera utile à tout le monde, mais je l'ai compilé dans un article pour partager des informations.
«J'ai senti qu'il valait mieux apprendre Java que le climat de l'entreprise.
Je l'ai construit sur Windows 10. J'ai pu le construire avec WSL, mais je pense que peu importe lequel c'est parce qu'il est en bon état. Après construction, il sera dans l'état suivant.
AtCoder peut utiliser OpenJDK 1.7.0 ou OpenJDK 1.8.0. J'ai Java SE 8 installé dans mon environnement local.
réduction. Je vais lier mon article. Utilisation de Visual Studio Code sur un PC hors ligne Je pense que le pack d'extension Java est tout ce dont vous avez besoin pour l'extension. Si vous utilisez Eclipse ou un autre éditeur, vous n'avez pas besoin de l'inclure.
La page atcoder-cli décrit en douceur l'introduction de ces quatre points, alors installez-la en la suivant. Je vais.
Ce qui suit est simplifié en introduisant atcoder-cli / online-juge-tools ci-dessus.
--Créer un dossier en fonction du problème (dossiers contestID / A à F) --Arrangement des fichiers modèles
Quelque chose manque. Oui, c'est une soumission.
Je ne sais pas si la méthode de paramétrage est insuffisante ou si elle n'est pas prise en charge en raison du manque de fonctions actuellement, mais quand je soumets le source Java depuis atcoder-cli, je me fâche avec "Veuillez sélectionner la version!".
Avec les outils de juge en ligne, vous pouvez spécifier la langue afin de pouvoir l'exécuter, mais ici, vous devez entrer l'URL à chaque fois.
... Le navigateur est plus simple.
J'ai donc fait un lot pour le couvrir.
J'ai emprunté l'opération de soumission ʻacc s de atcoder-cli et l'ai créée avec ʻacc s
(sans espaces).
(WSL peut le gérer avec alias et bash.)
accs.bat
@echo off
setlocal enabledelayedexpansion
rem ---Séquence principale
setlocal
Obtenir la position d'exécution de la commande rem
FOR /F %%i in ('cd') do set pwd=%%i
Passer à la position d'exécution de la commande rem
cd %pwd%
rem Obtenir l'ID de concours et l'ID de tâche à partir du chemin local
exemple de rem) C:\AtCoder\abc123\a
set contest_id=%pwd:~-8,6%
set task_id=%pwd:~-1%
rem Soumettre l'appel avec l'ID de concours et l'ID de tâche comme paramètres
call :Submit %contest_id% %task_id%
endlocal
exit /b
rem ---Séquence de soumission
:Submit
rem online-judge-Soumettre en précisant la langue avec les outils
Créer une URL à partir du paramètre rem
oj submit -l Java8 --no-guess https://atcoder.jp/contests/%1/tasks/%1_%2 Main.java
exit /b
Je peux le soumettre en toute sécurité, donc je peux le faire localement. Après avoir confirmé le problème avec le navigateur, vous pouvez maintenant le soumettre avec VS Code. Une fois que vous avez créé votre environnement, vous ne pouvez pas revenir à ce que vous codiez sur la page de test de code de votre navigateur.
C'est un slapstick, mais la raison pour laquelle j'ai choisi Windows lors du choix de Windows / WSL
Étant donné que les fichiers de cas de test des problèmes antérieurs ont des noms différents, ils sont fréquemment renommés.
Windows est utilisé pour la commodité de la commande renommer.
Exemple 1) Je veux changer 01.txt, 02.txt, ... 20.txt dans le dossier in en 01.in, 02.in, ... 20.in
Windows: ren *.txt *.in
Linux: rename txt in *.txt
Exemple 2) Je veux changer 01, 02, ... 20 dans le dossier in en 01.in, 02.in, ... 20.in
Windows: ren * *.in
Linux: rename 's/$/.in/' *
Je travaille sous Windows car les commandes Windows me sont plus intuitives.