La sfida è stata presa con il permesso del mio concorso per la sfida del codice universitario
Dopo aver terminato gli studi un paio di mesi fa, Marie ha aperto un conto in banca per iniziare a ricevere il pagamento del suo primo lavoro in città. Da allora ha effettuato alcune transazioni con esso. Il suo primo pagamento è stato di $ 1000 dollari. Con quei soldi che ha pagato per una cena in cui ha invitato i suoi genitori (la cena è costata $ 150 dollari), poi, ha fatto un acquisto in un noto supermercato ($ 80 dollari) e una prenotazione d'albergo per le sue vacanze ($ 200). Alla fine del mese ha ricevuto di nuovo il suo pagamento (1040 dollari, un po 'più del mese precedente) e il giorno dopo ha speso altri $ 70 dollari al supermercato.
Oggi, ha capito che se dopo aver pagato i primi $ 80 dollari al supermercato fosse stato creato un secondo account e il primo congelato, entrambi i conti avrebbero avuto esattamente lo stesso saldo:
L'evento è stato così raro per lei che vuole continuare ad accertare se i movimenti del suo account e quelli dei suoi amici hanno anche questa caratteristica o meno.
Sfida
Dato un elenco di transazioni, visualizza il numero di istanti di tempo in cui il proprietario del conto bancario avrebbe potuto creare un secondo conto in modo che entrambi avessero lo stesso saldo finale.
Esempio: [1000, -150, -80, -200, 1040, -70]
Caso di prova
- Ingresso:
1000 -150 -80 -200 1040 -70Uscita:1 - Ingresso:
100 -100Uscita:2 - Ingresso:
1 2 3Uscita:1 - Ingresso:
10 -20 15Uscita:0 - Ingresso:
15 -15 15 -15Uscita:3 - Ingresso:
1Uscita:0
Appunti
- Puoi presumere che non ci sarà alcuna transazione di $ 0 dollari
- Puoi ricevere input in qualsiasi modo ragionevole