//risk simulation
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <string>
using namespace std;

int rollDice();

int main()
{
    int winner; //1 = attacker, 2 = defender
    int AttackerLoses = 0;
    int DefenderLoses = 0;
    int count = 0;
    int Adie1 = 0;
    int Adie2 = 0;
    int Ahdie1 = 0;
    int Ahdie2 = 0;
    int Adie3 = 0;
    int Ddie1 = 0;
    int Ddie2 = 0;
    int Dhdie1 = 0;
    int Dhdie2 = 0;
    
    while( count < 10000000 )
    {
        srand ( time(0) * count );
        Adie1 = rollDice();
        Adie2 = rollDice();
        Adie3 = rollDice();
        Ddie1 = rollDice();
        Ddie2 = rollDice();
        
        if(Ddie1 > Ddie2) // order the defender's dice. I could have used an array, but it's early in the morning.
        {
                 Dhdie1 = Ddie1;
                 Dhdie2 = Ddie2;         
        }
        else
        {
                 Dhdie1 = Ddie1;
                 Dhdie2 = Ddie2;  
        }
        
        //get two highest attack die
        if(Adie1 > Adie2)
        {
                 Ahdie1 = Adie1;
                 Ahdie2 = Adie2;
                 if(Adie3 > Adie1)
                 {
                          Ahdie2 = Ahdie1;
                          Ahdie1 = Adie3;
                 }
                 else if(Adie3 > Adie2)
                 {         
                          Ahdie2 = Adie3;
                 }
        }
        if(Adie2 > Adie1)
        {
                 Ahdie1 = Adie2;
                 Ahdie2 = Adie1;
                 if(Adie3 > Adie2)
                 {
                          Ahdie2 = Ahdie2;
                          Ahdie1 = Adie3;
                 }
                 else if(Adie3 > Adie1)
                 {         
                          Ahdie2 = Adie3;
                 }
        }
        
        //find winner
        if(Dhdie1 >= Ahdie1)
                  AttackerLoses++;
        else
                  DefenderLoses++;
                  
        if(Dhdie2 >= Ahdie2)
                  AttackerLoses++;
        else
                  DefenderLoses++;
        count++;
    }
     cout << "Attacker lost this many armies: " << AttackerLoses << endl;
     cout << "Defender lost this many armies: " << DefenderLoses << endl;
        return 0;
}

int rollDice()
{
    int die = 1 + rand() % 6;
    return die;
}


