//http://acm.hnu.cn/online/?action=problem&type=show&id=12847&courseid=270
/*****************************************
*******************************************/
//错题,见后
#include
#include
//
int main(void)
{
int n, i, j, co, co2;
__int64 sum, ans;
while (scanf("%d%*c", &n) != EOF)
{
char c;
ans = 0; sum = 0; co = n; co2 = 0;
while (scanf("%c", &c) && c != '\n')
{
if (c == '1')
{
if (co>0)
{
sum++;
co--;
}
else if (co2>0)
{
co2--;
co++;
}
}
if (c == '2')
{
if (co >= 2)
{
co2++;
co -= 2;
sum++;
}
}
ans += sum;
}
printf("%I64d\n", ans);
}
return 0;
}
int main(void)
{
long long sum, ans;
int n, s, s2;
while (scanf("%d%*c", &n) != EOF)
{
char c;
ans = 0; sum = 0; s = 0; s2 = 0;
while (scanf("%c", &c) && c != '\n')
{
if (c == '1')
{
if (n - s >= 1)
{
s++;
sum++;
}
else if (s2 > 0)
{
s--;
}
}
if (c == '2'&&n - s >= 2)
{
s2++;
s += 2;
sum++;
}
ans += sum;
}
printf("%lld\n", ans);
}
return 0;
}
//没注意到数据范围,要用长整形
acm HNU Dwarf Tower
最新推荐文章于 2019-07-28 16:57:00 发布