记录编号 |
529514 |
评测结果 |
AAAAAAAAAA |
题目名称 |
[USACO Dec12] 相遇与问候 |
最终得分 |
100 |
用户昵称 |
Theresis |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.129 s |
提交时间 |
2019-04-09 20:17:09 |
内存使用 |
5.06 MiB |
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
long long b,e,bs,es,bjs=0,ejs=0,ans=0;
long long bip=0,eip=0;
bool bsz[1000000],esz[1000000];
int main(){
freopen("greetings.in","r",stdin);
freopen("greetings.out","w",stdout);
memset(bsz,false,sizeof(bsz));
memset(esz,false,sizeof(esz));
cin>>b>>e;
char pd;
for(long long i=0;i<b;i++){
cin>>bs>>pd;
if(pd=='L'){
for(long long i=bjs;i<bs+bjs;i++){
bsz[i]=false;
}
bjs+=bs;
}
else{
for(long long i=bjs;i<bs+bjs;i++){
bsz[i]=true;
}
bjs+=bs;
}
}
for(long long i=0;i<e;i++){
cin>>es>>pd;
if(pd=='L'){
for(long long i=ejs;i<es+ejs;i++){
esz[i]=false;
}
ejs+=es;
}
else{
for(long long i=ejs;i<es+ejs;i++){
esz[i]=true;
}
ejs+=es;
}
}
// for(long long i=0;i<bjs;i++){
// if(bsz[i]==false){
// cout<<"←"<<endl;
// }
// else cout<<"→"<<endl;
// }
// cout<<" wgbgvrbvjrebvgorvbeivjhberhvbirh";
// for(long long i=0;i<ejs;i++){
// if(esz[i]==false){
// cout<<"←"<<endl;
// }
// else cout<<"→"<<endl;
// }
long long max;
if(bjs>ejs){
max=bjs;
}
else max=ejs;
bool fenli=false;
for(long long i=0;i<max;i++){
if(bsz[i]==true)bip++;
else if(bjs>i)bip--;
if(esz[i]==true)eip++;
else if(ejs>i)eip--;
if(bip==eip){
if(fenli==true){
ans++;
fenli=false;
}
}
else fenli=true;
}
cout<<ans;
return 0;
}