All Projects → dj3500 → Hightail

dj3500 / Hightail

Licence: mit

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Hightail

Competitive-Programming-Codes
Includes codes from coding competitions and contests over the internet. Languages:- Python3 and C++
Stars: ✭ 14 (-94.76%)
Mutual labels:  competitive-programming, codeforces
cp-tool
cp-tool is an auto generator for solved problems at different online judges.
Stars: ✭ 24 (-91.01%)
Mutual labels:  competitive-programming, codeforces
cpt
An amazing versatile CLI tool for competitive programming!
Stars: ✭ 32 (-88.01%)
Mutual labels:  competitive-programming, codeforces
CodeForces
Python solutions to CodeForces problems
Stars: ✭ 48 (-82.02%)
Mutual labels:  competitive-programming, codeforces
cppdump
Standard dumps of data structures/algorithms
Stars: ✭ 18 (-93.26%)
Mutual labels:  competitive-programming, codeforces
cphelper.nvim
Neovim helper for competitive programming. https://sr.ht/~p00f/cphelper.nvim preferred
Stars: ✭ 56 (-79.03%)
Mutual labels:  competitive-programming, codeforces
problem-solving
A platform where you can learn about algorithms and data structures. A heaven for competitive programmers. Learn here: https://reyadussalahin.github.io/problem-solving/
Stars: ✭ 33 (-87.64%)
Mutual labels:  competitive-programming, codeforces
Competitive-Coding
Contains solution code of SPOJ, LeetCode, HackerRank and Codeforces questions solved by me.
Stars: ✭ 46 (-82.77%)
Mutual labels:  competitive-programming, codeforces
Codeforces
Solutions to Codeforces Problems
Stars: ✭ 132 (-50.56%)
Mutual labels:  competitive-programming, codeforces
Data-Structures-Algorithms
Data Structures & Algorithms 💥
Stars: ✭ 17 (-93.63%)
Mutual labels:  competitive-programming, codeforces
Competitive Coding
Contains Solution for all type of Problems of Competitive Programming. Updates Frequently as any problem is solved.
Stars: ✭ 16 (-94.01%)
Mutual labels:  competitive-programming, codeforces
Competitive Programming Score API
API to get user details for competitive coding platforms - Codeforces, Codechef, SPOJ, Interviewbit
Stars: ✭ 118 (-55.81%)
Mutual labels:  competitive-programming, codeforces
GoCF
Contest parser for codeforces.com
Stars: ✭ 48 (-82.02%)
Mutual labels:  competitive-programming, codeforces
category-wise-problems
contains category wise problems(data structures, competitive) of popular platforms.
Stars: ✭ 32 (-88.01%)
Mutual labels:  competitive-programming, codeforces
Catalyst
A VS code Extension to accelerate the process of solving problems on Codeforces.
Stars: ✭ 69 (-74.16%)
Mutual labels:  competitive-programming, codeforces
icie
Competitive programming IDE-as-a-VS-Code-plugin
Stars: ✭ 81 (-69.66%)
Mutual labels:  competitive-programming, codeforces
psolving-paradigms
Common problems of dynamic programming methods and techniques, including prerequisites, for competitive programmers.
Stars: ✭ 34 (-87.27%)
Mutual labels:  competitive-programming, codeforces
competitive-programming
Roadmap to learn data structures, algorithms, mathematics, dynamic programming to beat in competitive programming, or crack any interview.
Stars: ✭ 21 (-92.13%)
Mutual labels:  competitive-programming, codeforces
codeforces-go
Golang 算法竞赛模板库 | Solutions to Codeforces by Go 💭💡🎈
Stars: ✭ 842 (+215.36%)
Mutual labels:  competitive-programming, codeforces
Code
Macesuted's Code Repository.
Stars: ✭ 20 (-92.51%)
Mutual labels:  competitive-programming, codeforces

Hightail

Downloads

Hightail is an automatic tester for programming contests such as CodeForces rounds. It will parse the problem statement, extract sample test cases (inputs and outputs) from it, and verify the correctness of your program against them. It is built to provide maximum automation and to relieve the contestant as much as possible.

