62,614
社区成员
发帖
与我相关
我的任务
分享
import java.io.*;
import java.util.*;
class Test {
public static void main(String[] args) {
try {
String filename = "dingwei.txt";
BufferedReader br = new BufferedReader(new InputStreamReader(
new FileInputStream(filename)));
for (String buf = br.readLine(); buf != null; buf = br.readLine()) {
String[] data = buf.split("/");
char[][] c = new char[data.length][];
for (int i=0; i<c.length; i++) {
c[i] = data[i].toCharArray();
}
doCombine(c);
System.out.println();
}
br.close();
} catch (Throwable e) {
e.printStackTrace();
}
}
public static void doCombine(char[][] c) {
int[] idx = new int[c.length];
Arrays.fill(idx, 0);
List<String> result = new ArrayList<String>();
while (true) {
StringBuilder sb = new StringBuilder();
for (int i=0; i<idx.length; i++) {
sb.append(c[i][idx[i]]);
}
result.add(sb.toString());
idx[idx.length-1]++;
for (int i=idx.length-1; i>0; i--) {
if (idx[i] == c[i].length) {
idx[i] = 0;
idx[i-1]++;
}
}
if (idx[0] == c[0].length) {break;}
}
for (int i=0; i<result.size(); i++) {
System.out.printf("%s ", result.get(i));
if ((i+1)%10 == 0) {System.out.println();}
}
System.out.println();
}
}
import java.util.*;
class Test {
public static void main(String[] args) {
int[] a = {1,2,3,4, 5};
int[] b = {2,3,4};
int[] c = {7,8,9};
int[][] all = {a, b, c};
int[] idx = new int[all.length];
Arrays.fill(idx, 0);
List<String> result = new ArrayList<String>();
while (true) {
StringBuilder sb = new StringBuilder();
for (int i=0; i<idx.length; i++) {
sb.append(all[i][idx[i]]);
}
result.add(sb.toString());
idx[idx.length-1]++;
for (int i=idx.length-1; i>0; i--) {
if (idx[i] == all[i].length) {
idx[i] = 0;
idx[i-1]++;
}
}
if (idx[0] == all[0].length) {break;}
}
for (int i=0; i<result.size(); i++) {
System.out.printf("%s ", result.get(i));
if ((i+1)%10 == 0) {System.out.println();}
}
}
}