Errore di compilazione su Spiedini

Sto sottomettendo il seguente codice per spiedini e mi continua a dare errore di compilazione nonostante da locale sia con Dev-C++ che con NetBeans non mi dia nessun errore… Probabilemte avrò un bug stupido nel codice ma non lo trovo e non capisco perche i due compilatori non me lo segnalino!

#include <iostream>
#include <algorithm>
#include <math.h>
#include <vector>
#include <string>
#include <utility>
#include <stdio.h>
#include <queue>
#include <fstream>
#include <functional>
#include <cstdlib>
#include <map>
#include <set>
#include <bitset>

using namespace std;

int N,k,sol,rSum[20000005],lSum[20000005],tZ,pR,pL,tZR[20000005],tZL[20000005];

int main() {
    ifstream in; ofstream out;
    in.open("input.txt"); out.open("output.txt");
    
    in>>N>>k;
    
    for(int i=0;i<N;i++){
        int t;
        in>>t;
        if(t==0)
            tZ++;
        tZL[i]=tZ;
        if(i==0)
            lSum[i]=t;
        else
            lSum[i]=lSum[i-1]+t;
        rSum[i]=t;          
    }
    
    for(int i=N-1;i>=0;i--){
        if(rSum[i]==0)
            tZR[i]++;
        if(i!=N-1){
            tZR[i]+=tZR[i+1];
            rSum[i]+=rSum[i+1];
        }
    }

    pR=0;
    pL=-1;
    while(rSum[pR]>k)
        pR++;
    
    while(pR<N){
        while(rSum[pR]+lSum[pL+1]<=k)
            pL++;
        if(pL<0){
            if(rSum[pR]>sol)
                sol=tZR[pR];
            pR++;
            continue;
        }
        if(pL>=pR){
            sol=tZ;
            break;
        }
        if(tZR[pR]+tZL[pL]>sol)
            sol=tZR[pR]+tZL[pL];
        pR++;                  
    }
      
    out<<sol;

    in.close(); out.close(); 
    return 0;
}

Nel problema spiedino devi implementare una funzione solve non la funzione main. Prova a vedere le specifiche nel testo e scaricati i template in allegato :slight_smile:

Giustamente, ero talmente impegnato a risolvere il problema che mi era passato di mente ahah. Grazie :slight_smile: