UVA 1586
2016-02-14 23:40
344 查看
#include<cstdio> #include<string.h> #include<iostream> #include<ctype.h> using namespace std; #define MAX 85 char str[MAX]; const double C = 12.01; const double H = 1.008; const double N = 14.01; const double O = 16.00; double Solve() { int size = strlen(str); double sum = 0.0; for (int i = 0;i != size;++i) { if (isalpha(str[i])) { int alpha = 1; if (i + 1 < size && !isalpha(str[i + 1]))//关键在于对连续数字字符的处理 { int curIndex = i + 1; alpha = str[i + 1] - '0'; while (curIndex + 1 < size && !isalpha(str[++curIndex])) { alpha = 10 * alpha + (str[curIndex] - '0'); } } switch (str[i]) { case'C': sum += C*alpha; break; case'H': sum += H*alpha; break; case'O': sum += O*alpha; break; case'N': sum += N*alpha; break; } } } return sum; } int main() { int n; cin >> n; while (n--) { cin >> str; printf("%.3lf\n", Solve()); } return 0; }
相关文章推荐
- poj2777 Count Color
- 为什么java读取sqlserver2008中的date数据类型的数据比实际的少2天?
- 第一天(2016.01.11)
- ANDROID_MARS学习笔记_S01原始版_010_ContentProvider
- NSMutableString可变字符串
- POJ 3468 树状数组
- poj 1419(求最大独立集)
- 王学岗仿QQ页面滑动
- lasrevarTredrOlevlLeerTyraniB.102
- (转)js一道比较考验的题目
- 自己实现下载框架(三)
- 【HDOJ】4605 Magic Ball Game
- POJ 2892 线段树(连续问题)
- 数值的整数次方
- JavaScript的单元测试
- post 发送xml
- 小雷郑重承诺:在2017年之前,对大学毕业4年以来的所有努力和探索,做一个全面客观的总结,技术研究、工作创业、投资理财、朋友感情等
- 小雷郑重承诺:在2017年之前,对大学毕业4年以来的所有努力和探索,做一个全面客观的总结,技术研究、工作创业、投资理财、朋友感情等
- 【SPOJ-PRIME1】Prime Generator【区间质数筛】
- 自己实现下载框架(二)