题目描述
给出仅由a - z,A - Z,0 - 9,*,|等字符组成的字符串SS
每两个||为 一对
换言之,第一个|和第二个|为一对,第三个和第四个||为一对,以此类推
请你统计不在|对间S中*的数目
每个竖线|都会恰好只属于一个对
输入格式
输入一行一个字符串S
输出格式
输出一个整数,表示不在|对间S中*的数目
输入样例
yo|uar|e**|b|e***au|tifu|l
输出样例
5
数据规模
对于全部的数据1≤∣S∣≤1000
代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
string s;
int a=1,i=0,sum=0,jj=0,f=1;
cin>>s;
while(1){
if(s[i]=='|'){
f=1;
for(int j=i+1;j<s.size();j++){
//cout<<j<<" ";
if(s[j]=='|')
{
jj=j;
//cout<<jj<<endl;
f=0;
break;
}
//cout<<f<<endl;
if(f)s[j]='0';
if(j>s.size()) break;
}
i=jj;
}
i++;
if(i>s.size()) break;
}
for(int j=0;j<s.size();j++){
if(s[j]=='*') sum++;
}
cout<<sum;
//cout<<s;
return 0;
}
挺简单的
标签:星号,样例,break,int,jj,竖线,对间,size From: https://blog.csdn.net/sx114514/article/details/142737794