Esempio n. 1
0
string Game::checkandAdd(int player, int id)
{
	vector<int> resultado;
	if(player==1)
	{

		resultado.push_back(122);
		resultado.push_back(124);
		resultado.push_back(126);
		int size=gameBoard->getJogador1Size();
		for(int i=0;i<size;i++)
		{
			if(gameBoard->getJogador1PodAt(i)->getX() == 2 && (gameBoard->getJogador1PodAt(i)->getY()==2 || gameBoard->getJogador1PodAt(i)->getY()==4 || gameBoard->getJogador1PodAt(i)->getY()==6))
			{

				for(int z=0;z<resultado.size();z++)
				{
					if(resultado[i] == 100+(gameBoard->getJogador1PodAt(i)->getX()*10)+gameBoard->getJogador1PodAt(i)->getY())
					{
						resultado.erase(resultado.begin()+i);
					}
				}
			}
		}

	}
	else
	{

		resultado.push_back(162);
		resultado.push_back(164);
		resultado.push_back(166);
		int size=gameBoard->getJogador2Size();
		for(int i=0;i<size;i++)
		{
			if(gameBoard->getJogador2PodAt(i)->getX() == 2 && (gameBoard->getJogador2PodAt(i)->getY()==2 || gameBoard->getJogador2PodAt(i)->getY()==4 || gameBoard->getJogador2PodAt(i)->getY()==6))
			{

				for(int z=0;z<resultado.size();z++)
				{
					if(resultado[i] == 100+(gameBoard->getJogador2PodAt(i)->getX()*10)+gameBoard->getJogador2PodAt(i)->getY())
					{
						resultado.erase(resultado.begin()+i);
					}
				}

			}
		}

	}
	if(resultado.size() > 0){
		return criastring(resultado);
	}
	else{
		return "-1";
	}
	
}
Esempio n. 2
0
string Game::checkProngs(int player, string dir)
{
	vector<int> res;
	if(player==1)
	{
		for(int i=0;i<gameBoard->getJogador1Size();i++)
		{
			Pod* aux=gameBoard->getJogador1PodAt(i);

			bool encontra=false;
			for(int j=0;j<aux->getDirsSize();j++)
			{
				if(aux->getDirsAt(j)->getDir()==dir)
				{
					encontra=true;
					break;
				}
			}
			if(!encontra)
			{
				res.push_back(aux->getId()+10);
			}
		}

	}
	else
	{
		for(int i=0;i<gameBoard->getJogador2Size();i++)
		{
			Pod* aux=gameBoard->getJogador2PodAt(i);

			bool encontra=false;
			for(int j=0;j<aux->getDirsSize();j++)
			{
				if(aux->getDirsAt(j)->getDir()==dir)
				{
					encontra=true;
					break;
				}
			}
			if(!encontra)
			{
				res.push_back(aux->getId()+20);
			}
		}

	}
	if(res.size() > 0){
		return criastring(res);
	}
	else{
		return "-1";
	}
}
Esempio n. 3
0
int main()
{

	criarSocket();
	Game g1=Game();
	g1.createBoard();
	char* recebido;
	vector<int> valoresRecebidos;

	recebido=leMensagem();
	cout << "P: " << recebido << endl;

	int dificuldade;

	if(strcmp(recebido,"PP")==0)
	{
		dificuldade = -1;
		enviaMensagem("recebidopp");
	}
	else if(strcmp(recebido,"PC")==0)
	{
		enviaMensagem("recebidopc");
		srand ((int)(time(NULL)));
		recebido=leMensagem();
		cout << "DIFICULDADE: " << recebido << endl;
		dificuldade=divideStringEmInt(recebido)[0];
		enviaMensagem("recebidodif");
	}
	
	bool entrou = false;
	int count=0;
	while(1)
	{

		//char recebido2[256];
		//fgets(recebido2, sizeof(recebido2), stdin);
		recebido = leMensagem();
		cout << "RECEBEU : '" << recebido << endl;

		valoresRecebidos = divideStringEmInt(recebido);
		string aEnviar = g1.executaOperacao(valoresRecebidos);
		//g1.displayBoard();

		if(g1.getBoard()->checkend() && valoresRecebidos[0]==2)
		{
			aEnviar="666";
			g1=Game();
			g1.createBoard();
			entrou = true;

		}
		cout<<aEnviar<<endl;
		enviaMensagem(aEnviar.c_str());
		cout << "Enviou '" << aEnviar << "'"<< endl;

		aEnviar.clear();


		string toSend;

		//TODO: nao possibilidade 
		if(dificuldade != -1 && (valoresRecebidos[0] == 1 || valoresRecebidos[0] == 2 || valoresRecebidos[0] == 3) && !entrou){
			char* recebido2=leMensagem();

			cout << "PRIMEIRA RECECAO: " << recebido2 << endl;
			
			bool one=g1.checkcomprong();
			bool two=g1.checkcommove();
			bool three=g1.checkcomadd();

			vector<int>possibilidades; 

			if(one==true)
			{
				possibilidades.push_back(1);
			}
			if(two==true)
			{
				possibilidades.push_back(2);

			}
			if(three==true)
			{
				possibilidades.push_back(3);
			}

			int first=geraRandom(possibilidades);

			int second;
			int third;
			//int x;
			//int y;
			vector<int> possibilidades2;
			vector<int> possibilidades3;
			vector<int> resultados;
			resultados.push_back(first);
			switch(first)
			{
			case 1: 
				possibilidades2 = g1.getPodsToAddProng();
				second=geraRandom(possibilidades2);
				resultados.push_back(second+20);
				possibilidades3 = g1.getDirsToAddProng(second);
				third=geraRandom(possibilidades3);
				resultados.push_back(third);
				toSend=criastring(resultados);
				break;
			case 2: //pode move pod        || IDPECA(2) X Y
				possibilidades2 = g1.getPodsWithProng();
				second=geraRandom(possibilidades2);
				possibilidades3 = g1.getHousesToMove(second);
				resultados.push_back(second+20);
				third=geraRandom(possibilidades3);
				resultados.push_back(third/10);
				resultados.push_back(third%10);
				toSend=criastring(resultados);
				break;
			case 3: //pod adicionar pod    || IDPECA(2) X Y
				possibilidades2 = g1.getPodsToAdd();
				second=geraRandom(possibilidades2);
				resultados.push_back(second+20);
				possibilidades3 = g1.getOctiPlaces();
				third=geraRandom(possibilidades3);
				resultados.push_back(third/10);
				resultados.push_back(third%10);
				toSend=criastring(resultados);
				break;
			}
			//system("cls");
			enviaMensagem(toSend.c_str());
			cout<<"O COM SUGERE:"<<toSend.c_str()<<endl;

			if(first==2){
				string aEnviar2 = "";
				if(g1.getBoard()->checkend())
				{
					aEnviar2="666";
					
					g1=Game();
					g1.createBoard();
					entrou = false;
				}
				enviaMensagem(aEnviar2.c_str());
			}
			valoresRecebidos = divideStringEmInt(toSend.c_str());
			aEnviar = g1.executaOperacao(valoresRecebidos);
		}
		//g1.displayBoard();
		//count++;
	}




	system("pause");

	return 0;
}
Esempio n. 4
0
string Game::checkMovimentos(int player,int id)
{
	string res;
	vector<int> resultados;
	int number=0;
	if(player==1)
	{
		bool podfound=false;
		int size=gameBoard->getJogador1Size();
		for(int i=0;i<size;i++)
		{
			Pod * aux=gameBoard->getJogador1PodAt(i);
			if(aux->getId()==id)
			{
				podfound=true;
				int sizedir= aux->getDirsSize();
				for(int j=0;j<sizedir;j++)
				{
					if(aux->getDirsAt(j)->getDir()=="n")
					{
						if(aux->getX()<=6)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getX()==aux->getX()+1 && aux->getY()==gameBoard->getJogador1PodAt(z)->getY())
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getX()==aux->getX()+1 && aux->getY()==gameBoard->getJogador2PodAt(z)->getY())
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+((aux->getX()+1)*10)+aux->getY());
							}
						}
					}
					else if(aux->getDirsAt(j)->getDir()=="s")
					{
						if(aux->getX()>=2)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getX()==aux->getX()-1 && aux->getY()==gameBoard->getJogador1PodAt(z)->getY())
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getX()==aux->getX()-1 && aux->getY()==gameBoard->getJogador2PodAt(z)->getY())
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+((aux->getX()-1)*10)+aux->getY());
							}	
						}
					}
					else if(aux->getDirsAt(j)->getDir()=="e")
					{
						if(aux->getY()>=2)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getY()==aux->getY()-1 && aux->getX()==gameBoard->getJogador1PodAt(z)->getX())
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getY()==aux->getY()-1 && aux->getX()==gameBoard->getJogador2PodAt(z)->getX())
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+(aux->getX()*10)+(aux->getY()-1));
							}	
						}

					}
					else if(aux->getDirsAt(j)->getDir()=="o")
					{
						if(aux->getY()<=6)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getY()==aux->getY()+1 && aux->getX()==gameBoard->getJogador1PodAt(z)->getX())
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getY()==aux->getY()+1 && aux->getX()==gameBoard->getJogador2PodAt(z)->getX())
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+(aux->getX()*10)+(aux->getY()+1));
							}	
						}	

					}
					else if(aux->getDirsAt(j)->getDir()=="ne")
					{
						if(aux->getX()<=6 && aux->getY()>=2)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getX()==aux->getX()+1 && gameBoard->getJogador1PodAt(z)->getY()==aux->getY()-1)
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getX()==aux->getX()+1 && gameBoard->getJogador2PodAt(z)->getY()==aux->getY()-1)
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+((aux->getX()+1)*10)+(aux->getY()-1));
							}
						}

					}
					else if(aux->getDirsAt(j)->getDir()=="no")
					{
						if(aux->getX()<=6 && aux->getY()<=6)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getX()==aux->getX()+1 && gameBoard->getJogador1PodAt(z)->getY()==aux->getY()+1)
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getX()==aux->getX()+1 && gameBoard->getJogador2PodAt(z)->getY()==aux->getY()+1)
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+((aux->getX()+1)*10)+(aux->getY()+1));
							}
						}

					}
					else if(aux->getDirsAt(j)->getDir()=="se")
					{
						if(aux->getX()>=2 && aux->getY()>=2)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getX()==aux->getX()-1 && gameBoard->getJogador1PodAt(z)->getY()==aux->getY()-1)
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getX()==aux->getX()-1 && gameBoard->getJogador2PodAt(z)->getY()==aux->getY()-1)
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+((aux->getX()-1)*10)+(aux->getY()-1));
							}	
						}


					}
					else if(aux->getDirsAt(j)->getDir()=="so")
					{
						if(aux->getX()>=2 && aux->getY()<=6)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getX()==aux->getX()-1 && gameBoard->getJogador1PodAt(z)->getY()==aux->getY()+1)
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getX()==aux->getX()-1 && gameBoard->getJogador2PodAt(z)->getY()==aux->getY()+1)
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+((aux->getX()-1)*10)+(aux->getY()+1));
							}	
						}



					}
				}
				break;
			}

		}

		if(!podfound)
		{

			cout<<"NAO ENCONTROU TURNO 1"<<endl;

			bool encontra1=false;
			bool encontra2=false;
			bool encontra3=false;
			int sizeJogador1=gameBoard->getJogador1Size();
			for(int i=0;i<sizeJogador1;i++)
			{
				if(gameBoard->getJogador1PodAt(i)->getX()==2)
				{
					if(gameBoard->getJogador1PodAt(i)->getY()==2)
					{
						encontra1=true;
					}
					else if(gameBoard->getJogador1PodAt(i)->getY()==4)
					{
						encontra2=true;
					}
					else if(gameBoard->getJogador1PodAt(i)->getY()==6)
					{
						encontra3=true;
					}


				}


			}
			if(!encontra1)
			{
				resultados.push_back(100+2*10+2);
			}
			if(!encontra2)
			{
				resultados.push_back(100+2*10+4);
			}
			if(!encontra3)
			{
				resultados.push_back(100+2*10+6);
			}
		}

	}
	else
	{


		bool podfound=false;
		int size=gameBoard->getJogador2Size();
		for(int i=0;i<size;i++)
		{
			Pod * aux=gameBoard->getJogador2PodAt(i);
			if(aux->getId()==id)
			{
				podfound=true;
				int sizedir= aux->getDirsSize();
				for(int j=0;j<sizedir;j++)
				{
					if(aux->getDirsAt(j)->getDir()=="n")
					{


						if(aux->getX()>=2)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getX()==aux->getX()-1 && aux->getY()==gameBoard->getJogador1PodAt(z)->getY())
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getX()==aux->getX()-1 && aux->getY()==gameBoard->getJogador2PodAt(z)->getY())
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+((aux->getX()-1)*10)+(aux->getY()));
							}
						}
					}
					else if(aux->getDirsAt(j)->getDir()=="s")
					{
						if(aux->getX()<=6)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getX()==aux->getX()+1 && aux->getY()==gameBoard->getJogador1PodAt(z)->getY())
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getX()==aux->getX()+1 && aux->getY()==gameBoard->getJogador2PodAt(z)->getY())
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+((aux->getX()+1)*10)+aux->getY());
							}	
						}
					}
					else if(aux->getDirsAt(j)->getDir()=="e")
					{
						if(aux->getY()<=6)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getY()==aux->getY()+1 && aux->getX()==gameBoard->getJogador1PodAt(z)->getX())
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getY()==aux->getY()+1 && aux->getX()==gameBoard->getJogador2PodAt(z)->getX())
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+(aux->getX()*10)+(aux->getY()+1));
							}	
						}

					}
					else if(aux->getDirsAt(j)->getDir()=="o")
					{
						if(aux->getY()>=2)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getY()==aux->getY()-1 && aux->getX()==gameBoard->getJogador1PodAt(z)->getX())
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getY()==aux->getY()-1 && aux->getX()==gameBoard->getJogador2PodAt(z)->getX())
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+(aux->getX()*10)+(aux->getY()-1));
							}	
						}

					}
					else if(aux->getDirsAt(j)->getDir()=="ne")
					{

						if(aux->getX()>=2 && aux->getY()<=6)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getX()==aux->getX()-1 && gameBoard->getJogador1PodAt(z)->getY()==aux->getY()+1)
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getX()==aux->getX()-1 && gameBoard->getJogador2PodAt(z)->getY()==aux->getY()+1)
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+((aux->getX()-1)*10)+(aux->getY()+1));
							}	
						}


					}
					else if(aux->getDirsAt(j)->getDir()=="no")
					{
						if(aux->getX()>=2 && aux->getY()>=2)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getX()==aux->getX()-1 && gameBoard->getJogador1PodAt(z)->getY()==aux->getY()-1)
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getX()==aux->getX()-1 && gameBoard->getJogador2PodAt(z)->getY()==aux->getY()-1)
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+((aux->getX()-1)*10)+(aux->getY()-1));
							}	
						}

					}
					else if(aux->getDirsAt(j)->getDir()=="se")
					{
						if(aux->getX()<=6 && aux->getY()<=6)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getX()==aux->getX()+1 && gameBoard->getJogador1PodAt(z)->getY()==aux->getY()+1)
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getX()==aux->getX()+1 && gameBoard->getJogador2PodAt(z)->getY()==aux->getY()+1)
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+((aux->getX()+1)*10)+(aux->getY()+1));
							}
						}

					}
					else if(aux->getDirsAt(j)->getDir()=="so")
					{
						if(aux->getX()<=6 && aux->getY()>=2)
						{
							int size2=gameBoard->getJogador1Size();
							int size3=gameBoard->getJogador2Size();


							//Pecas do 1
							bool encontra=false;
							for(int z=0;z<size2;z++)
							{
								if(gameBoard->getJogador1PodAt(z)->getX()==aux->getX()+1 && gameBoard->getJogador1PodAt(z)->getY()==aux->getY()-1)
								{
									encontra=true;
								}
							}
							//Pecas do 2
							for(int z=0;z<size3;z++)
							{
								if(gameBoard->getJogador2PodAt(z)->getX()==aux->getX()+1 && gameBoard->getJogador2PodAt(z)->getY()==aux->getY()-1)
								{
									encontra=true;
								}
							}

							if(!encontra)
							{
								resultados.push_back(100+((aux->getX()+1)*10)+(aux->getY()-1));
							}
						}

					}
				}
				break;
			}

		}	

		if(!podfound)
		{


			cout<<"NAO ENCONTROU TURNO 2"<<endl;

			bool encontra1=false;
			bool encontra2=false;
			bool encontra3=false;
			int sizeJogador2=gameBoard->getJogador2Size();
			for(int i=0;i<sizeJogador2;i++)
			{
				if(gameBoard->getJogador2PodAt(i)->getX()==6)
				{
					if(gameBoard->getJogador2PodAt(i)->getY()==2)
					{
						encontra1=true;
					}
					else if(gameBoard->getJogador2PodAt(i)->getY()==4)
					{
						encontra2=true;
					}
					else if(gameBoard->getJogador2PodAt(i)->getY()==6)
					{
						encontra3=true;
					}


				}


			}
			if(!encontra1)
			{
				resultados.push_back(100+6*10+2);
			}
			if(!encontra2)
			{
				resultados.push_back(100+6*10+4);
			}
			if(!encontra3)
			{
				resultados.push_back(100+6*10+6);
			}
		}


	}
	if(resultados.size()>0)
		return criastring(resultados);
	else
		return "-1";
}