Mai intai trebuie sa te autentifici.
Cod sursa(job #2522329)
Utilizator | Data | 12 ianuarie 2020 13:07:39 | |
---|---|---|---|
Problema | Operatii | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | pregatire2020 | Marime | 1.19 kb |
/*
ID: Sho10
LANG: C++
TASK:
*/
#include <bits/stdc++.h> //JuniorMonster a.k.a Sho10
#define ll long long int
#pragma GCC optimize("O3")
#pragma GCC optimize("Ofast")
#define all(a) (a).begin(), (a).end()
#define sz size
#define f first
#define s second
#define pb push_back
#define er erase
#define in insert
#define mp make_pair
#define pi pair
#define rc(s) return cout<<s,0
#define endl '\n'
#define mod 1000000007
#define PI 3.14159265359
#define CODE_START ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
using namespace std;
ll n,x,ans=0;
vector<ll>v;
int32_t main(){
CODE_START;
ifstream cin("operatii.in");
ofstream cout("operatii.out");
cin>>n;
for(ll i=0;i<n;i++)
{
cin>>x;
v.pb(x);
}
while(1!=0){
ll d=0,mn=-1;
for(ll i=0;i<n;i++)
if(v[i]>=1){
d=-1;
}
if(d==-1){
d=0;
}else {
rc(ans);
}
for(ll i=0;i<n;i++){
if(v[i]>=1){
if(mn==-1){
mn=v[i];
}else mn=min(mn,v[i]);
d++;
}else {
if(d!=0){
for(ll j=i-d;j<i;j++)
{
v[j]=v[j]-mn;
}
ans++;
}
d=0;
mn=-1;
}
}
if(d!=0){
for(ll j=n-d;j<n;j++)
v[j]=v[j]-mn;
ans++;
}
}
}