题意就是:给两串数字,然后根据两串数字相同位数的数字是否相同,如果是相同则为0不同为1;
其实真的感觉之前的和后面的根本没什么关系的说吖。。。主要是后面
比如样例吧,第一个是数字的数字的总个数,第二个是数字串中1的个数,其实就是按照顺序输出全排列就是了。
#include <cstdio> #include <algorithm> #include <iostream> using namespace std; int main() { int t; scanf("%d",&t); while(t--) { int length,num; scanf("%d%d",&length,&num); string out=""; for(int i=0;i<length-num;i++) { out+="0"; } for(int i=0;i<num;i++) { out+="1"; } cout<<out<<endl; while(next_permutation(out.begin(),out.end())) cout<<out<<endl; if(t) cout<<endl; } }