[蓝桥杯2016初赛]方格填数 (水题)

纯暴力!!!

#include<bits/stdc++.h>
using namespace std;
int vis[15];
int main()
{
	int ans=0;
	for(int a=0;a<=9;a++)
	{
		for(int b=0;b<=9;b++)
		{
			if((a+1!=b)&&(a-1!=b))
			{
			   for(int c=0;c<=9;c++)
			   {
			   	   if((b+1!=c)&&(b-1!=c))
			   	   {
			   	      for(int d=0;d<=9;d++)
					  {
					      if((a+1!=d)&&(a-1!=d))
						  {
					          for(int e=0;e<=9;e++)
							  {
							       if((a+1!=e)&&(a-1!=e)&&(d+1!=e)&&(d-1!=e)&&(b+1!=e)&&(b-1!=e))
								   {
								       for(int f=0;f<=9;f++)
									   {
									       if((a+1!=f)&&(a-1!=f)&&(b+1!=f)&&(b-1!=f)&&(c+1!=f)&&(c-1!=f)&&(e+1!=f)&&(e-1!=f))
										   {
										       for(int g=0;g<=9;g++)
											   {
										            if((c+1!=g)&&(c-1!=g)&&(b+1!=g)&&(b-1!=g)&&(f+1!=g)&&(f-1!=g))
													{
											             for(int h=0;h<=9;h++)
														 {
														 	if((d+1!=h)&&(d-1!=h)&&(e+1!=h)&&(e-1!=h))
														 	{
														 	   for(int i=0;i<=9;i++)
																{
																    if((d+1!=i)&&(d-1!=i)&&(e+1!=i)&&(e-1!=i)&&(f+1!=i)&&(f-1!=i)&&(h+1!=i)&&(h-1!=i))	
																    {
																    	  for(int j=0;j<=9;j++)
																    	  {
																    	  	if((e+1!=j)&&(e-1!=j)&&(f+1!=j)&&(f-1!=j)&&(g+1!=j)&&(g-1!=j)&&(i+1!=j)&&(i-1!=j))
																    	  	{
																    	  		memset(vis,0,sizeof(vis));
																    	  		  vis[a]=1;
																    	  		  vis[b]=1;
																    	  		  vis[c]=1;
																    	  		  vis[d]=1;
																    	  		  vis[e]=1;
																    	  		  vis[f]=1;
																    	  		  vis[g]=1;
																    	  		  vis[h]=1;
																    	  		  vis[i]=1;
																    	  		  vis[j]=1;
																    	  		  int num=0;
																    	  		  for(int i=0;i<=9;i++)
																    	  		  {
																    	  		      if(vis[i]==1)
																					  {
																					      num++;		
																					  }	
																				  }
																				  if(num==10)
																				  {
																				  	ans++;
																				  }
																			}
																		  }
																	}
																}	
															 }
														 }			
													} 	   	
											   }    	
										   }	
								       }   	
								   }	
					   		  }	  	
						   }	 	
					  }   	
				   }
			   }	
			}
		}
	}
	printf("%d\n",ans);
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值