#include<bits/stdc++.h>
using namespace std;
#define int long long
#define endl '\n'
#define inf 0x3f3f3f3f
const int mod=1e9+7;
const int N=2e5+5;
int n,q;
void solve(){
cin>>n>>q;
string s;
cin>>s;
s="0"+s+"0";
int ans=0,l=0,r;
for(auto i:s){
if(i=='1'){
if(l==0) l=i;
r=i;
}
else if(l!=0) ans++,l=0;
}
while(q--){
int x,y;
cin>>x>>y;
int t=0;
if(s[x]=='1'&&s[x-1]=='1') t++;
if(s[y]=='1'&&s[y+1]=='1') t++;
if(s[x]=='1'&&s[y+1]=='1') t--;
if(s[y]=='1'&&s[x-1]=='1') t--;
cout<<ans+t<<endl;
}
}
signed main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
int tt=1;
// cin>>tt;
while(tt--) solve();
return 0;
}
Reverse(思维&模拟)--牛客小白月赛84-D
最新推荐文章于 2024-09-29 16:46:50 发布