现在的位置: 首页 > 综合 > 正文

ACM之车位选择

2018年09月04日 ⁄ 综合 ⁄ 共 604字 ⁄ 字号 评论关闭
文章目录

题目描述:

你在寻找一个停车的车位,只要满足下面的条件,你可以把车停在任意位置:
1. 不能直接停在私人车道上,
2. 不能直接停在公共汽车站上,
3. 不能停在公共汽车站前5米的地方
4. 不能停在公共汽车站前10米的地方
5. 不能直接停在岔道上
6. 不能停在岔道前5米的地方
7. 不能停在岔道后5米的位置

街道将被用一个字符串来代替,每一个字符代表一段5米的距离。所以,第一个字符代表街道最开始的5米,下一个字符代表下一个5米,以此类推。用’D’代表私人车道,‘B’代表公共汽车站,’S’代表岔道,‘-’代表街道的其他部分。求出这样的街道上有多少适合停车的车位。


输入样例:

---B--S-D--S--
DDBDDBDDBDD

输出样例:

4
0

输入描述:

输入数据有多组。 每组输入数据只有一行字符串(字符串长度小于等于50),代表街道。


输出描述:

每组数据对应一行输出,可供停车的车位数量。

#include<iostream> using namespace std; int main() { char p[50]; int i,sum=0; while(cin>>p) {   for(i=0;i<strlen(p);i++)   if(p[i]=='-')   if(p[i+1]!='B'&&p[i+2]!='B'&&p[i+1]!='S'&&p[i-1]!='S')       sum++;    cout<<sum<<endl;   sum=0; } return 0; }

抱歉!评论已关闭.