cotton's blog

By cotton, history, 3 months ago, In English

In June 2019, EbTech posted an article How to Compete in Rust. Inspired by that, I'm working on my rust_codeforce_template.

It could be used in such way:

  1. cargo install --git https://github.com/Endle/rust-bundler.git --branch codeforce bundler
  2. git clone https://github.com/Endle/rust_codeforce_template.git --depth=1
  3. Edit main.rs. Most cases, I only need to edit fn solve()
  4. ./run_with_bundle.sh < test.in
  5. If the result looks good, submit /dev/shm/output.rs to codeforce

This workflow has such advantages IMHO

Clean main.rs
Template code Move template code out of main.rs. I could save my time from scrolling up and down. My forked rust-bundler would bundle them into a single file that could be submitted.

Save coding time for IO
I bundled text_io in my lib.rs. It provides simple reading methods

let i: i32 = read!();  
let word: String = read!(); 

Based on that, I added another function read_ivec. I think this is the most frequently used function in my template.

I'm new and naive to both Rust and competitive programming. (Well, old and naive for the latter). I'll be so grateful for your comments.

Besides, I recommend rust-algorithms by EbTech. Templates with a high quality:)

 
 
 
 
  • Vote: I like it
  • +12
  • Vote: I do not like it