60pts WA
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,m,mod,ans=INT_MAX,qz[114514];
set<int>s;
signed main(){
cin>>n>>m>>mod;
qz[0]=0;
s.insert(0);
for(register int i=1;i<=n;i++){
int x;
cin>>x;
x%=mod;
qz[i]=(qz[i-1]+x)%mod;
}
for(register int i=1;i<=n;i++){
if(qz[i]>=m)ans=min(ans,qz[i]-(*--(s.upper_bound(qz[i]-m))));
else ans=min(ans,qz[i]+mod-(*--(s.upper_bound(qz[i]-m+mod))));
s.insert(qz[i]);
}
cout<<ans;
}