#include using namespace std; long long floor_sum(long long N,long long M,long long A,long long B) //Sum[floor((A*i+B)/M),{i,0,N-1}] { long long ans=0; if(A>=M) { ans+=N*(N-1)/2*(A/M); A%=M; } if(B>=M) { ans+=N*(B/M); B%=M; } long long Ym=(A*N+B)/M,Xm=Ym*M-B; if(Ym==0)return ans; long long TX=(Xm+A-1)/A; ans+=(N-TX)*Ym; ans+=floor_sum(Ym,A,M,TX*A-Xm); return ans; } int N,M; int A[2000],B[2000]; main() { cin>>N>>M; long ans=0; for(int i=0;i>A[i]; for(int i=0;i>B[i]; for(int i=0;i