codeforce-cli
v1.1.71
Published
command line interface for giving contest
Downloads
28
Readme
Codeforces CLI
This will enable you to get all things you need for contest set up in just one hit. In addition you'll have all the testcases on your storage device and again can be tested in one command.
Prerequisites
Install nodejs according to your operating system from here.
npm --version
6.14.*
Installing
All you need is to run this command and try it.
npm i -g codeforce-cli
Try with sudo
for Linux or macOS.
Getting Started
Open you terminal and see all recent contest using this command
$ cf list -t 6
1473 1/14/2021, 8:05:00 PM 02:00 hour Educational Codeforces Round 102 (Rated for Div. 2) 60
1467 1/8/2021, 8:05:00 PM 02:00 hour Codeforces Round #695 (Div. 2) 60
1470 1/5/2021, 8:05:00 PM 02:00 hour Codeforces Round #694 (Div. 1) 60
1471 1/5/2021, 8:05:00 PM 02:00 hour Codeforces Round #694 (Div. 2) 60
1472 1/4/2021, 8:05:00 PM 02:00 hour Codeforces Round #693 (Div. 3) 60
1466 12/30/2020, 8:05:00 PM 03:00 hour Good Bye 2020 60
Choose the contest you want to give.
Register for contest or virtual contest on codeforces site, then take note of contest id of your contest. For eg. 1467
;
Execute following command
$ cf create 1467
? Enter the directory name : 1467
? Language : cpp
A Wizard of Orz https://codeforces.com/contest/1467/problem/A
B Hills And Valleys https://codeforces.com/contest/1467/problem/B
C Three Bags https://codeforces.com/contest/1467/problem/C
D Sum of Paths https://codeforces.com/contest/1467/problem/D
E Distinctive Roots in a Tree https://codeforces.com/contest/1467/problem/E
Folder Created {current-dir}/1467
File Created {current-dir}/1467/A/sol.cpp
File Created {current-dir}/1467/B/sol.cpp
File Created {current-dir}/1467/C/sol.cpp
File Created {current-dir}/1467/D/sol.cpp
File Created {current-dir}/1467/E/sol.cpp
Write some code.
Don't use
freopen()
for input or output in cpp or similar thing in other languages.
Now test your code against sample testcases with simple command.
$ cf verify A B
Verifying problem A ...
Testcase 1 Passed
Verifying problem B ...
Testcase 1 Passed
Testcase 2 Failed
Finally submit your code on codeforces official website.
Usage
$ cf <command> [options]
Commands
cf list
USAGE
$ cf list
OPTION
-t, --top number of recent contest to print
EXAMPLES
$ cf list -t 6
1473 1/14/2021, 8:05:00 PM 02:00 hour Educational Codeforces Round 102 (Rated for Div. 2) 60
1467 1/8/2021, 8:05:00 PM 02:00 hour Codeforces Round #695 (Div. 2) 60
1470 1/5/2021, 8:05:00 PM 02:00 hour Codeforces Round #694 (Div. 1) 60
1471 1/5/2021, 8:05:00 PM 02:00 hour Codeforces Round #694 (Div. 2) 60
1472 1/4/2021, 8:05:00 PM 02:00 hour Codeforces Round #693 (Div. 3) 60
1466 12/30/2020, 8:05:00 PM 03:00 hour Good Bye 2020 60
cf create
creates and directory structure for all problems in particular contest.
USAGE
$ cf create <id>
OPTION
--id contest id
EXAMPLES
$ cf create 1467
? Enter the directory name : 1467
? Language : cpp
A Wizard of Orz https://codeforces.com/contest/1467/problem/A
B Hills And Valleys https://codeforces.com/contest/1467/problem/B
C Three Bags https://codeforces.com/contest/1467/problem/C
D Sum of Paths https://codeforces.com/contest/1467/problem/D
E Distinctive Roots in a Tree https://codeforces.com/contest/1467/problem/E
Folder Created {current-dir}/1467
File Created {current-dir}/1467/A/sol.cpp
File Created {current-dir}/1467/B/sol.cpp
File Created {current-dir}/1467/C/sol.cpp
File Created {current-dir}/1467/D/sol.cpp
File Created {current-dir}/1467/E/sol.cpp
The file structure would be like this
`<contest_id || your_folder_name>`
A
sol.cpp [solution]
in1.txt [input sample from question]
out1.txt [output sample from question]
q.md [question in markdown]
B
sol.cpp
... ... ... ...
cf verify
verify local testcases corresponding to your code change your directory to current contest
USAGE
$ cf verify <tags..>
EXAMPLES
$ cf verify A B
Verifying problem A ...
Testcase 1 Passed
Verifying problem B ...
Testcase 1 Passed
Testcase 2 Failed