Cod sursa(job #636023)

Utilizator ELHoriaHoria Cretescu ELHoria Data 19 noiembrie 2011 16:21:57
Problema Minesweeper Scor 10
Compilator cpp Status done
Runda .com 2011 Marime 0.67 kb
#include <fstream>
#include <iomanip>
#include <cstdlib>

using namespace std;

ifstream fin("minesweeper.in");
ofstream fout("minesweeper.out");

int N , M , D[16][16] , nr , timp , t , nm;

void f(int x,int y)
{
	if(nr==nm) return;
	t++;
	 if(D[x][y]==1) D[x][y] = 2 ,  nr++;
	 else
		if(D[x][y]==2) D[x][y] = 0 , nr--;
		else
			D[x][y]++;
	 f(rand() % N + 1,rand()%M + 1);
}

int main()
{
	fin>>N>>M;
	nm = N*M;
	for(int i=1;i<=1000;++i)
	{
		t = 0;
		f(rand()%N + 1 ,rand()%M+1);
			timp+=t; t= 0;
		for(int x=1;x<=N;++x)
			for(int y=1;y<=M;++y)
				D[x][y] = 0;
		nr = 0;
	}
	fout<<fixed<<setprecision(6)<<(double)timp/1000;
	return 0;
}