标题:9数算式
观察如下的算式:
9213 x 85674 = 789314562
左边的乘数和被乘数正好用到了1~9的所有数字,每个1次。
而乘积恰好也是用到了1~9的所有数字,并且每个1次。
请你借助计算机的强大计算能力,找出满足如上要求的9数算式一共有多少个?
注意:
- 总数目包含题目给出的那个示例。
- 乘数和被乘数交换后作为同一方案来看待。
从0-9全排,然后把0当成乘号,求出结果之后,判断乘积是不是各个位数不一样的。再输出 。
用到的方法:
indexOf
有四种格式
- public int indexOf(int ch): 返回指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
- public int indexOf(int ch, int fromIndex): 返回从 fromIndex 位置开始查找指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
- int indexOf(String str): 返回指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
- int indexOf(String str, int fromIndex): 返回从 fromIndex位置开始查找指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
valueOf
valueOf() 方法有以下几种不同形式:
- valueOf(boolean b): 返回 boolean 参数的字符串表示形式。.
- valueOf(char c): 返回 char 参数的字符串表示形式。
- valueOf(char[] data): 返回 char 数组参数的字符串表示形式。
- valueOf(char[] data, int offset, int count): 返回 char
数组参数的特定子数组的字符串表示形式。 - valueOf(double d): 返回 double 参数的字符串表示形式。
- valueOf(float f): 返回 float 参数的字符串表示形式。
- valueOf(int i): 返回 int 参数的字符串表示形式。
- valueOf(long l): 返回 long 参数的字符串表示形式。
- valueOf(Object obj): 返回 Object 参数的字符串表示形式。
tocharArray()
- toCharArray() 方法将字符串转换为字符数组。
toString()
- toString() 方法用于返回以一个字符串表示的 Number 对象值。
如果方法使用了原生的数据类型作为参数,返回原生数据类型的 String 对象值。
如果方法有两个参数, 返回用第二个参数指定基数表示的第一个参数的字符串表示形式。
append()
- Stringbuffer 有append()方法 Stringbuffer其实是动态字符串数组
append()是往动态字符串数组添加,跟“xxxx”+“yyyy”相当那个‘+’号
跟String不同的是Stringbuffer是放一起的 ,String1+String2
和Stringbuffer1.append(“yyyy”)虽然打印效果一样,但在内存中表示却不一样 :String1+String2
存在于不同的两个地址内存,Stringbuffer1.append(Stringbuffer2)放在一起
add()
- Set.add()方法将一个元素添加到该集合中,返回true。如果集合中已经存在此元素,不做任何动作并返回false
split()
- split() 方法根据匹配给定的正则表达式来拆分字符串。
注意: . 、 $、 | 和 * 等转义字符,必须得加 \。
注意:多个分隔符,可以用 | 作为连字符。
import java.util.HashSet;
import java.util.Set;
public class Nine {
static int[] book = new int[10];//下边有注释
static int[] result = new int[10