Top 20

1 0x00h 695 pts
2 boris39 695 pts
3 neoxquick 676 pts
4 maf-ia 658 pts
5 eax 657 pts
6 thefinder 639 pts
7 benito255 604 pts
8 nikokks 597 pts
9 mego 588 pts
10 madbat2 579 pts
11 plucth 561 pts
12 Mart 549 pts
13 Stupefy 529 pts
14 tehron 502 pts
15 Kithyane 497 pts
16 egosum 470 pts
17 rostale 462 pts
18 malose 427 pts
19 CoYoTe99 414 pts
20 Undr 412 pts

Classement complet

Shoutbox

21 Oct - 9:48 pm

Équation du challenge 52 corrigée, merci

16 Oct - 8:43 am

Bonjour, il y a aussi un problème d'affichage "invalid equation" dans le challenge 52. Merci

14 Oct - 8:57 pm

Barbapapou l'équation du challenge 29 a été corrigée

4 Oct - 10:30 am

Bonjour, il y a un problème avec l'affichage d'une équation dans le challenge 29

24 Aug - 7:10 pm

@rostale, en effet l'épreuve 21 ne fonctionne plus depuis un moment, pour l'instant on a pas prévu de temps pour la réparer je pense qu'on va finir par la supprimer tout simplement. @nikokks, ok je t'envoie un mail

22 Aug - 11:40 pm

Salut Metatr0n. pourrait on avoir une discussion en MP. J'imagine que tu as mon mail. Ce serait pour discuter de microcontest en general.

28 Jul - 10:38 pm

Pouvez-vous vérifier l'épreuve Email (21) ? En effet, je ne reçois pas d'email de la part du site. Merci

28 Jul - 7:29 pm

Bonjour et merci. Cependant, j'ai résolu le challenge qui me posait pb, donc plus rien à demander... pour l'instant.

28 Jul - 1:48 pm

Ça devrait être réparé maintenant

28 Jul - 12:04 pm

Bonjour, effectivement j'ai le même message d'erreur, on va investiguer merci d'avoir rapporté le soucis

Connexion
Mot de passe oublié

Supportez nousx

Vous aimez µContest ?
Supportez nous en votant (fun et difficulté) pour µContest sur WeChall :)
Si vous ne l'avez pas encore fait, profitez-en pour lier votre compte
Wechall à µContest pour pouvoir voter !

Merci

Contents

µContest, what is it ? How to participate ? How to solve the challenges proposed ? What language ? You will find all the answers to theses questions in this page. Concerning more specific questions, you can ask them on the forum.

General

How to solve a challenge

The µContest libraries

Example of a challenge resolution I

Example of a challenge resolution II

Technical documentations

Library Java documentation

General information

Current version : 2.0

The library contains functions that enable you

  • to check if the lib is up to date
  • to get the variable values of a challenge
  • to send back the answer(s) you found to the website
  • print formatted results
You just have to import the lib by doing :
import com.microcontest.Libmicrocontest2;
import com.microcontest.Contest;

Available functions

Here is a list of the functions you can use :

Function Prototype Description
- Libmicrocontest2.checkVersion - boolean checkVersion() Checks if the lib is up to date
- Contest.commenceContest - Contest commenceContest(int id_contest, String username, String password)
- Contest commenceContest(int id_contest)
Gets the variables from the website
- Contest.getParam
- Contest.getBytes
- Contest.getInt
- Contest.getDouble
- String getParam(String variable_name)
- byte[] getBytes(String variable_name)
- int getInt(String variable_name)
- Double getDouble(String variable_name)
Give you the variables downloaded by Contest.commenceContest
- Contest.appendAnswer - void appendAnswer(String variable_name, int variable_value)
- void appendAnswer(String variable_name, double variable_value)
- void appendAnswer(String variable_name, String variable_value)
Add answers to the final solution
- Contest.submitAnswer - String submitAnswer() Sends the final solution to the website

Available variable

You can use this variable in your code :

Variable name Value
Libmicrocontest2.Version The version of the lib you are currently using.

Libmicrocontest2.checkVersion

Prototype / Description

boolean checkVersion()

Enables you to check if the lib version if up to date.

Parameters

N/A

Return value

true if the lib is up to date, false otherwise.

Example

if(Libmicrocontest2.checkVersion() == false)
{
	System.out.println("Warning: the version of the libmicrocontest2 is not the last one.");
	System.out.println("Current version :\t" + Libmicrocontest2.VERSION);
	System.out.println("This program may not work properly. Consider downloading the latest version on this page : http://www.microcontest.com/download.php\n");
}

Contest.commenceContest

Prototype / Description

  • Contest commenceContest(int id_contest, String username, String password)
  • Contest commenceContest(int id_contest)
