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
'Computer Science > Algorithm Problem' 카테고리의 다른 글
백준] 1551 - 수열의 변화 (0) | 2018.02.04 |
---|---|
백준] 1032 - 명령 프롬프트 (0) | 2018.02.04 |
백준] 7785 - 회사에 있는 사람(KBTU) (0) | 2018.02.03 |
백준] 11637 - 인기 투표(ACM-ICPC Regional) (0) | 2018.02.03 |
백준] 3059 - 등장하지 않는 문자의 합 (0) | 2018.01.31 |