A list of Hightail's features:

  • parsing problem statements
  • parsing entire contests (autoloading all problems)
  • scheduling contest parsing ahead of time
  • ability to comfortably view, edit and add test cases
  • handling of all verdicts: WA, TLE, RE, even AC
  • customizable time limits
  • ability to create in/out files in your working directory
  • detection of floating point values (comparing 0.1 vs. 0.10 does not give WA)
  • easy-to-use UI, keyboard shortcuts
  • resilient: it is multi-threaded so it will not let your program hang it; it will withstand large amounts of output from your program
  • support for all contest languages (C++, Java, Python, ...)
  • written in Java and should run on any OS

It supports the following online judges:

  • CodeForces (incl. Gym)
  • CodeChef (experimental)
  • AtCoder (now also live-running contests!)
  • Jutge.org
  • Open Kattis

Additionally, the Competitive Companion browser extension can be used to parse problems and contests from the browser. It is available for Chrome and Firefox. It supports many more online judges than the above (Google Code Jam, Facebook Hacker Cup, ...). Just install the browser extension, run Hightail, go to a problem/contest, and click the green plus button in your browser - it should parse and load into Hightail.

We do not plan on supporting the TopCoder Arena: it is a different architecture, and there are a lot of good plugins available for it. Also, if you use Java for contests, we recommend to take a look at Egor Kulikov's CHelper for IntelliJ IDEA.

Screenshots and screencasts

Screenshot of Hightail Screenshot of Hightail

Short video of using Competitive Companion to parse tasks from the browser.

Hightail also appears in dj3500's screencasts. See this one for an example.

How do I get Hightail?

To get a fairly up-to-date version - in the form of a .jar file which is ready to run if you have Java (JRE) installed - visit Downloads. Just save it somewhere on your computer and run it from there. It will create a config file in its directory.

An alternative way, if you're on Linux and have snap installed, is to run sudo snap install --edge hightail. Then Hightail should auto-update every day (to the latest code from the master branch). (currently this is broken)

You may also compile Hightail from source code using the instructions below (and then you will also be able to work on the code, e.g. to help in development), or by following http://codeforces.com/blog/entry/6941#comment-125761 (which might be a little easier - or not).

How to download the code and work on Hightail?

Hightail is developed in NetBeans (the UI in particular) and it is highly advisable to use it.

  1. Download and install NetBeans (also JDK if you don't have it; there's a bundled version available). I have used NetBeans 8.0 (and Windows) for this tutorial.
  2. While it's installing, sign up on Github if you don't have an account. Go to https://github.com/dj3500/hightail and fork the repository (using the Fork button).
  3. Fire up NetBeans and select Team -> Git -> Clone; Repository URL: https://github.com/YOURUSERNAME/hightail.git/, also enter your Github username and password and select Save password; Next, Next, Finish.
  4. If it says "Hightail project was cloned. Do you want to open the project?", select Open Project. If it doesn't, or says something else (like prompting you to "Create a project"), cancel and open the imported project yourself (File -> Open Project).
  5. Change stuff, test, build, run, etc.
  6. Once you have a working change: Team -> Commit, enter a commit description, Commit. Keep in mind that with Git, commits are only local. You can continue to make new commits. When you want to push your tree (of commits) to Github, select Team -> Remote -> Push To Upstream. The changes will be now publicly visible in your GitHub repository.
  7. When you want to submit your changes to dj3500 for testing and review (please do test them thoroughly beforehand, though), create a pull request (from the web interface at https://github.com/YOURUSERNAME/hightail). The pull request model is documented at https://help.github.com/articles/using-pull-requests.

It is better to use branches for different features, and read up on Git in general, but the above should be enough to get you started.

Ways you can help

Hightail is a community project, developed by volunteers. We'd love for you to join in the effort.

  • It couldn't hurt to make Hightail more popular. If you use it, consider putting a comment in the code of your solutions, like // tested by Hightail - https://github.com/dj3500/hightail. Also, tell your friends.
  • There is a list of known problems and possible enhancements that you can work on fixing here: https://github.com/dj3500/hightail/issues?state=open. Many of them will be easy or fast to solve, they just need a little attention :)
  • You can also report new issues or give new ideas.
  • The project does not currently need any donations.

There is also a discussion topic on CodeForces (here).

Contributors

The project was started and is maintained by Jakub Tarnawski (dj3500). A large amount of work was done by contributors, some of whom are listed here and others include Piotr Szcześniak and Robert Rosołek - thank you so much!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].