Duplicato Mancante

Buona Sera a tutti.
Stavo sottoponendo il programma Duplicato Mancante alla piattaforma. Ho totalizzato solo 30/100.
Non capisco dove è che sbaglio. I casi che fallisce sono i seguenti: 015 - 019 - 025. La piattaforma dice che l'output è scorretto.
Qualcuno mi può aiutare?
Grazie a tutti in anticipo!

Qual’è la tua idea?

Ordino i numeri delle pagine e controllo dall’inizio a due a due le pagine. Non appena trovo che due sono diverse stampo il primo valore diverso. Esempio per il testcase dato nel testo:

5
4 5 4 10 8 10 3 5 8
Il mio programma ordina così i numeri:
3 4 4 5 5 8 8 10 10
Non appena confronta i primi due trova due numeri diversi e stampa il primo.

Hai controllato di non uscire dalla dimensione del vettore?

Se il numero mancante è l’ultimo cosa fa il tuo programma?

Può darsi sia quello il problema anche se sul primo test case 1 1 2 sembra funzioni.

Ho provato anche con l’ultimo numero diverso e sembra funzioni.
Esempio:
3
1 1 2 2 3
Il programma stampa 3, quindi è giusto.
Proverò lo stesso a modificare il codice considerando il caso dell’ultimo numero ma non sono sicuro che sia quello il motivo.
Può darsi sia quello il problema anche se sul primo test case 1 1 2 sembra funzioni.
Ho provato anche con l'ultimo numero diverso e sembra funzioni.
Esempio:
3
1 1 2 2 3
Il programma stampa 3, quindi è giusto.
Proverò lo stesso a modificare il codice considerando il caso dell'ultimo numero ma non sono sicuro che sia quello il motivo.

simonescanzani

Beh, se accedi ad un'area di memoria non allocata può succedere di tutto (il cosiddetto "Undefined behavior") quindi magari sul tuo pc funziona ma sul correttore no. Oppure funziona su alcuni testcase mentre su altri no... 

Tra l’altro, quel problema ha una soluzione di una riga, un po’ truccosa:


la risposta è pari allo XOR di tutti i numeri.
Tra l'altro, quel problema ha una soluzione di una riga, un po' truccosa:

la risposta è pari allo XOR di tutti i numeri.

gfarina

Lamer

LOL

C’era un problema simile in una COCI recente °L°