import java.util.Scanner;
public class Testa {
public static void main(String[] args) {
/*
System.out.println("请输入n:(代表求多少个连续的合数)");
Scanner reader=new Scanner(System.in);
int n=reader.nextInt();
*/
int total=0;
for(int i=1;i<=98;i++){
for(int j=i+1;j<=9999;j++){
if(i<j){
boolean a=f(i);
if(a){
boolean b=f(j);
if(b){
boolean ok=ff(i,j);
if(ok){
total++;
System.out.println(i+"*"+j+"="+(i*j));
}
}
}
}
}
}
System.out.println(total);
}
//去重
public static boolean f(int n){
String result=String.valueOf(n);
int length=result.length();
for(int i=0;i<length-1;i++){
for(int j=i+1;j<length;j++){
char a=result.charAt(i);
char b=result.charAt(j);
if(a==b){
return false;
}
}
}
return true;
}
//判断是否符合条件
public static boolean ff(int a,int b){
int x[]=new int[10];
for(int i=0;i<10;i++){
x[i]=0;
}
int min=a;
int max=b;
int c=min*max;
if(c>99999||c<1000){
return false;
}
boolean ok=f(c);
if(ok){
//对第一个数
int temp=min;
int temp2=temp%10;
x[temp2]=x[temp2]+1;
temp=temp/10;
while(temp>=10){
temp2=temp%10;
x[temp2]=x[temp2]+1;
temp=temp/10;
}
if(temp!=0){
x[temp]=x[temp]+1;
}
//对第二个数
temp=max;
temp2=temp%10;
x[temp2]=x[temp2]+1;
temp=temp/10;
while(temp>=10){
temp2=temp%10;
x[temp2]=x[temp2]+1;
temp=temp/10;
}
//要注意此处的判断,10位与9位的不同
if(temp!=0){
x[temp]=x[temp]+1;
}
//对第三个数
temp=c;
temp2=temp%10;
x[temp2]=x[temp2]+1;
temp=temp/10;
while(temp>=10){
temp2=temp%10;
x[temp2]=x[temp2]+1;
temp=temp/10;
}
if(temp!=0){
x[temp]=x[temp]+1;
}
for(int i=0;i<10;i++){
if(x[i]!=1){
return false;
}
}
}else{
return false;
}
return true;
}