杭电2030 汉字统计
Posted William_xh
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了杭电2030 汉字统计相关的知识,希望对你有一定的参考价值。
链接: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; }
以上是关于杭电2030 汉字统计的主要内容,如果未能解决你的问题,请参考以下文章