http://poj.org/problem?id=3094
学习fgets的使用,注意fgets是会连换行一起保存的。
#include<algorithm> #include<cmath> #include<cstdio> #include<cstring> #include<iostream> #include<map> #include<set> #include<stack> #include<string> #include<queue> #include<vector> using namespace std; typedef long long ll; char s[10000]; int main() { #ifdef Yinku freopen("Yinku.in", "r", stdin); #endif // Yinku while(1) { fgets(s + 1, 10000 - 1, stdin); if(s[1] == '#') break; ll sum = 0; int n = strlen(s + 1); for(int i = 1; i <= n; ++i) { if(isupper(s[i])) sum += 1ll * i * (s[i] - 'A' + 1); } printf("%lld\n", sum); } }