Run ID 作者 问题 语言 测评结果 Time Memory 代码长度 提交时间
138969 hjx211144 相对分子质量 C++ Wrong Answer 0 MS 268 KB 632 2025-11-30 16:59:39

Tests(0/1):


Code:

#include <bits/stdc++.h> using namespace std; int main() { char a[9]={'H','C','N','O','F','P','S','K'},c[100]; int f,i,j,k,n,s,b[8]={1,12,14,16,19,31,32,39}; scanf("%d",&n); while (n--) { scanf("%s",c); f=i=0; while (i<strlen(c)) { j=0; while (j<8) { if (c[i]==a[j] and c[i]>='A' and c[i]<='Z') { s=b[j]; break; } j++; } i++; k=0; while (c[i]>='0' and c[i]<='9' and i<strlen(a)) { k=k*10+c[i]-'0'; i++; } if (k==0) f==f+s*1; else f=f+s*k; } printf("%d\n",f); } return 0; }


Run Info:

------Input------
20 H2 O3 CO2 NO2 P2O5 SO3 H2SO4 HNO3 H3PO4 K2CO3 K2SO4 F2 HF NH4NO3 CH3COOH C2H5OH NH4HCO3 KH2PO4 H2S KHSO4
------Answer-----
2 48 44 46 142 80 98 63 98 138 174 38 20 80 60 46 79 136 34 136
------Your output-----
2 48 32 32 142 48 66 48 67 126 142 38 0 52 3 29 52 66 2 64