ubutntu笔记3_在ubuntu下使用topcoder

Step1. 配置 java 环境

Step1. 上 Oracle 下载 Linux 下的 JDK 压缩包,我下载的是 jdk-7u25-linux-x64.tar.gz

 

Step2. 解压,并将解压后文件复制到 /usr/lib/jvm 中

  tar -zxvf jdk-7u25-linux-x64.tar.gz

  sudo cp -r ~/Downloads/jdk1.7.0_25/ /usr/lib/jvm/

 

Step3. 配置环境变量

  sudo gedit ~/.profile

  往文件的最后一行末尾添加:“export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_25”,保存并关闭

  在 terminal 中输入 source ~/.profile 更新

  使用 env 命令查看 JAVA_HOME 的值是否为:“/usr/lib/jvm/jdk1.7.0_25” 如果是的话,说明配置成功

 

Step4. 修改系统默认的 jdk

  系统默认的 jdk 是 open jdk,这里我们把它改成 sun 公司的 jdk

  sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0_25/bin/java 300

  sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_25/bin/javac 300

  sudo update-alternatives --config java

  sudo update-alternatives --config javac

  在上面的步骤中,如果遇见系统要求你选择,选择 jdk1.7.0_25 前对应的选项即可

 

最后查看以下 java 的信息:java -version,我的如下:

java version "1.7.0_25"

Java(TM) SE Runtime Environment (build 1.7.0_25-b15)

Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)

出现上面的信息,表明已经安装成功了


Step2. 下载 java 客户端

  传送门: Load Competition Arena

 

Step3. 启动 ContestAppletProd.jnlp 文件

  javaws ContestAppletProd.jnlp

  在这句命令之后,如果提示你说 javaws 没有安装,就按照提示的来安装就行了,不出意外的话,应该会提示你如下的命令:

  sudo apt-get install icedtea-netx

 

Step4. 做一个 TopCoder 的桌面启动器 

  如果每次做 TC 的时候都开着一个 terminal,那将是一件非常痛苦的事情,我们可以给它做一个桌面启动器,先看一个图片吧:

  

  这些 Applications,他们都对应了一个 .desktop 的配置文件,有了一个合法的 .desktop 配置文件,他对应的东西就会在桌面或者菜单中出现,也能创建快捷方式,那么,也就是说,我们完全可以给 TopCoder 的客户端也搞一个 .desktop 的配置文件,那么这些配置文件在哪呢,我们应该怎么设置呢?

  推荐看看这篇文章,写的非常详细:Linux Desktop Entry 文件深入分析

  下面我仅说明怎么创建 TopCoder 客户端的的 .desktop 配置文件和怎么安装 TopCoder 的插件,有了 .desktop 配置文件后,在上图中的 Applications 中就能搜到 TopCoder 客户端的启动选项,不用每次都去开一个 terminal 那么麻烦了,有了插件,就能提高我们做比赛的效率了

  先去 google 或者 百度 或者随便哪里,找一个你喜欢的图片作为你的 TopCoder 的启动图标,比如我的图标:

  

  再去 这里 找到以下三个插件:  

    1. TZTester

    2. CodeProcessor

    3. FileEdit

  把他们和在 Step2 中下载的 ContestAppletProd.jnlp 放在一起,可以建一个文件夹,我是把它门放在 ~/Applications/TopCoder 中的,也就是说,这个文件夹中要有 5 个东西:

    (1). TopCoderIcon.png

    (2). TZTester.jar

    (3). CodeProcessor.jar

    (4). FileEdit.jar

    (5). ContestAppletProd.jnlp

  现在,打开 terminal,输入以下命令,进入 /usr/share/applications/ 中,设置 TopCoder.desktop 配置文件

    cd /usr/share/applications/  (这里需要注意不是存放插件的地方而是usr下的文件夹)

    sudo gedit TopCoder.desktop

  在弹出来的空文件中,把下面的东西搞进去:

    [Desktop Entry]
    Version=1.0
    Name=TopCoder
    Exec=javaws /home/sakura/Applications/TopCoder/ContestAppletProd.jnlp
    Terminal=false
    Icon=/home/sakura/Applications/TopCoder/TopCoderIcon.png
    Type=Application
    Categories=Development

  上面的东西中,被我黑色加粗了部分,需要根据你存放后面两个东西的具体地址填写,值得注意的是,他们必须是绝对地址

  如果你所有的东西都操作正确的话,这时候,在 Applications 中搜索,就能找到你添加的启动器了,比如我的:

  

  点击它,看看能不能弹出登录如下的登录界面:

  

