第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

暴力——猜數(shù)字(hdu1172)

標(biāo)簽:
算法

题目链接:


解题思路:暴力,就是暴力。

https://img1.sycdn.imooc.com//5b530c8b000117c801200112.jpg


/*暴力出奇迹,逆向试数 把所有的四位数都判断一遍,如果解=1,则输出,否则Not sure ,竟然能AC,我也是醉了*/ #include<stdio.h>int main(){	int a[110],b[110],c[110];      //a=问答中的数,b=猜对的个数,c=正确的数 	int i,s,k;                        //s所有的四位数	int n;                          //n次问答	int a1,a2,a3,a4;                 //s数中提取的四位数 	int b1,b2,b3,b4;                 //a[i]测试数中提取的四位数 	int bb,cc;                       //判断条件b和条件c 是否符合 	int e[11],d[11];                //记录该数出现次数,因为问答次数很多,需要更改数组和模版记录数组 	int z,j,l;                       //z为符合状态, j为符合的个数,l保存符合的数 	while(~scanf("%d",&n),n)	{	for(i=1;i<=n;i++)	scanf("%d%d%d",&a[i],&b[i],&c[i]);		j=0;	for(s=1000;s<=9999;s++)         //s从1000到9999开始暴力试数,题中说四位数,所以不算0开头 	{	 	z=1;                          //状态开始为合理(1) 	 	for(i=0;i<10;i++)             //d[i]记录s提取数出现的次数 先全部置零 	 	d[i]=0;	 		 	a4=s%10;                      //a4~a1为 s数中提取的四位数	a3=s/10%10;	a2=s/100%10;	a1=s/1000;		d[a1]++;                      //提取后,该数出现的次数进行累加 	d[a2]++;	d[a3]++;	d[a4]++;	/*  	    printf("%d~%d~%d~%d\n",a1,a2,a3,a4);	    for(i=0;i<10;i++)	 	printf("%d ",e[i]);	 	printf("\n");	  */	for(i=1;i<=n;i++)                  //开始测试n种问答是否合理 	{	    	bb=0;                          //b条件和c条件置零 	    	cc=0;	    	b4=a[i]%10;                    //提取测试数的四位数 	b3=a[i]/10%10;	b2=a[i]/100%10;	b1=a[i]/1000;	// printf("%d~%d~%d~%d\n",b1,b2,b3,b4);	for(k=0;k<10;k++)             //将模版d[i]赋值给e[i] 	e[k]=d[k];                    //因为e[i]每次循环都要复原,所以需要模版d[i] 	if(e[b1])                     //如果e[i]出现过,那么bb+1,同时e[i]本身次数-1 	{	        	bb++;	        	e[b1]--;	}	if(e[b2])	{	        	bb++;	        	e[b2]--;	}	if(e[b3])	{	        	bb++;	        	e[b3]--;	}	if(e[b4])	{	        	bb++;	        	e[b4]--;	}		if(a1==b1)                //c条件判断	cc++;	if(a2==b2)	cc++;	if(a3==b3)	cc++;	if(a4==b4)	cc++;	//printf("%d,%d\n",bb,cc);	if(bb!=b[i]||cc!=c[i])          //如果出现过不符合的情况,z状态=0,跳出本数的测试 	{	     	z=0;	     	break;	}	}	if(z)                              //如果经过所有的问答后,z状态还=1,该数符合条件 	{	   	l=s;                               //先记录先该数 	j++;                                //计算符合条件的总个数 }}//printf("%d\n",j);	if(j==1)                             //j只能等于1,若大于则答案不唯一,若=0则无解 	printf("%d\n",l);	else	printf("Not sure\n");}return 0;}


點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消