蓝桥杯训练:算法提高 排列式

  • Post author:
  • Post category:其他


问题描述:

算法提高 排列式

时间限制:1.0s   内存限制:256.0MB

问题描述

7254是一个不寻常的数,因为它可以表示为7254 = 39 x 186,这个式子中1~9每个数字正好出现一次

输出所有这样的不同的式子(乘数交换被认为是相同的式子)

结果小的先输出;结果相同的,较小的乘数较小的先输出。

输出格式

每一行输出一个式子,式子中的等号前后空格、乘号(用字母x代表)前后空格

较小的乘数写在前面

样例输出

问题中的式子在结果中会出现一行如下:

7254 = 39 x 186

作者:何知令

完成时间:2017年12月18日

解题思想,深搜,使用了循环加递归的方式

代码:

#include <iostream>
using namespace std;
int vis[15];
int num[15];
int sum,num1,num2;
bool judge()
{
    sum=num[1]*1000+num[2]*100+num[3]*10+num[4];
    num1=num[5]*10+num[6];
    num2=num[7]*100+num[8]*10+num[9];
    if(sum==num1*num2)
        return true;
    else
        return false;
}
void fun(int dept)
{
   



版权声明:本文为qq_36203090原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。