标签:etl color string clu algo code acm pre 字符
链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=2030
题目思路:
1—— 一个汉字在字符串中是以两个负的字符形式存储,所以本题只要把字符串中负字符的个数找出来,再
除以2 就OK了。
2——汉字机内码在计算机的表达方式的描述是,使用二个字节,每个字节最高位一位为1。
计算机中, 补码第一位是符号位, 1 表示为 负数, 所以 汉字机内码的每个字节表示的十进制数都是负数。
代码:
#include <iostream> #include<math.h> #include <iomanip> #include<cstdio> #include<string> #include<map> #include<vector> #include<list> #include<algorithm> #include<stdlib.h> #include<iterator> using namespace std; int main() { int n; cin>>n; cin.get(); while(n--) { string input; getline(cin,input); int sum=0; int len=input.size(); for(int i=0;i<len;i++) { if((input[i])<0) { sum++; } } cout<<sum/2<<endl; } return 0; }
标签:etl color string clu algo code acm pre 字符
原文地址:http://www.cnblogs.com/William-xh/p/6853539.html