- UID
- 428881
- 在线时间
- 小时
- 注册时间
- 2009-3-18
- 最后登录
- 1970-1-1
- 主题
- 帖子
- 性别
- 保密
|
117题答案错误。忽略了cases like:1X1Y, 这里的X和Y可以是2-9的数字。
例如:1212, 可以是1,2,12 也可以是12,1,2。
这部分重复一共有8*8=64 种。 所以最后结果应该是寂静里的6548-64=6484
顺道自己写了个小程序验证了一下:
import java.util.Set;
import java.util.TreeSet;
public class Solution {
public static int combination(int n) {
Set<Integer> set = new TreeSet<Integer>();
for(int i = 1; i <= n; i++) {
for(int j = 1; j <= n; j++) {
for(int k = 1; k <= n; k++) {
if(i != j && i != k && j != k) {
StringBuilder sb = new StringBuilder();
sb.append(i);
sb.append(j);
sb.append(k);
set.add(Integer.valueOf(sb.toString()));
}
}
}
}
int count = 0;
for(Integer i : set) {
count++;
}
return count;
}
public static void main(String[] args) {
int n = 20;
int result = combination(n);
System.out.println(result);
}
}
有兴趣的可以自己run一遍。 |
|