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

app usaco-cli

Unofficial USACO cli: Supports automatic solution testing and submission

4 releases (2 breaking)

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

#179 in Command line utilities

Download history 101/week @ 2024-11-06 228/week @ 2024-11-13 148/week @ 2024-11-20

477 downloads per month

GPL-3.0-or-later

83KB
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, aarch64-apple-darwin, and x86_64-pc-windows-msvc are provided on the Releases page

Make a GH issue if you want more targets

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
~511K SLoC