现给定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)的最大值
3 3 4 6
10
就样例而言,当m取11时可取得最大值。
_, arr = input(), [int(x) - 1 for x in input().strip().split(' ')]
print(sum(arr))
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner input = new Scanner(System.in);
int n = input.nextInt();
int[] a = new int[n];
int sum = 0;
for (int i=0;i<n;i++) {
a[i] = input.nextInt();
sum = sum + a[i];
}
System.out.println(sum-n);
}
}
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine().trim());
String[] strArr = br.readLine().trim().split(" ");
// m%ai的最大值就是ai-1,如果m+1为所有ai的最小公倍数,就可以使得所有的ai被m+1整除,m能使m%ai=ai-1对任意i都成立
int maxValue = 0;
for(int i = 0; i < n; i++)
maxValue += Integer.parseInt(strArr[i]) - 1;
System.out.println(maxValue);
}
} // 找规律
#include<bits/stdc++.h>
using namespace std;
int main() {
int n = 0;
cin >> n;
int sum = 0;
int x = 0;
for (int i=0; i<n; ++i) {
cin >> x;
sum += x;
}
cout << sum - n <<endl;
return 0;
} //这道题的难点就在于找规律 根据例题可以看到 3 4 6分别对11的模式 2 3 5
// 也就是自身-1 ;然后我还试了一下,发现可以找这三个数的公倍数 也就是12 发现12的时候都是0,13的时候都是1!!!
// 所以在12-1 ,11的时候为最大,也就是自身-1.也就得出 最大值=总数-个数 也就是3+4+6-3=10
var n=parseInt(readline());
var arr=readline().split(' ').map(Number);
print(arr.reduce((a,b)=> a+b)-n); import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int result = 0;
for (int i = 0; i < n; i++) {
result += in.nextInt();
result--;
}
System.out.println(result);
}
} class MainActivity:
def main(self):
# Read the data
n = int(input())
nums = list(map(int, filter(lambda x: len(x) > 0, input().split(' '))))
# Get the result
print(sum(nums) - n)
if __name__ == '__main__':
M = MainActivity()
M.main() #include <iostream>
using namespace std;
int main(){
int n,t;
int i;
int f=0;
cin>>n;
for(i=0;i<n;++i){
cin>>t;
f+=t;
}
cout<<f-n;
}