Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int st[20],c1,c2;
- void succesor(int k,int&as)
- {
- if(st[k]<2)
- {
- as=1;
- st[k]++;
- }
- else as=0;
- }
- void valid(int k, int&ev)
- {
- ev=1;
- int x=0,y=0;
- for(int i=1;i<=k;i++)
- if(st[i]==1)
- x++;
- else y++;
- if(k==c1+c2&&x!=c2&&y!=c1)
- ev=0;
- }
- int solutie (int k)
- {
- if(k==c1+c2)
- return 1;
- else return 0;
- }
- void tipar ()
- {
- for (int i=1;i<=c1+c2;i++)
- if(st[i]==1)
- cout<<c1;
- else cout<<c2;
- cout<<endl;
- }
- int main()
- {int as,ev,k;
- cin>>c1>>c2;
- if(c1>c2)
- swap(c1,c2);
- k=1;
- st[k]=0;
- while(k>0)
- {
- do
- {
- succesor(k,as);
- if(as==1)
- valid(k,ev);
- }
- while(as==1&&ev==0);
- if(as==1)
- if(solutie(k)==1)
- tipar();
- else {k++;
- st[k]=0;
- }
- else k--;
- }
- return 0;}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement