题目大意是:输入正整数n,按从小到大的顺序输出所有形如abcde/fghij=n的表达式,其中a-j恰好为数字0-9的一个排列,2=<n<=79.
杨丽输入:
62
输出:
79546/01283=62
94736/01528=62
//这是一道非常没含量的简单的枚举的题,所以我没把他算在寒假前刷题里,之所以把他写出来是因为这是我第一次真正的开始系统的看关于暴力算法的东西,暑假的时候打了酱油,现在就是在赎罪,老是听十元大师说暴力办法解决这道题,感觉暴力似乎是个很牛逼的东西。今天就写个最傻逼的代码了。
下面是代码:
#include<stdio.h>
#include<stdlib.h>
#include<iostream>
using namespace std;
bool test(int i,int j)
{
int t[10]={0};
int a=0;
while(i)
{
t[a++]=i%10;
i=i/10;
}
while(j)
{
t[a++]=j%10;
j=j/10;
}
for(int m=0;m<10;m++)
for(int n=m+1;n<10;n++)
if(t[n]==t[m])
return false;
return true;
}
int main()
{
int n,k;
while(cin>>n&&n>=2&&n<=79)
{
k=1234;
while(k<98765)
{
int j=k*n;
if(j<100000)
{
if(test(j,k))
{
cout<<j<<"/";
if(k<10000)
cout<<"0";
cout<<k<<"="<<n<<endl;
}
}
++k;
}
}
return 0;
}