#include<bits/stdc++.h>
using namespace std;
int n,i,l,r,t,a[100001],b[100001],f[100001],g[100001];
long long k,ans,sum;
void update(int*a,int x,int y){for(;x<=n;x+=x&-x)a[x]+=y;}
int query(int*a,int x){int ans=0;for(;x;x-=x&-x)ans+=a[x];return ans;}
int main(){
ios::sync_with_stdio(0);cin.tie(0);
cin>>n>>k;
for(i=1;i<=n;i++)cin>>a[i],b[++t]=a[i];
sort(b+1,b+t+1);t=unique(b+1,b+t+1)-b-1;
for(i=1;i<=n;i++)a[i]=lower_bound(b+1,b+t+1,a[i])-b;
r=n;
while(r>=2&&ans<=k)ans+=query(g,a[r]-1),update(g,a[r],1),r--;
r++;
for(l=1;l<=n;l++){
ans+=l-1-query(f,a[l])+query(g,a[l]-1);update(f,a[l],1);
while(r<=n&&(r<=l||ans>k))ans-=l-query(f,a[r])+query(g,a[r]-1),update(g,a[r],-1),r++;
sum+=n-r+1;
}
cout<<sum<<endl;
}