zoukankan      html  css  js  c++  java
  • 牛式 Prime Cryptarithm

    题目描述

    下面是一个乘法竖式,如果用我们给定的那n个数字来取代*,可以使式子成立的话,我们就叫这个式子牛式。

    在这里插入图片描述

    数字只能取代*,当然第一位不能为0,况且给定的数字里不包括0。

    注意一下在美国的学校中教的“部分乘积”,第一部分乘积是第二个数的个位和第一个数的积,第二部分乘积是第二个数的十位和第一个数的乘积.

    写一个程序找出所有的牛式。

    输入输出格式

    输入格式:
    Line 1:数字的个数n。

    Line 2:N个用空格分开的数字(每个数字都属于{1,2,3,4,5,6,7,8,9})。

    输出格式:
    共一行,一个数字。表示牛式的总数。

    输入输出样例

    输入样例#1:
    5
    2 3 4 6 8

    输出样例#1:
    1
    .
    .
    .
    .
    分析
    直接暴力枚举
    .
    .
    .
    .
    .
    程序:

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    using namespace std;
    int ans=0,a[10];
    
    void work()
    {
    	for (int i=1;i<=9;i++)
    	{
    		if (a[i]==1)
    		for (int j=1;j<=9;j++)
    		{
    			if (a[j]==1)
    			for (int k=1;k<=9;k++)
    			{
    				if (a[k]==1)
    				for (int l=1;l<=9;l++)
    				{
    					if (a[l]==1)
    					for (int o=1;o<=9;o++)
    					{
    						if (a[o]==1)
    						{
    							int x=(i*100+j*10+k)*o;
    							if (x>=1000) break;
    							if (a[x/100]==1&&a[(x%100)/10]==1&&a[x%10]==1)
    							{
    								int y=(i*100+j*10+k)*l;
    								if (y>=1000) break;
    								if (a[y/100]==1&&a[(y/10)%10]==1&&a[y%10]==1)
    								{
    									int z=y*10+x;
    									if (z>=10000) break;
    									if (a[z/1000]==1&&a[(z/100)%10]==1&&a[(z%100)/10]==1&&a[z%10]==1) ans++; 
    								}
    							} 
    						}
    					}
    				}
    			}
    		}
    	}
    }
    
    
    int main()
    {
    	int n;
    	scanf("%d",&n);
    	memset(a,0,sizeof(a));
    	for (int i=1;i<=n;i++)
    	{
    		int w;
    		scanf("%d",&w);
    		a[w]=1;
    	}
    	work();
    	printf("%d",ans);
    	return 0;
    }
    
  • 相关阅读:
    shop++之language
    shop++改造之ResponseEntity的坑
    shop++改造之Filter类
    mysql关联模糊查询他表字段
    mysql一张表多个字段关联另一张表查询
    html页面导出为excel表格
    layui打印html页面转成pdf
    jQuery视频格式的验证
    jQuery图片灯箱和视频灯箱
    空间谱专题16:信号个数估计
  • 原文地址:https://www.cnblogs.com/YYC-0304/p/10292818.html
Copyright © 2011-2022 走看看