Topic Information
1104. Sum of number segments (20)
Time limit of MS
Memory Limit 65536 KB
Code length limit 16000 B
Given a sequence of positive numbers, a segment is defined to be a consecutive subsequence. For example, given the sequence {0.1, 0.2, 0.3, 0.4}, we have segments: (0.1) (0.1, 0.2) (0.1, 0.2, 0.3) (0.1, 0.2, 0.3) , 0.4) (0.2) (0.2, 0.3) (0.2, 0.3, 0.4) (0.3) (0.3, 0.4) (0.4).
Now given a sequence, you is supposed to find the sum of all the numbers in all the segments. For the previous example, the sum of all the segments is 0.1 + 0.3 + 0.6 + 1.0 + 0.2 + 0.5 + 0.9 + 0.3 + 0.7 + 0.4 = 5. 0.
Input Specification:
Each input file contains the one test case. For each case, the first line gives a positive integer N, the size of the sequence which are no more than 10^5. The next line contains N positive numbers in the sequence, each no more than 1.0, separated by a space.
Output Specification:
For each test case, print in one line the sum of all the numbers in all the segments, accurate up to 2 decimal places.
Sample Input:
4
0.1 0.2 0.3 0.4
Sample Output:
5.00
Thinking of solving problems
Look directly at the code, do not want to say more,
AC Code
#include < Cstdio> int Main () {int N; long long st = 0 ; double s = 0 , V; scanf ( "%d" , &n); for (int i = 0 ; i < n; ++i) {scanf ( "%LF" , &v); St + = n-i-I; s + = v * ST; } printf ( "%.2f\n" , s); return 0 ;}
1104. Sum of number segments (20) "Math Problem"--pat (Advanced level) practise