PAT乙級 1057 數零壹 (20分)

1057 數零壹 (20分)

難點:無

重點:使用getline獲取一行數據,因爲可能包含空格。

#include<iostream>
#include<string>
#include<math.h>
using namespace std;

int main()
{
	string s;
	getline(cin,s);
	int sum = 0;
	for (int i = 0; i < s.size(); i++)
	{
		if (s[i] >= 'a' && s[i] <= 'z')
			sum += s[i] - 'a' + 1;
		if (s[i] >= 'A' && s[i] <= 'Z')
			sum += s[i] - 'A' + 1;
	}
	int a = 0, b = 0;//a,b分別表示0,1
	while (sum)
	{
		if (sum % 2 == 0)
			a++;
		else
			b++;
		sum = sum / 2;
	}
	cout << a << " " << b;

	return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章