Plugins no topcoder
As dicas a seguir foram dadas por Pedro Demasi na lista nacional da maratona: maratona@yahoogrupos.com.br.
Como prometido, vou colocar um "guia rápido" para instalação dos plugins do TopCoder (FileEdit, CodeProcessor e TZTester). Com esse "combo", vcs vão poder usar o editor que quiserem para programar, e os casos de exemplo já são testados automaticamente quando você roda o programa localmente. O guia serve só para quem for usar C++, já que o TZTester não funciona com Java.
Parece meio grande, mas é rápido fazer isso tudo, coloquei bem passo a passo, então acho que não deve haver problemas. Qualquer coisa me avisem.
As dicas a seguir foram dadas por Pedro Demasi na lista nacional da maratona: maratona@yahoogrupos.com.br.
Como prometido, vou colocar um "guia rápido" para instalação dos plugins do TopCoder (FileEdit, CodeProcessor e TZTester). Com esse "combo", vcs vão poder usar o editor que quiserem para programar, e os casos de exemplo já são testados automaticamente quando você roda o programa localmente. O guia serve só para quem for usar C++, já que o TZTester não funciona com Java.
Parece meio grande, mas é rápido fazer isso tudo, coloquei bem passo a passo, então acho que não deve haver problemas. Qualquer coisa me avisem.
- Obviamente você tem de ter Java instalado na sua máquina para poder
rodar a arena.
- Baixe os três plugins:
- http://www.topcoder.com/contest/classes/FileEdit/FileEdit.jar
- http://www.topcoder.com/contest/classes/CodeProcessor/CodeProcessor.jar
- http://www.topcoder.com/contest/classes/TZTester/TZTester.jar
- Coloque os 3 jar no mesmo diretório (mesmo não sendo obrigatório,
não vejo motivos para colocar num diretório diferente).
- Abra a arena e vá em Options -> Editor
- Clique em Add
- Preencha Name como FileEdit e EntryPoint como fileedit.EntryPoint
- Em ClassPath, clique em Browse, encontre o arquivo FileEdit.jar e
selecione-o.
- Clique em ok.
- Agora clique em Add novamente.
- Preencha as informações Name como CodeProcessor e EntryPoint como
codeprocessor.EntryPoint
- Em ClassPath, clique em Browse, encontre o arquivo FileEdit.jar e
selecione-o. Faça o mesmo procedimento para CodeProcessor.jar e para
TZTester.jar (isso mesmo, os 3 jar vão ficar no ClassPath).
- Clique em ok.
- Mais uma vez clique em Add.
- Preencha as informações Name como TZTester e EntryPoint como
codeprocessor.EntryPoint (ATENÇÃO, o EntryPoint do TZTester é o mesmo
do CodeProcessor!)
- Igual ao passo 11 (colocar os 3 jar no ClassPath).
- Clique em Ok.
- Agora selecione o FileEdit e clique em Configure.
- Na tab General, deixe DESMARCADA as opção "Backup existing
file...". Aconselho a deixar MARCADAS as opções "Make filename equal
to classname" e "Write Problem Description to separate file". Na opção
"Enter directory to read/write problems to" coloque o path completo do
diretório em que vc pretende que os fontes sejam criados e lidos pela
arena (eu normalmente uso o mesmo dos plugins, para deixar tudo num
lugar só).
- Na tab Code Template, selecione C++ como Language (ATENÇÃO! Mesmo
sendo C++ sua linguagem default, a linguagem que aparece primeiro
nessa configuração é Java, por isso não se esqueça de escolher C++).
- Agora apague o template que aparece e cole o que se encontra no
final da página, na seção "Código" (recomendo
fortemente).
- Clique em Save, a arena deve mostrar uma mensagem dizendo que foi
salvo com sucesso, clique em Ok e, finalmente, em Close.
- Selecione o CodeProcessor e clique em Configure.
- Em Editor EntryPoint coloque fileedit.EntryPoint e em Processor
Class coloque tangentz.TZTester
- Clique em Save, depois em Ok e finalmente em Close.
- Selecione o TZTester e clique em Configure.
- Verifique se as informações preenchidas estão iguais ao inidcado
em 23, senão preencha da mesma maneira.
- Clique em Save, depois em Ok e finalmente em Close.
- Agora deixe apenas o TZTester marcado como Default e os demais
todos desmarcados.
- Clique em Save, depois em Ok e finalmente em Close.
- Agora feche a arena e inicie novamente para as mudanças terem
efeito. Entre numa practice room qualquer e abra algum problema. Se
tudo tiver dado certo, na parte de cima haverá a descrição do problema
e, na parte de baixo da janela (Activity Log), vai aparecer algumas
mensagens falando da criação do arquivo fonte. Abra o arquivo no seu
editor preferido (por exemplo, gvim) e comece a programar... :)
#include <iostream>
#include <sstream>
#include <string>
#include <vector>
#include <deque>
#include <queue>
#include <stack>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
using namespace std;
class $CLASSNAME$
{
public:
$RC$ $METHODNAME$($METHODPARMS$)
{
return(0);
}
$TESTCODE$
};
// BEGIN CUT HERE
int main()
{
$CLASSNAME$ ___test;
___test.run_test(-1);
}
// END CUT HERE
