Cod sursa(job #2461994)

Utilizator CyborgSquirrelJardan Andrei CyborgSquirrel Data 26 septembrie 2019 17:32:59
Problema Secv Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <algorithm>

using namespace std;

ifstream fin("secv.in");
ofstream fout("secv.out");

int n;
vector<int> fatman, tsarbomba;

void projectmanhattan(){
    tsarbomba = fatman;
    sort(tsarbomba.begin(), tsarbomba.end());
    for(int i = n-1; i >= 0; i--){
        if(tsarbomba[i] == tsarbomba[i-1]){
            tsarbomba.erase(tsarbomba.begin()+i);
        }
    }
}

int idk(int p){
    int d = 0, dd, ddd = tsarbomba.size();
    for(int i = p; i < n; i++){
        if(d != ddd && fatman[i] == tsarbomba[d]){
            d++;
            dd = i;
        }
    }

    if(d == ddd){
        return dd-p;
    }else{
        return -1;
    }
}

int main(){
    fin >> n;
    for(int i = 0; i < n; i++){
        int a;fin >> a;
        fatman.push_back(a);
    }
    projectmanhattan();

    int s = -1;
    for(int i = 0; i < n; i++){
        s = max(s, idk(i));
    }
    fout << s;
    return 0;
}