Quicksum
来源:互联网 发布:淘宝买飞机 编辑:程序博客网 时间:2024/05/21 10:40
Description
A checksum is an algorithm that scans a packet of data and returnsa single number. The idea is that if the packet is changed, thechecksum will also change, so checksums are often used fordetecting transmission errors, validating document contents, and inmany other situations where it is necessary to detect undesirablechanges in data. For this problem, you will implement a checksumalgorithm called Quicksum. A Quicksum packet allows only uppercaseletters and spaces. It always begins and ends with an uppercaseletter. Otherwise, spaces and letters can occur in any combination,including consecutive spaces. A Quicksum is the sum of the productsof each character's position in the packet times the character'svalue. A space has a value of zero, while letters have a valueequal to their position in the alphabet. So, A=1, B=2, etc.,through Z=26. Here are example Quicksum calculations for thepackets "ACM" and "MID CENTRAL": ACM: 1*1 + 2*3 + 3*13 = 46 MIDCENTRAL: 1*13 + 2*9 + 3*4 + 4*0 + 5*3 + 6*5 + 7*14 + 8*20 + 9*18 +10*1 + 11*12 = 650
Input
The input consists of one or more packets followed by a linecontaining only # that signals the end of the input. Each packet ison a line by itself, does not begin or end with a space, andcontains from 1 to 255 characters.
Output
For each packet, output its Quicksum on a separate line in theoutput.
Sample Input
ACMMID CENTRALREGIONAL PROGRAMMING CONTESTACNA C MABCBBC#
Sample Output
46650469049751415
- #include <stdio.h>
- #include <string.h>
- int main()
- {
-
int i,k=0; -
char c[260]; -
while(gets(c)) -
{ -
k=0; -
if(c[0]=='#') break; -
for(i=1; i<=strlen(c); i++) -
{ -
if(c[i-1]!=' ') k=k+i*(c[i-1]-'A'+1); -
} -
printf("%d\n",k); -
} -
return 0; - }
0 0
- Quicksum
- Quicksum
- QuickSum
- Quicksum
- Quicksum
- Quicksum
- Quicksum
- Quicksum
- Quicksum
- Quicksum
- Quicksum
- Quicksum
- Quicksum
- Quicksum
- Quicksum
- Quicksum
- Quicksum
- Quicksum
- C/C 经典程序训练6---歌德巴赫猜…
- C语言习题 求sinh(x)
- C语言习题 牛顿迭代法求根
- 递归函数求n的阶乘
- A+B for Input-Output&n…
- Quicksum
- 感谢每一位到访的同学O(∩_∩)O
- C语言习题5.19--递归方法实现逆序
- C语言习题5.13--趣味取小数
- C语言习题5.21--学生成绩的处理
- C语言习题5.18--进制转换
- 有序回文数
- C语言习题 用递归方法求 f(n)
- C语言习题 求n阶勒让德多项式