摘要

题目链接 难度等级 完成状态 完成分数 最后编辑时间 需要注意
Domino Effect ★☆☆☆☆ 答案正确 100 2015-02-24 16:41:23

题意

多米诺骨牌,有的向左倾斜有的向右倾斜,让他们全部倒下,最后还有几个立着。

题解

  • 统计一串连续没有倾斜的个数,然后碰到倾斜的的时候统计即可。

代码

405B.cpp代码已折叠
展开折叠内容
显示/移除行号
  1. #include<cstdio>
  2. #include<iostream>
  3. #include<string>
  4. #include<vector>
  5. #include<algorithm>
  6. #include<cstring>
  7. #include<cmath>
  8. #include<set>
  9. using namespace std;
  10. #define sqr(x) ((x)*(x))
  11. #define dsi(n) int n;scanf("%d",&n)
  12. #define si(n) scanf("%d",&n)
  13. #define f(i,n) for(int i=1;i<=n;++i)
  14. #define fi(n) f(i,n)
  15. #define f0(i,n) for(int i=0;i!=n;++i)
  16. #define fd(i,n) for(int i=n;i>=1;--i)
  17. #define ci const int&
  18. #define foreach(i,s) for(typeof(s.begin()) i=s.begin();i!=s.end();++i)
  19. int n;
  20. string s;
  21. int main()
  22. {
  23. cin>>n;
  24. cin>>s;
  25. int ans=0;
  26. int p=0;//0最左边1有个R
  27. int se=0;//连续的...
  28. foreach(i,s)
  29. {
  30. if(*i=='L')
  31. {
  32. if(p){ans+=(se%2);}
  33. p=0;
  34. se=0;
  35. }
  36.  
  37. if(*i=='R')
  38. {
  39. if(!p){ans+=se;}
  40. p=1;
  41. se=0;
  42. }
  43. if(*i=='.')
  44. ++se;
  45. }
  46. if(!p)ans+=se;
  47. cout<<ans;
  48. }

著作权声明[编辑]

关于[编辑]