字符串中数字子串的求和
来源:互联网 发布:音乐伴唱软件 编辑:程序博客网 时间:2024/05/22 00:14
例如:
A-1BC--12 the number is -1,12 and the sum is 11
A-1BC--2C--D6E the number is -1,2,6 and the sum is 7
下面是代码:
//// main.cpp// 字符串中数字子串的求和//// Created by zjl on 16/8/13.// Copyright © 2016年 zjl. All rights reserved.// for example:// A-1BC--12 the number is -1,12 and the sum is 11#include <iostream>#include <string>using namespace std;bool isdigits(char c){ //判断字符是否是数字 if(c < '9' && c > '0') return true; else return false;}int solve(string s){ if(s.size() == 0) return 0; int sum = 0, count = 0, sum_part = 0; bool isdigit = false; //判断是否有数字存在 int i = 0; while( i < s.size()){ isdigit = false; while(i < s.size() && s[i] == '-'){ //累计符号的数量 count++; i++; } while(i < s.size() && isdigits(s[i])){ //若是数字,则统计局部和 isdigit = true; sum_part = sum_part * 10 + (s[i] - '0'); i++; } if(isdigit){ //若前面是数字,则将其加到总和上去 if(count % 2 == 1) sum_part *= -1; sum += sum_part; sum_part = 0; } count = 0; ++i; } return sum;}int main(int argc, const char * argv[]) { // insert code here... string s = "A-1BC--2C--D6E"; int sum = solve(s); cout<<sum<<endl; return 0;}
0 0
- 字符串中数字子串的求和
- 字符串中数字子串的求和
- 字符串中数字子串的求和
- 字符串中数字子串的求和
- 字符串中数字子串的求和
- 字符串中数字子串的求和
- 字符串中数字子串的求和
- 字符串中数字子串的求和
- 字符串问题---字符串中数字子串的求和
- 求字符串中数字子串求和
- 5.2 字符串中数字子串的求和
- 改进版---字符串中数字子串的求和
- [编程之美-08]字符串中数字子串的求和
- 字符串之数字子串求和
- 对字符串中的数字子串求和
- C++字符串数字子串求和
- 字符串中最长的数字子串
- 查找字符串中最长的连续数字子串
- Binary Search Tree Iterator
- 最小割总结
- 剑指Offer_13_调整数组顺序使奇数位于偶数前面
- exists与in的区别
- 三次握手linux 源码分析
- 字符串中数字子串的求和
- 537 - Artificial Intelligence?
- Linux grep命令常用参数一览
- slidingMenu嵌套recycleView Touch事件冲突的简单解决方案(小白向)
- 情感分析
- POJ - 2100 Graveyard Design(尺取法)
- 复习c++知识点
- 杭电OJ 5831 Rikka with Parenthesis II
- POJ-2407 Relatives(容斥原理模板)