#include <bits/stdc++.h> using namespace std; using ll = long long; #define rep(i,n) for(int i=0;i<int(n);i++) int main(){ int n,k; cin>>n>>k; vector<ll> a(n); rep(i,n) cin>>a.at(i); ll up=1e15; ll dw=0; while(up-dw>1){ ll md=(up+dw)/2; ll ad=0; ll ct=0; rep(i,n){ if(a.at(i)+ad<md){ ct+=(md-(a.at(i)+ad)+i)/(i+1); ad+=((md-(a.at(i)+ad)+i)/(i+1))*(i+1); } if(ct>k) break; } if(ct>k) up=md; else dw=md; } cout<<dw<<'\n'; }