有机物燃烧

P1994 有机物燃烧

题目背景

本来准备弄难点的,如故算了吧

题目叙述

输入一种有机物,输出与氧气反应化学方程式中CO2和H2O的周到

输入输出格式

输入格式:

 

一行,一个字符串,表示有机物

 

输出格式:

 

化学方程式,两个数,分别为CO2和H2O的系数

 

输入输出样例

输入样例#1: 复制

C2H5OH

出口样例#1: 复制

2 3

 

 

说明

只含有C、H、O二种因素

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define N 110
using namespace std;
char ch[N];
int i,l,s,sum1,sum2,sum3,ans1,ans2;
int main()
{
    cin>>ch;
    l=strlen(ch);
    while(i<l)
    {
        if(ch[i]=='C') 
        {
            i++;
             while(ch[i]>'0'&&ch[i]<='9') s=s*10+ch[i]-'0',i++;
             sum1+=max(1,s);s=0;
        }
        if(ch[i]=='H') 
         {
             i++;
             while(ch[i]>'0'&&ch[i]<='9') s=s*10+ch[i]-'0',i++;
             sum2+=max(1,s);s=0;
         }
        if(ch[i]=='O')
        {
            i++;
             while(ch[i]>'0'&&ch[i]<='9') s=s*10+ch[i]-'0',i++;
             sum3+=max(1,s);s=0;
        }
    } 
    if(sum2%2==1) sum1*=2,sum2*=2,sum3*=2;
    if((sum2/2+sum3)%2!=0) sum1*=2,sum2*=2,sum3*=2;
    ans1=sum1,ans2=sum2/2;
    printf("%d %d",ans1,ans2);
    return 0;
}

 

admin

网站地图xml地图