Cod sursa(job #2717683)

Utilizator AndreiBOTOBotocan Andrei AndreiBOTO Data 7 martie 2021 20:09:38
Problema Invers modular Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 1.39 kb
#include <fstream>
#include <iostream>
using namespace std;
ifstream fin("ascdesc.in");
ofstream fout("ascdesc.out");
const int NMAX=100005;
long long v[NMAX],kon,s,tot,n;
long long st[NMAX],dr[NMAX];
long long crescator(long long v[],long long n,long long k)
{
    long long i,j,kon=0,s=0,maxim1=-1,indice1,indice2,maxim2=-1,diff1=0,diff2=0;
    for(i=1;i<=k;i++)
    {
        if(maxim1<v[i])
            maxim1=v[i],indice1=i;
    }
    for(i=indice1;i<=k;i++)
    {
        s=s+maxim1-v[i];
    }
    diff1=v[1];
    for(i=1;i<indice1;i++)
    {
        if(diff1>v[i+1])
        {
            s=s+diff1-v[i+1];
        }
        else
            diff1=v[i+1];
    }
///PARTEA STANGA TERMINATA
    for(i=k;i<=n;i++)
    {
        if(maxim2<=v[i])
            maxim2=v[i],indice2=i;
    }
    for(i=k;i<=indice2;i++)
    {
        s=s+maxim2-v[i];
    }
    diff1=v[n];
    for(i=n;i>indice2;i--)
    {
        if(diff1>v[i-1])
        {
            s=s+diff1-v[i-1];
        }
        else
            diff1=v[i-1];
    }
    if(maxim1<=maxim2)
        s=s+v[k]-maxim1;
    else
        s=s+v[k]-maxim2;
        return s;
}
int main()
{
    long long i,j,n,maxim=-1,k=1,ind,s=0,inc,sf,rez,s1,s2,maxim1=0,maxim2=0,ind1,ind2,nou1,nou2,nou=0,nou3,aux,x;
    fin>>n;
    for(i=1;i<=n;i++)
    fin>>v[i];
    while(k<=n)
        fout<<crescator(v,n,k)<<" ",k++;
}