题目都有的吧,我就不打了。
样例输入:
3 1 1 3 0 2 1
样例输出:
2
代码标程:
#include<bits/stdc++.h>
using namespace std;
vector<int> a;
vector<int> b;
int main()
{
int n,ans=0,w,e;
cin>>n;
long long s[2]={0};
int t[2]={0};
for(int i=0;i<n;i++)
{
cin>>w>>e;
a.push_back(w);
b.push_back(e);
s[b[i]]+=a[i];
}
if(!s[0]||!s[1])
{
cout<<(s[0]+s[1])<<endl;
return 0;
}
for(int i=0;i<n;i++)
{
int x=b[i],y=b[i]^1;
if(s[y]&&!(s[x]*t[y]%s[y]))
{
int z=s[x]*t[y]/s[y]-t[x];
if(z>=1&&z<=a[i]) ans++;
}
t[x]+=a[i];
}
cout<<ans;
return 0;
}