求助
查看原帖
求助
529038
Butterfly__qwq楼主2021/11/1 19:38
#include<bits/stdc++.h>
using namespace std;
int main()
{
	int g;
	double t=0;
	string k;
	scanf("%d",&g);
	for(int i=0;i<g;i++)
	{
		double n=0;
		scanf("%s",&k);
		for(int j=0;j<k.size();j++)
		{
		    if(j!=(k.size()-1))
		    {
			    if(k[i]=='C')
			    {
				    while('0'<k[j+1] and k[j+1]<'9')
				    {
					    n*=10;
					    n+=k[j+1];
					    n-=48;
					    j++;
				    }
				    t+=(12.01*n);
			    }
			    if(k[i]=='H')
			    {
				    while('0'<k[j+1] and k[j+1]<'9')
				    {
					    n*=10;
					    n+=k[j+1];
					    n-=48;
					    j++;
				    }
				    t+=(1.008*n);
			    }
			    if(k[i]=='O')
			    {
				    while('0'<k[j+1] and k[j+1]<'9')
				    {
					    n*=10;
					    n+=k[j+1];
					    n-=48;
					    j++;
				    }
				    t+=(16.00*n);
			    }
			    if(k[i]=='N')
			    {
				    while('0'<k[j+1] and k[j+1]<'9')
				    {
					    n*=10;
					    n+=k[j+1];
					    n-=48;
					    j++;
				    }
				    t+=(14.01*n);
			    }
		    }
		    else
		    {
		        if(k[i]=='C')t+=12.01;
		        if(k[i]=='H')t+=1.008;
		        if(k[i]=='O')t+=16.00;
		        if(k[i]=='N')t+=14.01;
		    }
		}
		printf("%d",t);
	}
	return 0;
}
2021/11/1 19:38
加载中...