Advertisement
MatveyL

add as

Jan 24th, 2017
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.21 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4. vector<char>reka;
  5. int n,m;
  6. const int INF = 10000000;
  7. int solve(int x, int y){
  8. if(reka[x] == -1){
  9. return 0;
  10. }
  11. if(x == n){
  12. if( y == 0){
  13. return 1;
  14. }
  15. else{
  16. return 0;
  17. }
  18. }
  19.  
  20. if (reka[x] == 'L' && y == 0){
  21. int kek1 = solve(x+1,0) ;
  22. int kek2 = solve(x+1,1) ;
  23. int rt = min(kek1, kek2);
  24. int p;
  25. if(rt == kek1){
  26. p = 0;
  27. }
  28. else{
  29. p = 1;
  30. }
  31. return solve(x+1, p) + 1;
  32. }
  33. if (reka[x] == 'R' && y == 1){
  34. int kek1 = solve(x+1,0);
  35. int kek2 = solve(x+1,1) ;
  36. int rt = min(kek1, kek2);
  37. int p;
  38. if(rt == kek1){
  39. p = 0;
  40. }
  41. else{
  42. p = 1;
  43. }
  44. return solve(x+1, p) + 1;
  45. }
  46. if (reka[x] == 'B'){
  47. return solve(x+1, y) + 1;
  48. }
  49. return solve(x+1,y);
  50.  
  51. }
  52. int main(){
  53. string a;
  54. cin>>a;
  55. n = a.size();
  56. for(int i = 0; i < a.size(); ++i){
  57. reka.push_back(a[i]);
  58. }
  59.  
  60. int yt = solve(0,0) ;
  61. cout<<yt<<endl;
  62. return 0;
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement