亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? xiaqi.c

?? 黑白棋程序: 3*3的棋盤上面下棋
?? C
字號:
//習題1.5
//
// 前提己方先下子,呵呵

#include "stdio.h"
#include "string.h"

int b[9][9]={0};			//t[number of state][number of zuobiao]
double Vtrain[9]={0.0};
//初始化線性函數
//x0自己有威脅的獨立棋子數目,x1對方,
//x2自己有威脅的連子數目,x3對方
//w[5]系數
double w[5]={6,6,6,6,6};	//初始化系數,這里的系數初始化為6
int x[4]={0,0,0,0};


main()
{
	void Performance();
	int Critic();
	void Generalizer();
	int Xiaqi();

	int Count=0;			//表征訓練次數
	double rate=0.0;
	
	int i,j;
	int p;

	for (Count=5;Count<=500;Count=Count+5)
	{
		rate=0;
		for (j=0;j<5;j++)
			w[j]=6;
		for (i=0;i<Count;i++)
		{
			Performance();
			p=Critic();
			Generalizer(p);
			//printf("%d-->",i);
			//for (j=0;j<5;j++)
			//	printf("%lf   ",w[j]);
			rate=rate+Xiaqi();
			//printf("\n");
		}
		rate=rate/Count;
		printf("%lf\n",rate);
	}
}



#include "math.h"
void Performance()
{
	int getX();			//獲得x值
	int i,j,m;
	int qizi=1;			//1 or -1
	int best=0;
	double v,Vmax;

	//初始化棋盤
	for (i=0;i<9;i++)
		for (j=0;j<9;j++)
			b[i][j]=0;

	for (i=0;i<9;i++)
	{	
		Vmax=-99999;	//這里設置了一個"足夠小"的Value

		if (i!=0)		//新的一步需要先copy前一步的棋局
			for (m=0;m<9;m++)
				b[i][m]=b[i-1][m];

		for (j=0;j<9;j++)
		{
			if (b[i][j]==0)
			{
				b[i][j]=qizi;
				if (getX(b[i],qizi)==1)
				{
					v=w[0]*x[0]+w[1]*x[1]+w[2]*x[2]+w[3]*x[3]+w[4];
					if (Vmax<v)
					{
						Vmax=v;
						best=j;
					}
				}
				else
				{
					b[i][j]=qizi;
					goto end;
				}
				b[i][j]=0;
			}
		}

		b[i][best]=qizi;

		if (qizi==1)
			qizi=-1;
		else
			qizi=1;
	}

end:	qizi=0;
}



//int型的函數,返回可供給訓練的棋局數量-1,即訓練樣例個數-1
int Critic()
{
	int i,p;
	int getX();

	for (i=0;i<9;i++)
		Vtrain[i]=0.0;

	for (i=0;i<4;i++)
	{
		p=2*i;
		if (getX(b[p+1],1)==1)
		{
			if (getX(b[p+2],1)==1)
				Vtrain[p]=w[0]*x[0]+w[1]*x[1]+w[2]*x[2]+w[3]*x[3]+w[4];
			else
			{
				Vtrain[p]=getX(b[p+2],1);
				return (i);
			}
		}
		else
		{
			Vtrain[p]=getX(b[p+2],1);
			return(i);
		}
	}

	return (i-1);
}




//countB獲得訓練樣例的(個數-1)
void Generalizer(int countB)
{
	int getX();	//獲得x值

	int i,j;
	int xx;
	double V1,V2=0,Vx;
	for (i=0;i<=countB;i++)
	{
		V1=Vtrain[2*i];
		xx=getX(b[2*i],1);
		V2=w[0]*x[0]+w[1]*x[1]+w[2]*x[2]+w[3]*x[3]+w[4];
		Vx=V1-V2;

		for (j=0;j<4;j++)
		{
			//printf("%d:%lf->",j,w[j]);
			w[j]=w[j]+0.05*Vx*x[j];		//這里序數取作0.05
			//printf("%lf\n",w[j]);			
		}
	}

}
		

//獲得棋盤當前狀態,即更新x[]
int getX(int bb[9],int n)
{

	int sum;
	int i;
	int result=1;

	for (i=0;i<4;i++)
		x[i]=0;

	for (i=0;i<=6;i=i+3)
	{
		sum=bb[i]+bb[i+1]+bb[i+2];
		if (sum==3)
			result=100;
		else if (sum==-3)
			result=-100;
		else if (sum==2)
			x[2]++;
		else if (sum==-2)
			x[3]++;
		else if (sum==1 && (bb[i]==0 || bb[i+1]==0))
			x[0]++;
		else if (sum==-1 && (bb[i]==0 || bb[i+1]==0))
			x[1]++;
	}

	for (i=0;i<=2;i++)
	{
		sum=bb[i]+bb[i+3]+bb[i+6];
		if (sum==3)
			result=100;
		else if (sum==-3)
			result=-100;
		else if (sum==2)
			x[2]++;
		else if (sum==-2)
			x[3]++;
		else if (sum==1 && (bb[i]==0 || bb[i+3]==0))
			x[0]++;
		else if (sum==-1 && (bb[i]==0 || bb[i+3]==0))
			x[1]++;
	}


		sum=bb[0]+bb[4]+bb[8];
		if (sum==3)
			result=100;
		else if (sum==-3)
			result=-100;
		else if (sum==2)
			x[2]++;
		else if (sum==-2)
			x[3]++;
		else if (sum==1 && (bb[0]==0 || bb[4]==0))
			x[0]++;
		else if (sum==-1 && (bb[0]==0 || bb[4]==0))
			x[1]++;

		sum=bb[2]+bb[4]+bb[6];
		if (sum==3)
			result=100;
		else if (sum==-3)
			result=-100;
		else if (sum==2)
			x[2]++;
		else if (sum==-2)
			x[3]++;
		else if (sum==1 && (bb[2]==0 || bb[4]==0))
			x[0]++;
		else if (sum==-1 && (bb[2]==0 || bb[4]==0))
			x[1]++;

	if (n==-1)
	{
		sum=x[0];  x[0]=x[1];  x[1]=sum;
		sum=x[2];  x[2]=x[3];  x[3]=sum;
	}

	return (result);
}


