数组-08. 字符串转换成十进制整数(15)
来源:互联网 发布:银川网络教育 编辑:程序博客网 时间:2024/05/22 00:40
数组-08. 字符串转换成十进制整数(15)
时间限制
400 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
张彤彧(浙江大学)
输入一个以#结束的字符串,本题要求滤去所有的非十六进制字符(不分大小写),组成一个新的表示十六进制数字的字符串,然后将其转换为十进制数后输出。如果过滤后字符串的首字符为“-”,代表该数是负数。
输入格式:
输入在一行中给出一个以#结束的非空字符串。
输出格式:
在一行中输出转换后的十进制数。题目保证输出在长整型范围内。
输入样例:+P-xf4+-1!#输出样例:
-3905
#include <iostream>#include <string>#include <cctype>#include <cmath>#include <vector>using namespace std;int main(){ string word; cin >> word; for (auto &i : word) { //if(isalpha(i)) //这个if不加仍然正确,函数不会改变非字母的值 i = toupper(i); } char hex[17] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', '-' }; // string hexnum; // 这样是不行的,因为假如是AF的话,变成字符串1015,就不知道怎么划分数了! // 要用vector来保存数! vector<char> hexnum; for (auto i : word) { if(i=='#'){ break; } for (int t = 0; t < 17; ++t) { if (i == hex[t]) { hexnum.push_back(i); } } } int sign = 0; if (hexnum[0] == '-') { sign = 1; } int flag=hexnum.size(); //16进制数目 // int flag = hexnum.size() - 1; 不能用这个,因为这时里面还残留‘-’,要再把-给消去 for(auto i : hexnum){ if(i=='-') --flag; } flag-=1; //这个flag代表上16的次数 long long sum = 0; for (auto i : hexnum) { if (i != '-') { for (int t=0; t < 16; ++t) { if(i==hex[t]) sum += t * pow(16, flag--); } } } if (sign == 1) { cout << '-'; } cout << sum << endl; return 0;}最后有两分不能通过,不知道为什么
0 0
- 数组-08. 字符串转换成十进制整数
- 数组-08. 字符串转换成十进制整数(15)
- 数组-08. 字符串转换成十进制整数(15)
- 数组-08. 字符串转换成十进制整数(15)
- 数组-08. 字符串转换成十进制整数(15)
- 数组-08. 字符串转换成十进制整数(15)
- 数组-08. 字符串转换成十进制整数(15)
- 数组-08. 字符串转换成十进制整数(15)
- 字符串转换成十进制整数 (15分)
- 字符串转换成十进制整数
- 字符串转换成十进制整数
- 字符串转换成十进制整数
- 字符串转换成十进制整数
- 字符串转换成十进制整数 十六进制转换十进制
- 5-1 字符串转换成十进制整数 (15分)
- 5-9 字符串转换成十进制整数 (15分)
- 7-39 字符串转换成十进制整数(15 分)
- pta中 字符串转换成十进制整数
- 括号配对问题
- Windwos 7 环境下搭建Android Studio 开发环境
- redhat上安装hadoop2
- 大端格式与小端格式
- 【设计模式】——三大工厂模式
- 数组-08. 字符串转换成十进制整数(15)
- hdu_5175Misaki's Kiss again
- 分布式云平台 2.0 项目总结
- PL/SQL 大数据操作案例
- 用SQLiteDatabase类的execSQL和rawQuery方法操作数据库
- 02-0. 整数四则运算
- Codeforces 514C - Watto and Mechanism (Trie + DFS)
- 【ITOO】--迎新系统,你可以做的更好
- java--控制台梭哈游戏