Codeforces Problem-1591A Life of a Flower
题目链接
基本思想:
题目意思比较清楚,就是说在第i天浇水,花就长高1cm;连续两天浇水,则长高5cm;连续两天不浇水,花就无了。问n天之后花的高度是多少。这个题暴力模拟就行,这里面单独判一下第一天是否浇水即可,其他的用f和a[i]进行判断,需要注意的是,花的初始高度为1cm。
AC代码:
#include <bits/stdc++.h>
using namespace std;
int main()
{
int t;
cin>>t;
while (t--)
{
int n;
int a[105];
memset(a,0,sizeof(a));
cin>>n;
for (int i=0;i<n;i++)
cin>>a[i];
int ans=1;
bool f=0;
for (int i=0;i<n;i++)
{
if (i==0)
{
if (a[i]==1)
{
ans++;
f=1;
}
}
else
{
if (!f&&a[i]==0)
{
ans=-1;
break;
}
if (f&&a[i]==1)
ans+=5;
if (!f&&a[i]==1)
ans++;
if (a[i]==0)
f=0;
else
f=1;
}
}
cout<<ans<<endl;
}
return 0;
}