UVA-1586 Molar Mass

来源:互联网 发布:气象数据采集仪 编辑:程序博客网 时间:2024/06/10 13:26

倒着找更好找一些

#include<iostream>#include<cstdio>#include<cstring>using namespace std;int main(){    int T;cin>>T;    while(T--){        double sum=0.0,m=1.0;int k=1;        char s[100];cin>>s;int num=strlen(s);        for(int i=num-1;i>=0;i--){            if(s[i]>='0'&&s[i]<='9'){                if(k==1) m=0;                m+=k*(s[i]-'0');                k*=10;            }//if            else {                k=1;double c;                if(s[i]=='C') c=12.010;                else if(s[i]=='H') c=1.008;                else if(s[i]=='O') c=16.000;                else c=14.010;                sum+=m*c;                m=1.0;            }        }//for        printf("%.3lf\n",sum);//格式,lf不是llf    }//while    return 0;}
原创粉丝点击