#solution #automatic #problem #language #testing #submission #usaco

app usaco-cli

Unofficial USACO cli: Supports automatic solution testing and submission

3 unstable releases

new 0.2.1 Nov 15, 2024
0.2.0 Nov 15, 2024
0.1.0 Nov 11, 2024

#233 in Command line utilities

Download history 107/week @ 2024-11-07

107 downloads per month

GPL-3.0-or-later

78KB
2K SLoC

usaco-cli

GitHub Release GitHub Actions Workflow Status Crates.io Version GitHub License GitHub commit activity

A command line tool for USACO

Features:

  • Account information
  • View problem info from command line
  • Scaffold solution code
  • Automatically test solutions with sample input cases
  • Upload solution code to USACO and view results (coming soon)
  • View solution stats and find new problems to solve (coming soon)

Supported languages:

  • C++ 17
  • Python 3

Installation

Source

  1. Clone this repo
  2. cargo build --release

crates.io

  1. cargo install usaco-cli

Binaries

Prebuilt binaries for x86_64-unknown-linux-gnu are provided on the Releases page

Make a GH issue if you want more targets

Note that currently, the code only supports UNIX targets, but in the future, I may add Windows support.

Usage

$ usaco --help
USACO command-line interface: supports viewing problem info, automatically testing solutions, and uploading solutions to USACO grading servers.

Usage: usaco [OPTIONS] <COMMAND>

Commands:
  auth         Manage USACO account authentication
  problem      View problem info
  solution     Manage, test, and submit solutions
  preferences  Manage CLI preferences
  completion   Generate shell completion files
  ping         Test connection to USACO servers
  help         Print this message or the help of the given subcommand(s)

Options:
  -l, --log-level <LOG_LEVEL>
          Maximum logging level

  -h, --help
          Print help (see a summary with '-h')

  -V, --version
          Print version

Dependencies

~17–33MB
~508K SLoC