码迷,mamicode.com
首页 > 其他好文 > 详细

模数求和

时间:2020-07-23 16:00:19      阅读:75      评论:0      收藏:0      [点我收藏+]

标签:code   question   定义   std   mes   its   说明   cout   inf   

数学结论:

(1)a%b的最大值是b-1;

(2)f(m)=m%a1 + m%a2 +......+ m%an 的最大值是(a1-1) +......+(an-1)。

技术图片

 

 

 

题目描述

 

现给定n个整数,并定义一个非负整数m,且令f(m) = (m%a1)+(m%a2)+...+(m%an)。
此处的X % Y的结果为X除以Y的余数。
现请你找出一个m,求出f(m)的最大值。

输入描述:

输入包含两行,第一行为一正整数n,(1<n<=3000)
第二行为n个整数a1,a2,...,an ,其中(2<=ai<=10^5)

输出描述:

输出仅包含一行,输出f(m)的最大值
示例1

输入

复制
3
3 4 6

输出

复制
10

说明

就样例而言,当m取11时可取得最大值。

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int x,s=0;
    for(int i=0;i<n;i++)
    {
        cin>>x;
        s+=x;    
    }
    cout<<s-n<<endl;
    return 0; 
}

 

 

 

模数求和

标签:code   question   定义   std   mes   its   说明   cout   inf   

原文地址:https://www.cnblogs.com/dragondragon/p/13365699.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!