[OJ] Add templates and support c, cpp, java, python compile