Quasi Binary

#include<bits/stdc++.h>
using namespace std;
int n,t;
int a[1000010];
int h(int x){
	int s=0,k=1;
	while(x!=0){
		if(x%10>=1){
			s+=k;
		}
		x/=10;
		k*=10;
	}
	return s;
}
int main(){
	cin>>n;
	while(n!=0){
		int z=h(n);
		a[++t]=z;
		n-=z;
	}
	cout<<t<<endl;
	for(int i=1;i<=t;i++){
		cout<<a[i]<<" ";
	}
	return 0;
}

Permutation

#include<bits/stdc++.h>
using namespace std;
int n,k;
int main(){
	cin>>n>>k;
	for(int i=1;i<=n;i++){
		if(i<=k){
			cout<<2*i<<" "<<2*i-1<<" ";
		}else{
			cout<<2*i-1<<" "<<2*i<<" ";
		}
	}
	return 0;
}