Ejemplo n.º 1
0
void algo(){
		LISTINT listOne;
	for(int i = 0 ; i < game_num ; ++i ){
		game_fig[i] = arith();
	}
	befor = remain ;
	remain = 0;
	rem = 0;
	if(game_num  % 2  == 0)
	{
		for(int i = 0 ; i + 1 <= game_num ; i = i+2 )
		{
			if( game_fig[i] == rock ){
				remain++;
				rem++;
				 if(game_fig[i+ 1] == rock)
				 {
				//	out << i << " and " << i+1 <<"あいこ" <<endl;
					listOne.push_back(i);
					listOne.push_back(i+1);
					remain++ ;
				}
				else if(game_fig[i+ 1] == scis)
				{
				//	out << i << "の勝ち" << endl;
					listOne.push_back(i);
				}else if(game_fig[i+ 1] == fabr)
				{
				//	out << i+1 << "の勝ち" << endl;
					listOne.push_back(i+1);
				}
			}
			else if(game_fig [i] == scis)
			{
				rem++;
				remain++;
				 if(game_fig[i + 1] == scis)
				{
				//	out << i << " and " << i+1 << "あいこ" <<endl;
					listOne.push_back(i);
					listOne.push_back(i+1);
					remain++ ;
				}else if(game_fig[i+ 1] == fabr)
				{
				//	out << i << "の勝ち" << endl;
					listOne.push_back(i);
				}else if(game_fig[i+ 1] == rock)
				{
				//	out << i+1 << "の勝ち" << endl;
					listOne.push_back(i+1);
				}
			}
			else if(game_fig[i] == fabr)
			{
				rem++;
				remain++;
				if(game_fig[i +1] == fabr)
				{
				//	out << i << " and "<< i+1 << "あいこ" <<endl;
					listOne.push_back(i);
					listOne.push_back(i+1);
					remain++ ;
				}else if(game_fig[i+ 1] ==rock)
				{
				//	out << i << "の勝ち" << endl;
					listOne.push_back(i);
				}else if(game_fig[i+ 1] == scis)
				{
				//	out << i+1 << "の勝ち" << endl;
					listOne.push_back(i+1);
				}
			}
		}
	}
	else
	{
			for(int i = 0 ; i + 2 <= game_num ; i = i+2 )
			{
			if( game_fig[i] == rock )
			{
				rem++;
				remain++;
				if(game_fig[i+ 1] == rock)
				{
					//out << i << " and " << i+1 <<"あいこ" <<endl;
					listOne.push_back(i);
					listOne.push_back(i+1);
					remain++ ;
				}else if(game_fig[i+ 1] == scis)
				{
				//	out << i << "の勝ち" << endl;
					listOne.push_back(i);
				}else if(game_fig[i+ 1] == fabr)
				{
				//	out << i+1 << "の勝ち" << endl;
					listOne.push_back(i+1);
				}
			}else if(game_fig [i] == scis){
				rem++;
				remain++;
					  if(game_fig[i + 1] == scis){
				//	out << i << " and " << i+1 << "あいこ" <<endl;
					listOne.push_back(i);
					listOne.push_back(i+1);
					remain++ ;
				}else if(game_fig[i+ 1] == fabr){
				//	out << i << "の勝ち" << endl;
					listOne.push_back(i);
				}else if(game_fig[i+ 1] == rock){
				//	out << i+1 << "の勝ち" << endl;
					listOne.push_back(i+1);
				}
			}else if(game_fig [i] == fabr){
				rem++;
				remain++;
					  if(game_fig[i +1] == fabr){
				//	out << i << " and "<< i+1 << "あいこ" <<endl;
					listOne.push_back(i);
					listOne.push_back(i+1);
					remain++ ;
				}else if(game_fig[i+ 1] ==rock){
				//	out << i << "の勝ち" << endl;
					listOne.push_back(i);
				}else if(game_fig[i+ 1] == scis){
				//	out << i+1 << "の勝ち" << endl;
					listOne.push_back(i+1);
				}
			}
		}
		remain ++;
		listOne.push_back(game_num);
}
	LISTINT::iterator ix; 
	 num = 1;
	 /*
	 out << "remain element: \n" << endl;
		    for (ix = listOne.begin(); ix != listOne.end(); ++ix){ 
		       out << *ix << "\t"; 
		       if( num % 5 == 0 )
		        {
		        	out<< "\n"<< endl;
		        }
		        
		  		num++;
		  	}*/
		  	/*
		  	out << "\n" << endl;
			out <<"remain:" << remain<< endl;
			out <<"rem:" <<rem <<"\n" <<endl;
			*/
			
			listOne.erase(listOne.begin(),listOne.end());
			count_rem += rem;
}