C++根据条件生成两个位置序列

<<> G> 分序列{//类版本,不搞那么难.
    < M, F,...I> 常式  动作(){
    //返回两个,都是位置.
    常式  N=型长...(I);常式  K=M-N-1;
     常式(G<F>::动作()){//满足条件
         常式(!N)//0个,最后1个.
            {序列<K>(),序列<>()};
        {//第1位为位置
             t=动作<M,I...>();
             e=连序<K>(t.第一);//k是变化的
            {e,t.第二};
        }//就是这样,F放前.t放后面.
    }{//不满足G,放后面.
         常式(!N)
            {序列<>(),序列<K>()};
        {
             t=动作<M,I...>();
             e=连序<K>(t.第二);
            {t.第一,e};
        }
    }//加上过滤.
    }
};//还是不行,向量[I],这里
//生成符合条件的序列.符合为1,不符合为0

<<> G,...J>常式  分二序(){
    常式  M=型长...(J);
     分序列<G>:: 动作<M,J...>();
}//包装一下.为满足和不满足条件的位置.
posted @ 2021-12-20 09:16  zjh6  阅读(24)  评论(0)    收藏  举报  来源