Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <fstream>
- using namespace std;
- ifstream fin("orademate.in");
- ofstream fout("orademate.out");
- int n,tip,x[100];
- void afis(int n)
- {
- for(int i=1;i<=n;++i)
- fout<<x[i];
- fout<<'\n';
- }
- void back1(int k)
- {
- for(int i=0;i<=9;++i)
- {
- if((i==0&&k==1&&n>1)||i%2==k%2)
- continue;
- x[k]=i;
- if(k==n)
- afis(n);
- else
- back1(k+1);
- }
- }
- void back2(int k)
- {
- for(int i=x[k-1];i<=9;++i)
- {
- if(i==k )
- continue;
- x[k]=i;
- if(k==n)
- afis(n);
- else
- back2(k+1);
- }
- }
- int main()
- {
- fin>>tip>>n;
- x[0]=1;
- if(tip==1)
- {
- if(n==1)
- for(int i=0;i<=9;i+=2)
- fout<<i<<'\n';
- else
- back1(1);
- }
- else
- {
- if(n==1)
- for(int i=0;i<=9;++i)
- if(i==1)
- continue;
- else
- fout<<i<<'\n';
- else
- back2(1);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement