Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency
Q
?
A -
Informatica
search
Login
Remember
Register
New Activity
Questions
Unanswered
Tags
Categories
Users
Course
News
FAQs
Do you need help?
Ask a Question
Notice Board
Situazione finale voti HW
Eserciziario Python
WTF Python!
Exams
Test
Grades
Attachments
Esame 6-11-19
check
RECUPERO Homework 1
link
RECUPERO Homework 2
link
RECUPERO Homework 3
link
RECUPERO Homework 4
link
Esame 19-9-19
check
link
Esame 16-7-19
check
link
Esame 24-6-19
check
link
Esame 10-4-19
check
link
Esame 31-1-19
check
link
Esame 8-1-19
check
link
Homework 4
link
Homework 3
check
link
Homework 2
check
link
Homework 1
check
link
1.162
questions
1.988
answers
3.710
comments
591
users
Related questions
Homework 1 - Esercizio 1 - Come ottimizzare?
Most popular tags
esercizio3
homework3
es3
homework
es2
hw3
homework1
es1
homework4
homework2
esercizio1
esercizio2
avvisi
hw4
hw2bis
peer-assessment
python
hw4bis
problema
hw3bis
prova-di-esame
homework-di-recupero
hw2
test
voti
esame
ricorsione
consegna
hw1bis
tempi
aiuto
homework2bis
errore
dizionari
librerie
risultati
liste
attore
scadenze
feedback
consigli
leggibilità
zip
hw1
research
oggetti
esercizio
metodi
program_03
bonus
Categories
Announcements
(13)
Intro. to Programming and Lab AA22-23 (Latina)
(14)
Programming AY20-21
(123)
Programming AY21-22
(205)
Programming AY22-23
(296)
Programming AY23-24
(182)
Fondamenti di programmazione AA18-19
(1.2k)
Info sul corso e sugli esami
(278)
Homework
(650)
Homework 1
(165)
Es1
(85)
Es2
(30)
Es3
(50)
Homework 2
(149)
Homework 3
(216)
Homework 4
(120)
Programmare in python
(31)
Avvisi
(65)
Homework di recupero
(138)
Fondamenti di Programmazione AA19-20
(436)
Fondamenti di Programmazione AA20-21
(708)
Fondamenti di programmazione AA21-22
(366)
Fondamenti di programmazione AA22-23
(564)
Fondamenti di programmazione AA23-24
(349)
Other
(26)
Anni precedenti
(784)
Architetture degli elaboratori AA20-21
(3)
BUG BOUNTY / IMPROVEMENTS
(4)
Ottimizzare ese1
Sickboy
(28240 points)
8
25
68
asked
Oct 22, 2018
in
Es1
by
Sickboy
(
28.2k
points)
Non saprei proprio come ottimizzare il mio codice per renderlo più veloce, per ora ho una decina di righe di codice e nel complesso 2 for e 1 if, solo che col timeout l'ultimo test non lo passa, qualche consiglio??
930
views
closed
6
3
Answers
Best answer
u
ugo.monticone
(1220 points)
0
3
13
answered
Oct 22, 2018
by
ugo.monticone
(
1.2k
points)
selected
Oct 22, 2018
by
Sickboy
Avevo il tuo stesso problema. poi ho ragionato sull'ordine dei cicli della mia soluzione ed ho riscontrato che due cicli annidati (a indici x e y, per esempio) si traducono in x*y ripetizioni. Analizzando il problema da un altro punto di vista, ho capito che potevo ridurre il tutto a cicli di ordine 1, cioè non annidati e sono rientrato nei tempi stabiliti!
3
comment
DRDLCN
(8070 points)
28
68
104
commented
Oct 22, 2018
by
DRDLCN
(
8.1k
points)
Un altro punto di vista in che senso?
https://q2a.di.uniroma1.it/qa-plugin/q2a-smilies/images/emoticon-00179-headbang.gif
alessioclemente
(19640 points)
19
67
153
commented
Oct 22, 2018
by
alessioclemente
(
19.6k
points)
In pratica hai usato 2 cicli separati?
u
ugo.monticone
(1220 points)
0
3
13
commented
Oct 22, 2018
by
ugo.monticone
(
1.2k
points)
mi sono chiesto come potevo ottenere il risultato richiesto riducendo al minimo lo sforzo. mi sono accorto che, per fortuna, ci sono molti modi diversi di risolvere l'esercizio e tutti giusti. Questo è vero fino a quando non ti ritrovi a dover fare i conti col cronometro: allora mi sono detto:"come posso calcolare il numero di ammessi in base al voto?" Ho rigirato la domanda fino a farmela andare bene. se trovi i due cicli giusti, annidati o no, stanno nei tempi!!
Please
log in
or
register
to add a comment.
DRDLCN
(8070 points)
28
68
104
answered
Oct 22, 2018
by
DRDLCN
(
8.1k
points)
I cicli for sono annidati?
2
comment
Sickboy
(28240 points)
8
25
68
commented
Oct 22, 2018
by
Sickboy
(
28.2k
points)
In pratica si anche se quello più interno l ho messo in una funzione
Xriuk
(13590 points)
8
24
116
commented
Oct 22, 2018
by
Xriuk
(
13.6k
points)
Se sono annidati ci sono comunque parecchie iterazioni
Sickboy
(28240 points)
8
25
68
commented
Oct 22, 2018
by
Sickboy
(
28.2k
points)
Infatti chiedevo un consiglio per migliorare
Please
log in
or
register
to add a comment.
Xriuk
(13590 points)
8
24
116
answered
Oct 22, 2018
by
Xriuk
(
13.6k
points)
Il numero delle righe non conta, quello che cambia da un algoritmo a un altro è la logica, se il tuo non passa il timeout vuol dire che stai facendo qualche operazione "pesante" o ripetitiva. Non sapendo il tuo codice, il mio consoglio è quello di controllare se richiami qualche funzione di troppo nei tuoi cicli oppure se puoi saltare qualche iterazione (ad esempio far avanzare un contatore in un determinato modo)
4
comment
Sickboy
(28240 points)
8
25
68
commented
Oct 22, 2018
by
Sickboy
(
28.2k
points)
Non richiamo funzioni di troppo, e gli indici partono già da una posizione avanti
N
Nikolay
(1250 points)
5
21
30
commented
Oct 23, 2018
by
Nikolay
(
1.3k
points)
Sto facendo es1 del homework1. Per ora la mia funzione non passa nessun test. Per ora vorrei capire se sto procedendo nel modo giusto. Ho scaricato homework1.zip. Dopo ho installato i plugin necessari, dopo di che ho implementato la funzione es1(voti). Compilatore non passa nessun, il primo errore e' questo test_2_valori_soli_grandi_1__300__800_ (__main__.Test)
tuple() -> empty tuple ... FAIL. Prima domanda e' questa : devo cimplementare funzione es1(voti) che restituisce il numero degli studenti che abbiano preso un certo voto. Giusto?
Xriuk
(13590 points)
8
24
116
commented
Oct 23, 2018
by
Xriuk
(
13.6k
points)
Se hai un problema ti consiglio di fare una domanda separata.
Comunque no, la tua funzione deve restituire una lista e per ogni voto da 0 al voto massimo il numero di studenti con un voto maggiore o uguale al voto.
N
Nikolay
(1250 points)
5
21
30
commented
Oct 23, 2018
by
Nikolay
(
1.3k
points)
Grazie, Roman. In effetti ho sbagilato io a fare domanda, cioe la funzione deve restituire una lista che va da 0 al voto massimo(ad esempio da 0 a 5), e in ogni posizione(che rappresenta il voto) il numero degli studenti ammessi. Un esempio se ho una lista dei voti ls = [1,1,3,3,3,5,5,5,5] mi deve restituire studenti_ammessi = [0,2,0,3,0,4]. Giusto?
Xriuk
(13590 points)
8
24
116
commented
Oct 23, 2018
by
Xriuk
(
13.6k
points)
In questo caso ti dovrebbe restituire [9, 9, 7, 7, 4, 4] (i voti che non ci sono fra gli studenti vanno considerati comunque), e non assumere che la lista dei voti sia già ordinata in partenza
N
Nikolay
(1250 points)
5
21
30
commented
Oct 23, 2018
by
Nikolay
(
1.3k
points)
Grazie, Roman, sei stato molto di aiuto!
D
Deacoon
(9100 points)
11
34
53
commented
Dec 5, 2018
by
Deacoon
(
9.1k
points)
togli i for annidati
Sickboy
(28240 points)
8
25
68
commented
Dec 5, 2018
by
Sickboy
(
28.2k
points)
Che tempismo
Please
log in
or
register
to add a comment.