如果出现了,那么恭喜,已经搞定了,如果没有,别慌,仔细检查检查是不是哪里搞错了 

 

Step4. 给客户端装插件

1、使用你的账号登陆 Arena。选择:"Options" → "Editors",调出了新的窗口,按 "Add" ,然后在 "name" 栏填 "FileEdit" ,"EntryPoint" 栏填 "fileedit.EntryPoint",路径的话,直接浏览 "FileEdit.jar" 所在的位置即可。完成之后按 "OK"

 

        2、继续 "options" → "Editors"。调出了新的窗口,按 "Add"(PS:这次要添加以上全部三个文件包括 "FileEdit.jar" )。这一次 "name" 栏填 "CodeProcessor" ,"EntryPoint" 栏填 "codeprocessor.EntryPoint",路径栏:直接浏览三个文件就可以。完成之后按 "OK"

 

        3、选择 "CodeProcessor" 做你的 "Default Editor"(PS:就是在前面的两个白色的括号中的第一个打勾), 按 "Save" 键

 

        4、选定 "CodeProcessor" (PS:是高亮显示,不是在前面的两个白色的方括号里打勾哦!),按 "Configure"。在 "Editor EntryPoint" 栏,键入 "fileedit.EntryPoint",在 "Processor Class" 栏键入 "tangentz.TZTester",按 "Verify",弹出窗口看是否全部 "found",是的话按 "OK" 键返回,不是的话看前面的操作是否有误。然后再按后面的 "configure",勾上 "Write the problem description using HTML",把 "File Extension" 那里改成 "html" ,这样题目描述就会被生成一个 html 文件,方便看题。把 "Backup existing file when overwrite" 前面的勾去掉,那东西几乎没用。在 "Enter directory read/write problems to:" 这里填上你放程序文件的绝对路径。最后按一下 "code template",把 "language" 改成 "C++",用下面的模版替换里面原来的模板

模板
$BEGINCUT$
$PROBLEMDESC$
$ENDCUT$
#line $NEXTLINENUMBER$ "$FILENAME$"
#include <cstdlib>
#include <cctype>
#include <cstring>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <vector>
#include <string>
#include <iostream>
#include <sstream>
#include <map>
#include <set>
#include <queue>
#include <stack>
#include <fstream>
#include <numeric>
#include <iomanip>
#include <bitset>
#include <list>
#include <stdexcept>
#include <functional>
#include <utility>
#include <ctime>
using namespace std;

#define PB push_back
#define MP make_pair

#define REP(i,n) for(i=0;i<(n);++i)
#define FOR(i,l,h) for(i=(l);i<=(h);++i)
#define FORD(i,h,l) for(i=(h);i>=(l);--i)

typedef vector<int> VI;
typedef vector<string> VS;
typedef vector<double> VD;
typedef long long LL;
typedef pair<int,int> PII;


class $CLASSNAME$
{
        public:
        $RC$ $METHODNAME$($METHODPARMS$)
        {
                $CARETPOSITION$
        }
        $TESTCODE$
};

// BEGIN CUT HERE
int main()
{
        $CLASSNAME$ ___test;
        ___test.run_test(-1);
        return 0;
}
// END CUT HERE
最后一起保存,就 OK 了。现在随便进一个 " Practice Rooms " 开一道题目,看看是否在你自己指定的文件夹目录里生成了题目和代码。如果没有,再检查检查上面的操作是否做对了


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值