OK, the 1st line consists of a declaration of a pointer of size int, and then an allocation of an array of 13 ints. It is exactly the same as this:
1 2
int *outcomes; // Declare a pointer to an int
outcomes = newint[13]; // Set the pointer to point to the first of 13 integers.
Basically, that is a way of making a variable size of array, due to the normal way (int outcomes[13]) requiring the array size to be a compile-time constant. With this method, you could replace the "13" with a variable of your choice.
The outcomes[6]++ is simply a way of adding one to the 7th element of the array, though in this case that value is undefined to start with.