在本文中,我们将学习如何设置一个多合一的竞争性编程环境
操作系统
始终建议使用基于 Linux 的操作系统。之所以如此,是因为您不仅会学到一些更好的系统专有技术,而且还能获得一些预装的编码工具。
我自己强烈推荐一个 Linux 系统。对于初学者来说,Ubuntu 非常好。高级用户可以使用 ArchLinux 或 Kali Linux。即使您不想更改操作系统,也请使用最新版本的 Windows(7 或更高版本)。
下载 Ubuntu 桌面
文本编辑器
现在市场上有很多不错的文本编辑器,比如 VS Code、Sublime text、Atom、Notepad++ 等。
我个人最喜欢的是 Sublime Text 3,因为它轻巧、美观且功能强大。
下载 SublimeText 3
使用语言
现在是选择要使用的语言的时候了。大多数人使用 C++ 作为他们的主要编码语言。这主要是因为它的速度、清晰度和广泛的支持。因此,如果您不熟悉编码,则应该使用 C++,但如果您不了解 C++ 而是了解其他语言,请尝试只专注于该语言。大多数 CP Online 评委都会做诸如可变时间限制之类的事情,而且都是针对其他语言的。 IE。如果您的语言比 C++ 慢 2 倍,那么与 C++ 程序相比,您也会获得 2 倍的时间限制。
编译器
现在,如果您使用 C++ 作为主要编码语言,则必须安装 gcc 编译器(Linux 用户可以跳过此步骤,因为大多数 Linux 发行版都带有编译器 :)),如果您不确定是否有 gcc 编译器或不是;打开shell(即cmd)并执行以下代码。如果你得到答案,那么你就可以开始了。如果没有(即系统不理解命令),您必须先安装编译器。
g++ – 版本
下载 MinGW 编译器
最终设置
现在这是本文最重要的步骤……“修饰”。
CP 模板
#include
using namespace std;
void solve();
int main()
{
ios_base::sync_with_stdio(false);cin.tie(NULL);
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
freopen("error.txt", "w", stderr);
freopen("output.txt", "w", stdout);
#endif
int t=1;
${2:/*is Single Test case?*/}cin>>t;
while(t--)
{
solve();
cout<<"\n";
}
cerr<<"time taken : "<<(float)clock()/CLOCKS_PER_SEC<<" secs"<
如果您使用的是 Sublime Text,请按照以下步骤获取模板
打开 sublime 并转到工具>开发人员>新代码段并单击它
用上面编写的代码替换现有代码并用某个名称保存它。
如果您使用其他一些文本编辑器,这里是您应该使用的模板:
#include
using namespace std;
void solve();
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
freopen("error.txt", "w", stderr);
freopen("output.txt", "w", stdout);
#endif
int t = 1;
/*is Single Test case?*/ cin >> t;
while (t--) {
solve();
cout << "\n";
}
cerr << "time taken : " << (float)clock() / CLOCKS_PER_SEC << " secs" << endl;
return 0;
}
void solve()
{
}
屏幕设置
所有编码站点都使用文件比较方法来检查答案。这意味着他们将通过您的程序的输出存储在一个文本文件中,并与实际的应答文件进行比较。
因此,您也应该这样做。您需要做的是创建一个文件夹,并在其中创建 3 个文件 input.txt、output.txt 和 error.txt。您还应该将 cpp 代码放在这里。之后,您应该将编辑器配置为如图所示的布局:
注意在编辑器中打开的文件。
添加在
建议您随身携带所有代码的副本。因此最好使用版本控制工具,例如 git。
通过使用 Git,您可以派生出您以前编写过的任何代码。
我编写了一些代码来自动化提交过程(它需要 SublimeText、Linux OS 和 Git)
下载 GIT
{
"shell_cmd": "g++ \"${file}\" -o \"${file_path}\\\\${file_base_name}\"", "file_regex": "^(..[^:]):([0-9]+):?([0-9]+)?:? (.)$",
"shell_cmd": "g++ -O2 -std=c++11 \"${file}\" -o \"${file_path}\\\\${file_base_name}\" && \"${file_path}\\\\${file_base_name}\" < input.txt",
"working_dir": "${file_path}",
"selector": "source.c, source.c++",
"variants": [
{ "name": "Run + Commit",
"shell_cmd": "g++ -O2 -std=c++11 \"${file}\" -o \"${file_path}\\\\${file_base_name}\" && \"${file_path}\\\\${file_base_name}\" < input.txt && git add test.cpp && dd if=\"${file}\" of=*/Enter the location of your Programming folder her/*/name.txt bs=10 count=1 && git commit -F name.txt ",
}
]
}
使用上面的代码;转到 Sublime Text>Tools>Build System>New Built System 并粘贴此代码。使用名称保存文件。然后再次转到工具>构建系统并选择您为我们的新代码选择的名称。
全做完了…
现在您可以使用 CTRL+SHIFT+B 运行您的 CPP 代码并从 2 个选项中进行选择。