Downloads new variable values from the website and store it. You need to use getxxxx to get them. The second form will use the information you put in credentials.properties in the same directory :
username = harry
password = potter

Parameters

  • [in] int id_contest : The ID of the contest you want to solve, written on every contest page.
  • [in] String username : (Optional if you use a file credentials.properties) Your username.
  • [in] String password : (Optional if you use a file credentials.properties) Your password.

Return value

A Contest object you have to use to retreive the variable values.

Example

Contest cont = Contest.commenceContest(1, "Your nickname", "Your password");
// Contest cont = Contest.commenceContest(1); if you use credentials
 
int a = cont.getInt("a");
int b = cont.getInt("b");
// you can also use getDouble (for floating point values) and getParam (for strings)

Contest.getParam

Prototype / Description

String getParam(String variable_name)

Once you called Contest.commenceContest, you can retrieve the string variables values with this function.

Parameters

[in] String variable_name : The identificator string of the variable you want to retrieve written on every contest page.

Return value

The string value of the variable.

Example

Contest cont = Contest.commenceContest(4, "Your nickname", "Your password");
// Contest cont = Contest.commenceContest(4); if you use credentials
 
int key = cont.getInt("key");
String txt_crypted = cont.getParam("txt_crypte");

Contest.getBytes

Prototype / Description

byte[] getBytes(String variable_name)

Once you called Contest.commenceContest, you can retrieve a byte array of the string with this function.

Parameters

[in] String variable_name : The identificator string of the variable you want to retrieve written on every contest page.

Return value

A new byte array storing the string bytes.

Example

Contest cont = Contest.commenceContest(6, "Your nickname", "Your password");
// Contest cont = Contest.commenceContest(4); if you use credentials
 
byte[] wav_Data = cont.getByte("wav");

Contest.getInt

Prototype / Description

int getInt(String variable_name)

Once you called commence_contest, you can retrieve the int variables values with this function.

Parameters

[in] String variable_name : The identificator string of the variable you want to retrieve written on every contest page.

Return value

The value of the variable.

Example

Contest cont = Contest.commenceContest(4, "Your nickname", "Your password");
// Contest cont = Contest.commenceContest(4); if you use credentials
 
int key = cont.getInt("key");
String txt_crypted = cont.getParam("txt_crypte");

Contest.getDouble

Prototype / Description

Double getDouble(String variable_name)

Once you called commence_contest, you can retrieve the double variables values with this function.

Parameters

[in] String variable_name : The identificator string of the variable you want to retrieve written on every contest page.

Return value

The value of the variable.

Example

Contest cont = Contest.commenceContest(4, "Your nickname", "Your password");
// Contest cont = Contest.commenceContest(2); if you use credentials
 
Double a = cont.getDouble("a");
Double b = cont.getDouble("b");
Double c = cont.getDouble("c");

Contest.appendAnswer

Prototype / Description

  • void appendAnswer(String variable_name, int variable_value)
  • void appendAnswer(String variable_name, double variable_value)
  • void appendAnswer(String variable_name, String variable_value)
Once you solved the challenge, you need to add the answer(s) to the final solution. Then, you will call Contest.submitAnswer that will send all your answers to the website. You should use this function to add variables to the solution. Use the version you need depending on the type of the variable you want to append.

Parameters

  • [in] String variable_name : The identificator string of the variable you want to retrieve written on every contest page.
  •    [in] int variable_value : The value of your int variable you want to append.
  • OR [in] double variable_value : The value of your double variable you want to append.
  • OR [in] String variable_value : The string you want to append.

Return value

N/A

Example

Contest cont = Contest.commenceContest(1, "Your nickname", "Your password");
// Contest cont = Contest.commenceContest(1); if you use credentials

int a = cont.getInt("a");
int b = cont.getInt("b");
// you can also use getDouble (for floating point values) and getParam (for strings)

// append the answer
cont.appendAnswer("s", a + b);

// then submit the answer and print result
System.out.println(cont.submitAnswer());

Contest.submitAnswer

Prototype / Description

String submitAnswer()

Once you solved the challenge and added all the answer variables to the solution, you need to call this function in order to send the solution to the website.

Parameters

N/A

Return value

A string informing you about the result.

Example

Contest cont = Contest.commenceContest(1, "Your nickname", "Your password");
// Contest cont = Contest.commenceContest(1); if you use credentials

int a = cont.getInt("a");
int b = cont.getInt("b");
// you can also use getDouble (for floating point values) and getParam (for strings)

// append the answer
cont.appendAnswer("s", a + b);

// then submit the answer and print result
System.out.println(cont.submitAnswer());