#include<bits/stdc++.h>
using namespace std;
// https://m...content-available-to-author-only...y.com/slope-trick-1-%E8%A7%A3%E8%AA%AC%E7%B7%A8
struct Slope{
long long minf;
priority_queue<long long> L;
priority_queue<long long,vector<long long>,greater<long long>> R;
// init f(x) = c (const)
Slope(long long c) : minf(c) {}
// get minimum
long long get(){ return minf; }
// add c for all
void add_const(long long c){ minf+=c; }
// add max(0,x-a) (_/)
void add_xa(long long a){
if(!L.empty()){minf+=max(0ll,L.top()-a);}
L.push(a);
R.push(L.top()); L.pop();
}
// add max(0,a-x) (\_)
void add_ax(long long a){
if(!R.empty()){minf+=max(0ll,a-R.top());}
R.push(a);
L.push(R.top()); R.pop();
}
// add |x-a| (\/)
void add_abs(long long a){
add_xa(a);
add_ax(a);
}
// take min(small to large)
void slmax(){
while(!R.empty()){R.pop();}
}
// take min(large to small)
void lsmax(){
while(!L.empty()){L.pop();}
}
};
void verify_abc127f(){
Slope slp(0);
long long q;
cin >> q;
while(q>0){
q--;
long long typ;
cin >> typ;
if(typ==1){
long long a,b;
cin >> a >> b;
slp.add_abs(a);
slp.add_const(b);
}
else{
cout << slp.L.top() << " ";
cout << slp.get() << "\n";
}
}
}
void verify_boj13323(){
Slope slp(0);
long long n;
cin >> n;
for(long long i=0;i<n;i++){
long long a;
cin >> a;
a-=i;
slp.slmax();
slp.add_abs(a);
}
cout << slp.get() << "\n";
}
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
// verify_abc127f();
verify_boj13323();
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgovLyBodHRwczovL20uLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLnkuY29tL3Nsb3BlLXRyaWNrLTEtJUU4JUE3JUEzJUU4JUFBJUFDJUU3JUI3JUE4CnN0cnVjdCBTbG9wZXsKICBsb25nIGxvbmcgbWluZjsKICBwcmlvcml0eV9xdWV1ZTxsb25nIGxvbmc+IEw7CiAgcHJpb3JpdHlfcXVldWU8bG9uZyBsb25nLHZlY3Rvcjxsb25nIGxvbmc+LGdyZWF0ZXI8bG9uZyBsb25nPj4gUjsKCiAgLy8gaW5pdCBmKHgpID0gYyAoY29uc3QpCiAgU2xvcGUobG9uZyBsb25nIGMpIDogbWluZihjKSB7fQoKICAvLyBnZXQgbWluaW11bQogIGxvbmcgbG9uZyBnZXQoKXsgcmV0dXJuIG1pbmY7IH0KCiAgLy8gYWRkIGMgZm9yIGFsbAogIHZvaWQgYWRkX2NvbnN0KGxvbmcgbG9uZyBjKXsgbWluZis9YzsgfQoKICAvLyBhZGQgbWF4KDAseC1hKSAoXy8pCiAgdm9pZCBhZGRfeGEobG9uZyBsb25nIGEpewogICAgaWYoIUwuZW1wdHkoKSl7bWluZis9bWF4KDBsbCxMLnRvcCgpLWEpO30KCiAgICBMLnB1c2goYSk7CiAgICBSLnB1c2goTC50b3AoKSk7IEwucG9wKCk7CiAgfQoKICAvLyBhZGQgbWF4KDAsYS14KSAoXF8pCiAgdm9pZCBhZGRfYXgobG9uZyBsb25nIGEpewogICAgaWYoIVIuZW1wdHkoKSl7bWluZis9bWF4KDBsbCxhLVIudG9wKCkpO30KCiAgICBSLnB1c2goYSk7CiAgICBMLnB1c2goUi50b3AoKSk7IFIucG9wKCk7CiAgfQoKICAvLyBhZGQgfHgtYXwgKFwvKQogIHZvaWQgYWRkX2Ficyhsb25nIGxvbmcgYSl7CiAgICBhZGRfeGEoYSk7CiAgICBhZGRfYXgoYSk7CiAgfQoKICAvLyB0YWtlIG1pbihzbWFsbCB0byBsYXJnZSkKICB2b2lkIHNsbWF4KCl7CiAgICB3aGlsZSghUi5lbXB0eSgpKXtSLnBvcCgpO30KICB9CgogIC8vIHRha2UgbWluKGxhcmdlIHRvIHNtYWxsKQogIHZvaWQgbHNtYXgoKXsKICAgIHdoaWxlKCFMLmVtcHR5KCkpe0wucG9wKCk7fQogIH0KfTsKCnZvaWQgdmVyaWZ5X2FiYzEyN2YoKXsKICBTbG9wZSBzbHAoMCk7CiAgbG9uZyBsb25nIHE7CiAgY2luID4+IHE7CgogIHdoaWxlKHE+MCl7CiAgICBxLS07CiAgICBsb25nIGxvbmcgdHlwOwogICAgY2luID4+IHR5cDsKICAgIGlmKHR5cD09MSl7CiAgICAgIGxvbmcgbG9uZyBhLGI7CiAgICAgIGNpbiA+PiBhID4+IGI7CiAgICAgIHNscC5hZGRfYWJzKGEpOwogICAgICBzbHAuYWRkX2NvbnN0KGIpOwogICAgfQogICAgZWxzZXsKICAgICAgY291dCA8PCBzbHAuTC50b3AoKSA8PCAiICI7CiAgICAgIGNvdXQgPDwgc2xwLmdldCgpIDw8ICJcbiI7CiAgICB9CiAgfQp9Cgp2b2lkIHZlcmlmeV9ib2oxMzMyMygpewogIFNsb3BlIHNscCgwKTsKICBsb25nIGxvbmcgbjsKICBjaW4gPj4gbjsKICBmb3IobG9uZyBsb25nIGk9MDtpPG47aSsrKXsKICAgIGxvbmcgbG9uZyBhOwogICAgY2luID4+IGE7CiAgICBhLT1pOwogICAgCiAgICBzbHAuc2xtYXgoKTsKICAgIHNscC5hZGRfYWJzKGEpOwogIH0KICBjb3V0IDw8IHNscC5nZXQoKSA8PCAiXG4iOwp9CgppbnQgbWFpbigpewogIGlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICBjaW4udGllKG51bGxwdHIpOwoKICAvLyB2ZXJpZnlfYWJjMTI3ZigpOwogIHZlcmlmeV9ib2oxMzMyMygpOwogIHJldHVybiAwOwp9Cg==