PAT(B) - 1057. 数零壹(20)
来源:互联网 发布:java简单记事本源代码 编辑:程序博客网 时间:2024/04/29 16:02
给定一串长度不超过105的字符串,本题要求你将其中所有英文字母的序号(字母a-z对应序号1-26,不分大小写)相加,得到整数N,然后再分析一下N的二进制表示中有多少0、多少1。例如给定字符串“PAT (Basic)”,其字母序号之和为:16+1+20+2+1+19+9+3=71,而71的二进制是1000111,即有3个0、4个1。
输入格式:
输入在一行中给出长度不超过105、以回车结束的字符串。
输出格式:
在一行中先后输出0的个数和1的个数,其间以空格分隔。
输入样例:PAT (Basic)输出样例:
3 4
#include <cstdio>#include <string>#include <iostream>using namespace std;int main() { string str; getline(cin, str); int sum = 0; for( int i = 0; i < str.length(); i++ ) { if( str[i] >= 'a' && str[i] <= 'z' ) sum += str[i] - 'a' + 1; if( str[i] >= 'A' && str[i] <= 'Z' ) sum += str[i] - 'A' + 1; } int zero = 0; int one = 0; while( sum ) { if( sum % 2 == 1 ) { one++; } else { zero++; } sum /= 2; } printf( "%d %d", zero, one ); return 0;}
0 0
- PAT(B) - 1057. 数零壹(20)
- PAT-B 1057. 数零壹
- PAT-B 1057. 数零壹
- PAT B 1017 A除以B (20)
- PAT(B)1017. A除以B (20)
- PAT-B 1017. A除以B (20)
- PAT(B)1004. 成绩排名 (20)
- PAT(B) - 1004. 成绩排名 (20)
- PAT(B) - 1028. 人口普查(20)
- PAT(B).1028. 人口普查(20)
- PAT-B 1004. 成绩排名 (20)
- PAT-B 1004. 成绩排名 (20)
- PAT-B 1028. 人口普查(20)
- PAT - 1057. 数零壹(20)
- PAT 1057. 数零壹(20)
- 1057. 数零壹(20) PAT
- PAT:A1001. A+B Format (20/20)
- 1058. A+B in Hogwarts (20)- PAT
- windows_TomCat配置
- eclipse导入java和android sdk源码,帮助文档
- Spring MVC源码分析
- PAT(B) - 1059. C语言竞赛(20)
- 手机端中有的图片可以显示有的不显示的问题
- PAT(B) - 1057. 数零壹(20)
- AsyncTask 异步任务解析
- 2-36进制数的任意转换
- 51nod 1358 浮波那契
- Android 中的adapter和作用以及常见的adapter
- 三门问题
- mysql远程连接时出现的ERROR
- c#发送get请求
- Chromium扩展(Extension)通信机制分析