题意:
外祖母要卖苹果,(有很多但不知道数量),最终所有苹果都卖光了!
有n个人买苹果,如果那个人是half,他就买所有苹果的一半,如果那个人是halfplus,则他买当前苹果数量的一半,Laura还会送半个苹果!问最多能赚多少钱?
思路:
会后一个人一定是halfplus,否则苹果卖不完,所以最后一个人买的时候已经只剩一个。然后从后往前推。
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
#include<cstdlib>
#include<string>
#include<cmath>
#include<vector>
using namespace std;
const int maxn=1e5+;
const double eps=1e-;
const double pi=acos(-);
#define ll long long
int main()
{
ll n,m;
char str[][];
while(~scanf("%I64d%I64d",&n,&m))
{
ll num=;
ll ans=;
for(int i=;i<n;i++)
scanf("%s",str[i]);
for(int i=n-;i>=;i--)
{
if(!strcmp(str[i],"halfplus"))
{
num=(num+0.5)*;
ans+=num/2.0*m;
}
else
{
num=num*;
ans+=num/*m;
}
}
printf("%I64d\n",ans);
}
return ;
}