Computer Science/Algorithm Problem

백준] 4613 - Quicksum(ACM-ICPC Regional)

TwinParadox 2018. 2. 3. 17:15
728x90

시간 제한 : 1초

메모리 제한 : 128MB




입력

인풋에  # 이 들어오기 전까지 계속 입력을 받는다. 각각의 패킷은 한줄에 하나씩 입력이 되며 공백으로 시작되거나 끝나지 않으며, 대문자만 입력이 된다. 패킷의 길이는 1~255자이다.




출력

각각의 패킷에 따라 한줄에 하나씩 Quicksum 을 출력하라




소스코드

#include <iostream>
#include <string>
using namespace std;
int main(void)
{
	while (1)
	{
		string s;
		getline(cin, s);
		if (s == "#")
			break;
		int sum = 0, len = s.length();
		for (int i = 0; i < len; i++)
		{
			if ((char)s[i] == ' ');
			else
				sum += (int)(s[i] - 'A' + 1)*(i + 1);
		}
		cout << sum << '\n';
	}
}




Tip

기본적인 문자열 처리 문제로, 아스키 코드 이해만 있으면 풀 수 있다.

728x90