首页 > 代码库 > 杭电2030 汉字统计
杭电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 汉字统计
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。