zoukankan      html  css  js  c++  java
  • TOJ 1721 Partial Sums

    Description

    Given a series of n numbers a1, a2, ..., an, the partial sum of the numbers is defined as the sum of ai, ai+1, ..., aj.

    You are supposed to calculate how many partial sums of a given series of numbers could be divided evenly by a given number m.

    Input

    There are multiple test, each contains 2 lines.

    The first line is 2 positive integers n (n <= 10000 ) and m (m <= 5000).

    The second line contains n non-negative integers a1, a2, ..., an. Numbers are separated by one or several spaces.

    The input is ended by EOF.

    Output

    One test each line - the number of partial sums which could be divided by m.

    Sample Input

    5 4
    1 2 3 4 5
    6 7
    9 8 7 6 5 4

    Sample Output

    2
    3

    Source

    ZOJ Monthly March 2003

     

     1 #include <stdio.h>
     2 int main(int argc, char *argv[])
     3 {
     4     int n,m;
     5     int a[10001];
     6     int sum[10001];
     7     while( scanf("%d %d" ,&n ,&m)!=EOF ){
     8         int ans=0;
     9         int ca[5001]={0};
    10         for(int i=0; i<n; i++){
    11             scanf("%d",&a[i]);
    12             if(i==0){
    13                 sum[i]=a[i]%m;
    14             }else{
    15                 sum[i]=(sum[i-1]+a[i])%m;
    16             }
    17             if(sum[i]%m==0)
    18                 ans++;
    19             ca[sum[i]]++;
    20         }
    21         for(int i=0; i<m; i++)
    22             ans+=ca[i]*(ca[i]-1)/2;
    23         printf("%d
    ",ans);
    24     }
    25     return 0;
    26 }
  • 相关阅读:
    iOS-导航条
    iOS-存储
    iOS-模型传递
    iOS-日期相关
    iOS-UIViewController
    iOS-loadView方法
    iOS-UIWindow
    Spring 测试
    Spring条件注解@Conditional
    Spring多线程
  • 原文地址:https://www.cnblogs.com/chenjianxiang/p/3596619.html
Copyright © 2011-2022 走看看