1 条题解
-
1
这个题我们可以利用两个变量l和r来解决。首先我们输入这个数组之后一从左往右遍历,每次只要遇到0,l++如果遇到了1,就不再增加了。而r则是从右往左遍历,思路是相同的。最后用所有的杯子数减去l和r,就是最终的答案。 这道题是捆绑测试 ###上AC代码!### #include <iostream using namespace std; bool a[100010]; int main(){ int n; int lcc=0; int rcc=0; cin>>n; int m=n; for(int i=1;i<=n;i++){ cin>>a[i]; } for(int i=1;i<=n;i++){ if(a[i]0){ lcc++; }else{ m-=lcc; break; } } if(lccn){ cout<<0; return 0; } if(m==0){ cout<<0; return 0; } for(int i=n;i>=1;i--){ if(a[i]==0){ rcc++; }else{ m-=rcc; break; } } cout<<m; }
- 1
信息
- ID
- 722
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 5
- 标签
- (无)
- 递交数
- 40
- 已通过
- 17
- 上传者