The cookie plugin of leetcode-cil can work on OSX and Linux, If you are on other platforms or your cookies just don't want to be catched, you can handwrite your LeetCode Cookies to ~/.leetcode/leetcode.toml
# Make sure `leetcode.toml` file is placed at `~/.leetcode/leetcode.toml` [cookies] csrf = "..." session = "..."
For Example, if you're using chrome to login to leetcode.com.
Open chrome and paste the link below to the chrome linkbar
.
chrome://settings/cookies/detail?site=leetcode.com
Copy the contents of LEETCODE_SESSION
and csrftoken
.
Paste them to session
and csrf
.
# Make sure `leetcode.toml` file is placed at `~/.leetcode/leetcode.toml` [cookies] csrf = "${LEETCODE_SESSION}" session = "${csrf}"
cargo install leetcode-cli
Please make sure you have logined in leetcode.com
with chrome
, more info plz checkout this
leetcode 0.2.1 clearloop <udtrokia@163.com> Here's to the crazy ones π» USAGE: leetcode [FLAGS] [SUBCOMMAND] FLAGS: -d, --debug debug mode -h, --help Prints help information -V, --version Prints version information SUBCOMMANDS: data Manage Cache [aliases: d] edit Edit question by id [aliases: e] exec Submit solution [aliases: x] list List problems [aliases: l] pick Pick a problem [aliases: p] stat Show simple chart about submissions [aliases: s] test Edit question by id [aliases: t] help Prints this message or the help of the given subcommand(s)
For example, if your config is:
[code] lang = "rust" editor = "emacs"
leetcode pick 1
[1] Two Sum is on the run... Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution, and you may not use the same element twice. -------------------------------------------------- Example: Given nums = [2, 7, 11, 15], target = 9, Because nums[0] + nums[1] = 2 + 7 = 9, return [0, 1].
leetcode edit 1
impl Solution { pub fn two_sum(nums: Vec<i32>, target: i32) -> Vec<i32> { use std::collections::HashMap; let mut m: HashMap<i32, i32> = HashMap::new(); for (i, e) in nums.iter().enumerate() { if let Some(v) = m.get(&(target - e)) { return vec![*v, i as i32]; } m.insert(*e, i as i32).unwrap_or_default(); } return vec![]; } }
leetcode test 1
Accepted Runtime: 0 ms Your input: [2,7,11,15], 9 Output: [0,1] Expected: [0,1]
leetcode submit 1
Success Runtime: 0 ms, faster than 100% of Rustonline submissions for Two Sum. Memory Usage: 2.4 MB, less than 100% of Rustonline submissions for Two Sum.
- the edit flow ββ solution files will generate automatically!
- doc support,
lc-rs
can compile the annotation of your solutions to markdown!- btw, generate a site is easy for
lc-rs
!
- btw, generate a site is easy for
- support local signal to keep coding as longer as you want.
PR is welcome, here it is.
MIT