编程实现:两个一,两个2.两个7,两个1之间有一个其他数,两个2之间有2个其他数.两个7之间有7个其他数

编程实现:两个1,两个2....两个7,两个1之间有一个其他数,两个2之间有2个其他数...两个7之间有7个其他数。
编程实现:两个1,两个2....两个7,两个1之间有一个其他数,两个2之间有2个其他数...两个7之间有7个其他数。
当时自己写的时候理解错误了,理解成两个1之间至少有一个其他数,两个2之间至少有2个其他数....这种了,这种我实现了。
但不符合要求。求大神编程实现.
JAVA \C\C++都可.
------解决思路----------------------
我觉得楼主已经实现的比原来的这样要难一点啊,难的都有了,简单的还不会么
------解决思路----------------------
同意楼上编程实现:两个一,两个2.两个7,两个1之间有一个其他数,两个2之间有2个其他数.两个7之间有7个其他数
------解决思路----------------------
参考下这个代码:

class C {
    static void findSo(int[] a, int n) {
        for (int i = 0; i < 14; i++) {
            if (i + n + 1 < 14 && a[i] == 0 && a[i + n + 1] == 0) {
                a[i] = n;
                a[i + n + 1] = n;

                if (n == 7) {
                    for (int j = 0; j < 14; j++) {
                        System.out.print(a[j]);
                    }
                    System.out.print("\n");
                } else {
                    findSo(a, n + 1);
                }
                a[i] = 0;
                a[i + n + 1] = 0;
            }
        }
    }

    public static void main(String[] args) {
        int[] a = new int[14];
        findSo(a, 1);
    }
}