题目
题解思路
我的想法是用两个连续1区间的首减去尾,这样的话,代码实现就比较麻烦了。
闫总直接取一个指针,来更新答案,这样相邻的求出来是0,就可以不用考虑用两个了。妙啊!
if ( re != -1 )
ans += i - re -1;
re = i;
AC代码
#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;
int main ()
{
int t ;
cin>>t;
while(t--)
{
int n,re = -1 , ans = 0 , p;
cin>>n;
for (int i = 1 ; i <= n ; i++ )
{
cin>>p;
if(p)
{
if ( re != -1 )
ans += i - re -1;
re = i;
}
}
cout<<ans<<"\n";
}
return 0;
}