Advertisement
a53

back_cp

a53
Jan 1st, 2022
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.60 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int n,m,X[45];
  5.  
  6. void afisare()
  7. {
  8. for(int i=1;i<=n+m;i++)
  9. if(X[i]==0) cout<<'C';
  10. else cout<<'P';
  11. cout<<"\n";
  12. }
  13.  
  14. int ok(int k)
  15. {
  16. int s=0;
  17. for(int i=1;i<=k;i++)
  18. s=s+X[i];
  19. if(s>m || k-s>n) return 0;
  20. if(k>2 && X[k-2]==0 && X[k-1]==1 && X[k]==0)
  21. return 0;
  22. return 1;
  23. }
  24.  
  25. void back(int k)
  26. {
  27. for(int i=0;i<=1;i++)
  28. {
  29. X[k]=i;
  30. if(ok(k))
  31. if(k==m+n) afisare();
  32. else back(k+1);
  33. }
  34. }
  35.  
  36. int main()
  37. {
  38. cin>>n>>m;
  39. back(1);
  40. return 0;
  41. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement