NC232437. 小沙的痛苦
描述
输入描述
第一行输入两个整数,代表给定的数字数量和模数
第二行输入个整数
对于30%的数据有对于100%的数据有
输出描述
输出一个数字,代表最大值。
示例1
输入:
5 7 3 3 4 4 5
输出:
6
C++ 解法, 执行用时: 533ms, 内存消耗: 4316K, 提交时间: 2022-04-10 15:15:50
#include<bits/stdc++.h> using namespace std; int n; int p; int a[1000005]; int main() { cin>>n>>p; for(int i=0;i<n;i++) { int x; cin>>x; a[i]=x%p; } sort(a,a+n); int ans=(a[n-2]+a[n-1])%p; for(int i=0;i<n;i++) { int pos=lower_bound(a,a+n,p-a[i])-a; if(pos-1>i) { ans=max(ans,(a[i]+a[pos-1])%p); } } cout<<ans; }