//和固定函數wp[]對弈的過程
#include "math.h"
int Xiaqi()
{
	int getX();	//獲得x值
	int i,j,m;
	int qizi=1;		//1 or -1
	int best=0;
	double v,Vmax;
	//double wp[5]={5.538570,-15.946661,19.276676,-19.876809,6.000000};
	double wp[5]={6,-5,9,2,66};		//定義的固定函數,對弈的對手

	//初始化棋盤
	for (i=0;i<9;i++)
		for (j=0;j<9;j++)
			b[i][j]=0;

	for (i=0;i<9;i++)		//最多可能進行九步
	{	
		Vmax=-99999;

		if (i!=0)
			for (m=0;m<9;m++)
				b[i][m]=b[i-1][m];

		for (j=0;j<9;j++)	//一步最多要搜索9個位置
		{
			if (b[i][j]==0)
			{
				b[i][j]=qizi;
				if (getX(b[i],qizi)==1)
				{
					if (qizi==1)
						v=w[0]*x[0]+w[1]*x[1]+w[2]*x[2]+w[3]*x[3]+w[4];
					else
						v=wp[0]*x[0]+wp[1]*x[1]+wp[2]*x[2]+wp[3]*x[3]+wp[4];
					if (Vmax<v)
					{
						Vmax=v;
						best=j;
					}
				}
				else
				{
					b[i][j]=qizi;
					if (qizi==1)
					{	
						//printf("You win!\n");
						return (1);
					}
					else
					{	
						//printf("You lose!\n");	
						return (0);
					}
				}
				b[i][j]=0;
			}
		}

		b[i][best]=qizi;

		if (qizi==1)
			qizi=-1;
		else
			qizi=1;
	}

	//printf(":-)!\n");	
	return (0);

}


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩中文字幕亚洲一区二区va在线| 中文字幕一区不卡| 欧美丝袜丝交足nylons图片| 粉嫩高潮美女一区二区三区 | 国产91富婆露脸刺激对白| 99精品欧美一区| 岛国一区二区三区| 国产成人自拍高清视频在线免费播放| 九色综合狠狠综合久久| 久久精工是国产品牌吗| 国产自产高清不卡| 国产ts人妖一区二区| 成人永久看片免费视频天堂| 成年人午夜久久久| 91在线观看地址| 欧美视频一区在线观看| 日韩欧美一区二区在线视频| 亚洲精品在线电影| 中文字幕在线不卡一区| 亚洲一级二级三级| 热久久国产精品| 国产精品1区二区.| 91亚洲精品久久久蜜桃网站| 欧美日韩情趣电影| 久久这里只有精品视频网| 国产精品欧美经典| 亚洲成年人网站在线观看| 美国毛片一区二区三区| 成人精品视频.| 777久久久精品| 欧美激情中文字幕| 亚洲香肠在线观看| 国产在线观看一区二区| 91国产成人在线| 精品久久久久久久人人人人传媒 | 亚洲一区免费在线观看| 免费人成精品欧美精品| 成人午夜激情视频| 欧美日韩国产成人在线免费| 国产亚洲精品超碰| 亚洲第一主播视频| 成人永久看片免费视频天堂| 91精品福利在线一区二区三区 | 欧美成人伊人久久综合网| 国产精品免费丝袜| 免费高清不卡av| 色欧美片视频在线观看在线视频| 日韩一区和二区| 亚洲另类色综合网站| 国产精品综合av一区二区国产馆| 色婷婷狠狠综合| 国产精品免费丝袜| 国产中文字幕一区| 欧美一区二区在线播放| 亚洲另类一区二区| 波多野洁衣一区| 久久久久国产一区二区三区四区 | 亚洲中国最大av网站| 国产成人免费视频精品含羞草妖精| 欧美三级欧美一级| 最新中文字幕一区二区三区| 国产在线看一区| 欧美电影免费观看高清完整版在| 亚洲国产精品一区二区www| 成人a级免费电影| 久久久久久久综合色一本| 日韩av电影免费观看高清完整版 | 久久久99免费| 国产91综合网| 久久精品亚洲精品国产欧美kt∨| 日韩国产精品久久久| 91久久奴性调教| 亚洲精品乱码久久久久久黑人| 成人av在线看| 中文字幕日韩一区二区| 高清国产一区二区| 国产精品色哟哟| 高清av一区二区| 国产精品第四页| eeuss鲁片一区二区三区| 国产精品国产精品国产专区不蜜| eeuss影院一区二区三区| 中文字幕亚洲成人| 色狠狠一区二区三区香蕉| 亚洲一区二区三区视频在线播放| 在线观看日韩电影| 日本强好片久久久久久aaa| 欧美二区在线观看| 精品一区二区三区免费视频| 久久这里只精品最新地址| 懂色av中文一区二区三区 | 欧美久久久影院| 日本麻豆一区二区三区视频| 欧美xfplay| 成人一区在线观看| 一区二区三区**美女毛片| 欧美人与禽zozo性伦| 狠狠色丁香婷婷综合| 国产精品久久久久久久久果冻传媒 | 26uuu国产在线精品一区二区| 国产一区 二区| 亚洲精品国产视频| 在线成人av网站| 国产99久久久久久免费看农村| 亚洲人成伊人成综合网小说| 这里只有精品视频在线观看| 国产sm精品调教视频网站| 亚洲欧美经典视频| 精品嫩草影院久久| 91视频国产资源| 日本视频中文字幕一区二区三区| 久久久久久久久久久久久女国产乱| 97成人超碰视| 美女视频黄频大全不卡视频在线播放| 精品国产自在久精品国产| 色哟哟国产精品免费观看| 蜜臀久久99精品久久久画质超高清 | 国产欧美综合在线观看第十页| 91国产免费观看| 国产老妇另类xxxxx| 亚洲国产一区二区三区青草影视| 精品国产污网站| 欧美综合在线视频| 成人性生交大片免费看视频在线 | 精品一区二区三区av| 亚洲人吸女人奶水| 国产片一区二区| 欧美一二三在线| 在线观看一区日韩| 成人激情免费网站| 激情小说亚洲一区| 日韩一区精品视频| 一级精品视频在线观看宜春院| 久久久久99精品国产片| 欧美三级蜜桃2在线观看| 91小视频在线免费看| 国产99久久久国产精品潘金网站| 免费看欧美女人艹b| 午夜久久福利影院| 亚洲国产裸拍裸体视频在线观看乱了 | 免费在线一区观看| 视频一区免费在线观看| 一区二区三区不卡在线观看 | 久久久久久久久久久久久女国产乱 | 欧美性视频一区二区三区| 成人18视频日本| 丁香啪啪综合成人亚洲小说| 国产一区二区三区免费看 | 性久久久久久久| 亚洲福利一二三区| 亚洲自拍偷拍欧美| 亚洲在线免费播放| 亚洲一区二三区| 亚洲国产综合色| 日日噜噜夜夜狠狠视频欧美人| 亚洲成人福利片| 日韩电影免费一区| 视频一区中文字幕国产| 欧美aⅴ一区二区三区视频| 蜜臀av在线播放一区二区三区| 日韩中文字幕1| 毛片不卡一区二区| 国产一区欧美一区| 成+人+亚洲+综合天堂| 91免费在线看| 欧美日韩一区在线| 日韩免费视频一区| 久久精品日产第一区二区三区高清版 | 日本视频在线一区| 国产资源在线一区| av午夜精品一区二区三区| 91久久人澡人人添人人爽欧美| 欧美疯狂做受xxxx富婆| 日韩女优毛片在线| 国产精品乱人伦中文| 一区二区三区资源| 日本亚洲天堂网| 国产精品中文字幕欧美| 一本在线高清不卡dvd| 91精品婷婷国产综合久久竹菊| 精品国产一区二区三区忘忧草 | 91麻豆文化传媒在线观看| 欧美午夜片在线看| 日韩欧美黄色影院| 国产精品网站在线播放| 亚洲一卡二卡三卡四卡| 久久99久久99| 色哟哟在线观看一区二区三区| 91精选在线观看| 中文字幕亚洲电影| 美日韩一区二区| 91麻豆国产在线观看| 精品伦理精品一区| 亚洲乱码国产乱码精品精可以看 | 国产suv精品一区二区883| 欧美三级在线播放| 国产精品美女视频| 免费人成精品欧美精品| 91传媒视频在线播放| 日韩欧美国产wwwww|