/*1586--*/
#include<stdio.h>
#include<string.h>
#define N 100
char s[N];
int main()
{
double count,sum;
int length,i,j;
int T,n;
scanf("%d",&T);
for(j=0;j<T;j++)
{
count=0.0;
sum=0.0;
n=0;
scanf("%s",s);
length=strlen(s);
for(i=0;i<length;i++)
{
switch(s[i])
{
case 'C': if(n>1) sum+=count*n; else sum+=count*(n+1); n=0; count=12.01;break;
case 'H': if(n>1) sum+=count*n; else sum+=count*(n+1); n=0; count=1.008;break;
case 'O': if(n>1) sum+=count*n; else sum+=count*(n+1); n=0; count=16.00;break;
case 'N': if(n>1) sum+=count*n; else sum+=count*(n+1); n=0; count=14.01;break;
default: n=n*10+(s[i]-'0');
}
}
if(i==length)
{
if(n>1)
sum+=count*n;
else
sum+=count*(n+1);
}
printf("%0.3f\n",sum);
}
return 0;
}
UVa1586
最新推荐文章于 2022-01-24 22:45:37 发布