Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
vivo X300 Pro rappresenta un'evoluzione misurata della serie fotografica del produttore cinese, con un sistema di fotocamere migliorato, chipset Dimensity 9500 di ultima generazione e l'arrivo dell'interfaccia OriginOS 6 anche sui modelli internazionali. La scelta di limitare la batteria a 5.440mAh nel mercato europeo, rispetto ai 6.510mAh disponibili altrove, fa storcere un po' il naso
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2 è la nuova handheld PC gaming con processore AMD Ryzen Z2 Extreme (8 core Zen 5/5c, GPU RDNA 3.5 16 CU) e schermo OLED 8,8" 1920x1200 144Hz. È dotata anche di controller rimovibili TrueStrike con joystick Hall effect e una batteria da 74Wh. Rispetto al dispositivo che l'ha preceduta, migliora ergonomia e prestazioni a basse risoluzioni, ma pesa 920g e costa 1.299€ nella configurazione con 32GB RAM/1TB SSD e Z2 Extreme
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
A re:Invent 2025, AWS mostra un’evoluzione profonda della propria strategia: l’IA diventa una piattaforma di servizi sempre più pronta all’uso, con agenti e modelli preconfigurati che accelerano lo sviluppo, mentre il cloud resta la base imprescindibile per governare dati, complessità e lock-in in uno scenario sempre più orientato all’hybrid cloud
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-09-2010, 18:07   #1
matteo.pata
Member
 
L'Avatar di matteo.pata
 
Iscritto dal: Oct 2004
Città: Gazzada (Va)
Messaggi: 186
[C] progetto su skyline

Ciao ragazzi rieccomi qua ad esporvi le mie problematiche:
ho un progetto da fare: mi servirebbe una mano per scegliere la giusta struttura dati da utilizzare e per mettere giù qualche pezzo di codice:
il testo è:
New New New York è la città più popolata nell'anno 3500 D.C. (costruita sulle ceneri di New New
York). A NNNY si costruiscono grattacieli quasi ogni giorno. I grattacieli non sono fatti per durare in
eterno. Già al momento della costruzione è nota la data della demolizione, talvolta vicinissima a quella
di costruzione.
Ogni grattacielo al momento della costruzione viene battezzato con un nome (univoco). Qualche volta,
si decide di ristrutturare un grattacielo già esistente e si proroga la data della sua demolizione.
New New New York si a accia sul mare: la sua spiaggia si estende da Nord a Sud. Se la si osserva dal
mare, di notte, sopra alla spiaggia appare un tipico skyline (la linea di con ne fra cielo e grattacieli).
Infatti, ogni metro di spiaggia (ad una certa latitudine) è sovrastato da un certo numero di grattacieli a
longitudini diverse (talvolta uno o nessuno). Chiaramente, è sempre il più alto di questi a svettare sugli
altri, e la sua altezza de nisce l'altezza dello skyline su quel metro di spiaggia. In assenza di palazzi, lo
skyline è alto zero.
Il problema consiste nel registrare, un certo numero di volte durante la serie di costruzioni e abbattimenti,
quante altre volte lo skyline si è presentato esattamente nella stessa forma in passato (per ni turistici e
storici).
Dati in input
L'input consiste in una serie di righe. Nella prima riga compare un numero, che corrisponde alla lunghezza totale della spiaggia in metri (per esempio, se vale 5, la spiaggia comincia nel punto 0 e si estende no al punto 5).
Ciascuna riga successiva descrive un evento quotidiano, oppure una query. Ogni giorno avviene soltanto un evento. Un evento può corrispondere alla costruzione di un nuovo palazzo, oppure alla ristrutturazione di un palazzo già esistente (con conseguente procrastinamento della sua demolizione), oppure ancora al semplice passaggio di una giornata (evento vuoto). Costruzioni e ristrutturazioni avvengono sempre nel primo mattino. La sera, quando è necessario, uno (o anche più) palazzi (arrivati alla ne della loro vita) possono essere abbattuti. Se nella riga successiva all'evento compare una query, allora il programma deve rispondere ad una domanda relativa alla notte successiva all'ultimo evento trascorso.
E' Le righe che descrivono una query consistono nel solo carattere \punto interrogativo". Nel leggere questa riga, il programma dovrà stampare a schermo il numero di notti precedenti nelle quasi lo skyline si è presentato identico a quello della notte corrente . Ad esempio, se durante la notte relativa alla richiesta siamo in presenza di uno skyline inedito, si dovrà stampare il numero 0. Se lo skyline è identico a quello della notte di una settimana prima (ma diverso da quello di tutte le altre notti) si dovrà stampare il numero 1.

Gli eventi di tipo costruzione cominciano con la stringa \new" (senza le virgolette), seguita dal nome del palazzo costruito, seguito da una tripletta di misure del grattacielo, seguito dalla durata prevista, cioè dal numero di giorni che il grattacielo deve durare prima di essere abbattuto. Le tre misure rappresentano, rispettivamente: da quale metro di spiaggia comincia e a quale metro fi nisce
il grattacielo, e la sua altezza, in centimetri. Si tratta di tre numeri naturali. Ad esempio, se compaiono i numeri 4 6 1000, signi ca che il grattacielo si estende nell'intervallo che comincia a 4 metri esatti, nisce al sesto metro (sarà dunque lungo due metri), ed è alto 1000 centimetri (10 metri). La durata è espressa in giorni, ed e' un numero naturale strettamente maggiore di 0 che rappresenta il numero di giornate che devono trascorrere prima dell'abbattimento (salvo rimandi). Il grattacielo viene abbattuto la sera della sua ultima giornata, prima della notte successiva. Quindi, ad esempio, se la durata valesse 1, il grattacielo verrebbe abbattuto ancor prima della notte successiva.

Gli eventi di tipo ristrutturazione cominciano con la stringa \renew" (senza le virgolette), seguita dal nome del palazzo in questione, seguito dal numero di giorni di durata ulteriore da attribuire al grattacielo.

Gli eventi vuoti consistono nella lettera \v" (senza le virgolette).
La serie di righe è terminata da una riga composta da un solo punto esclamativo, che segnala la ne del
problema.


L'input viene fornito al programma sotto forma di fi le di testo, il cui nome viene speci cato dal primo
argomento passato al programma. Se non ne viene speci cato alcuno, l'input deve venir letto direttamente dallo stdin.
Dopo la lettura di un evento, il programma deve stampare un numero Alla ne della giornata a cui l'evento fa riferimento.


Facciamo ad esempio il seguente caso di le di input.
15
new aaa 7 10 2500 3
new bbb 5 10 1500 100
?
new ccc 7 9 2500 100
new ddd 9 10 2500 100
?
!
2


Il primo giorno viene costruito aaa, e il secondo bbb.
Al momento della la prima query, la seconda notte, saranno presenti entrambi i grattacieli aaa e bbb. Dal metro 7 al metro 10 (dunque per tre metri) avremo uno skyline alto esattamente 25 metri (l'altezza del palazzo aaa). Dal metro 5 al 7, alto 15 (per il palazzo bbb, che in e etti prosegue anche no al metro 10,
ma dal metro 7 al 10 la sua silhouette viene coperta da quella di aaa). Visto che questa con gurazione non ha avuto precedenti, alla query si risponderà con uno 0.
La mattina del terzo giorno viene costruito ccc. Alla sera dello stesso giorno, aaa viene abbattuto. Il quarto giorno viene costruito ddd. Al momento della seconda query, cioe la quarta notte, lo skyline è lo stesso della seconda notte (pur essendo in piedi un numero diverso di palazzi). Dunque alla query si
risponderà con un 1.
So noti che e' alla seconda query si sarebbe dovuto rispondere nello stesso modo anche se la prima query non fosse stata e ettuata. Infatti, conta il numero di notti, indipendentemente dal numero di queries.



Grazie in anticipo a tutti quelli che mi daranno una mano....
__________________
......IN FASE DI COSTRUZIONE PC NUOVO.......
matteo.pata è offline   Rispondi citando il messaggio o parte di esso
Old 10-09-2010, 19:37   #2
tuccio`
Senior Member
 
Iscritto dal: Apr 2010
Città: Frosinone
Messaggi: 416
non so se qualcuno ti darà una mano, è molto più facile che la gente faccia come me: scrolli il mattone e posti un commento inutile ^_^
tuccio` è offline   Rispondi citando il messaggio o parte di esso
Old 12-09-2010, 18:57   #3
matteo.pata
Member
 
L'Avatar di matteo.pata
 
Iscritto dal: Oct 2004
Città: Gazzada (Va)
Messaggi: 186
up dai ragazzi una mano per favore
__________________
......IN FASE DI COSTRUZIONE PC NUOVO.......
matteo.pata è offline   Rispondi citando il messaggio o parte di esso
Old 13-09-2010, 10:14   #4
lupoxxx87
Senior Member
 
Iscritto dal: Jul 2009
Città: Varès
Messaggi: 658
è uguale a quello che avevi postato, e ti avevamo già detto come risolvere, tempo fa
__________________
Quote:
Originariamente inviato da piccolino Guarda i messaggi
l'html si può considerare benissimo un linguaggio di programmazione web. se vogliamo dirla tutta anche css... è come programmare in c++
lupoxxx87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-09-2010, 20:44   #5
matteo.pata
Member
 
L'Avatar di matteo.pata
 
Iscritto dal: Oct 2004
Città: Gazzada (Va)
Messaggi: 186
hai ragione infatti lo avevo risolto però questo è un po' diverso e sopratutto la'ltra volta il prof mi aveva fatto storie per la strutttura dati utilizzata infatti mi avevo dato 18.Per quello ho ripostato il nuovo progetto simile per poter vedere di darmi una mano su una nuova struttura dati.
__________________
......IN FASE DI COSTRUZIONE PC NUOVO.......
matteo.pata è offline   Rispondi citando il messaggio o parte di esso
Old 13-09-2010, 20:56   #6
khelidan1980
Senior Member
 
L'Avatar di khelidan1980
 
Iscritto dal: Mar 2005
Città: Morimondo city
Messaggi: 5491
Quote:
Originariamente inviato da matteo.pata Guarda i messaggi
hai ragione infatti lo avevo risolto però questo è un po' diverso e sopratutto la'ltra volta il prof mi aveva fatto storie per la strutttura dati utilizzata infatti mi avevo dato 18.Per quello ho ripostato il nuovo progetto simile per poter vedere di darmi una mano su una nuova struttura dati.
pensarne una te no? troppo eh?
__________________
Khelidan
khelidan1980 è offline   Rispondi citando il messaggio o parte di esso
Old 13-09-2010, 21:03   #7
matteo.pata
Member
 
L'Avatar di matteo.pata
 
Iscritto dal: Oct 2004
Città: Gazzada (Va)
Messaggi: 186
ci sto pensando ma non sono troppo ferrato sugli algoritmi e sul C e visto il lavoro e tutto il resto ho chiesto appunto una mano a voi.
__________________
......IN FASE DI COSTRUZIONE PC NUOVO.......
matteo.pata è offline   Rispondi citando il messaggio o parte di esso
Old 14-09-2010, 14:37   #8
Darecon
Senior Member
 
Iscritto dal: Sep 2003
Città: Tradate
Messaggi: 396
Quote:
Originariamente inviato da matteo.pata Guarda i messaggi
ci sto pensando ma non sono troppo ferrato sugli algoritmi e sul C e visto il lavoro e tutto il resto ho chiesto appunto una mano a voi.
Io non lo rifarei, tanto massazza non tiene conto del voto di tarini.. Poi vedi te..
Darecon è offline   Rispondi citando il messaggio o parte di esso
Old 14-09-2010, 15:16   #9
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da matteo.pata Guarda i messaggi
ci sto pensando ma non sono troppo ferrato sugli algoritmi e sul C e visto il lavoro e tutto il resto ho chiesto appunto una mano a voi.
Ciao Scusa l'intromissione e, per evitare qualsiasi equivoco, dico già che non è direttamente rivolto a te quanto sto per chiedere:

Ma, mi chiedo e vi chiedo, come è possibile che si debbano sostenere certi esami, se non si conosce neanche la materia per affrontarli ?

Davvero, non capisco

Se non conosco (int questo caso) il "C" , com'è possibile che devo affrontarci addirittura un esame ? o meglio... che diavolo si studia allora all'università ?!?!?!?


Chiedo ancora scusa all'autore per l'OT .
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 14-09-2010, 18:26   #10
Darecon
Senior Member
 
Iscritto dal: Sep 2003
Città: Tradate
Messaggi: 396
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
Ciao Scusa l'intromissione e, per evitare qualsiasi equivoco, dico già che non è direttamente rivolto a te quanto sto per chiedere:

Ma, mi chiedo e vi chiedo, come è possibile che si debbano sostenere certi esami, se non si conosce neanche la materia per affrontarli ?

Davvero, non capisco

Se non conosco (int questo caso) il "C" , com'è possibile che devo affrontarci addirittura un esame ? o meglio... che diavolo si studia allora all'università ?!?!?!?


Chiedo ancora scusa all'autore per l'OT .
Si studia si studia..
Probabilmente e' lui, che, a quanto ho capito, non seguendo i corsi non ha capito..
Darecon è offline   Rispondi citando il messaggio o parte di esso
Old 14-09-2010, 19:19   #11
matteo.pata
Member
 
L'Avatar di matteo.pata
 
Iscritto dal: Oct 2004
Città: Gazzada (Va)
Messaggi: 186
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
Ciao Scusa l'intromissione e, per evitare qualsiasi equivoco, dico già che non è direttamente rivolto a te quanto sto per chiedere:

Ma, mi chiedo e vi chiedo, come è possibile che si debbano sostenere certi esami, se non si conosce neanche la materia per affrontarli ?

Davvero, non capisco

Se non conosco (int questo caso) il "C" , com'è possibile che devo affrontarci addirittura un esame ? o meglio... che diavolo si studia allora all'università ?!?!?!?


Chiedo ancora scusa all'autore per l'OT .
diciamo che studiare ho studiato ma per programmare come ben tu sai ci vuole passione e sopratutto bisogna essere portati.
Io ho fatto informatica non per diventare programmatore ma ben si per diventare sistemista.E infatti lavoro in un'azienda come sistemista.
E' vero basta studiare e applicarsi ho già svolto almeno 3 progetti ma purtroppo le mie doti del C non sono proprio affini.Io vi ho chiesto una mano su che struttura dati utilizzare non su tutto il codice.Ho chiesto una mano perchè per me il C risulta difficile anche avendolo studiato per anni.
Quindi non è un problema di studiare fidati torno dal lavoro e mi faccio un C___o quadro pr poter finire l'università visto che mi mancano solo due esami.

Ciao ringrazio tutti per gli aiuti che mi darete....
__________________
......IN FASE DI COSTRUZIONE PC NUOVO.......
matteo.pata è offline   Rispondi citando il messaggio o parte di esso
Old 14-09-2010, 20:15   #12
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2782
Io terrei un vettore di liste ordinate (per altezza) di grattacieli.
Il vettore conterrà all'indice 0 la lista di grattacieli che iniziano al metro 0, all'indice 1 quelli che iniziano al metro 1 e così via.
In questo modo ricavare lo skyline di un giorno è semplice e veloce (complessità O(n) nel numero di metri).
Ogni sera dovrai scorrere tutte le liste per decrementare i giorni di vita ed eliminare quelli che sono arrivati a zero (quindi complessità O(n) nel numero di grattacieli).
Rinnovare un grattacielo ha la stessa complessità perché devi cercarlo per nome all'interno delle liste.
Aggiungere un grattacielo ha sempre complessità O(n) perché i grattacieli potrebbero iniziare tutti allo stesso metro e quello da inserire potrebbe essere il più basso.

Lo skyline lo calcolerei tutti i giorni e lo metterei da parte insieme a quelli già calcolati, quando è richiesta una query confronti lo skyline del giorno con i precedenti (già calcolati) e quindi nuovamente con complessità O(n).

Tutte queste complessità valgono se utilizzi delle liste semplici, se poi usi delle strutture un po' più sofisticate (come degli heap) si può migliorare.
Inoltre potresti tenere in memoria anche più di una struttura dati per usare quella più adatta all'operazione che devi eseguire (in questo caso devi fare attenzione a mantenere coerenti i dati in tutte le strutture).

Spero di non aver dimenticato nulla.
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 15-09-2010, 10:57   #13
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
[quote=matteo.pata;33087307]

Cut

[\QUOTE]

Non devi spiegarmi ne giustificarti di nulla, almeno con me

Ho premesso che non era direttamente rivolto a te ma è che mi capita spesso di leggere 3d di richiesta di soluzione completa(e non è il tuo caso) di un esercizio perchè non si conosce la materia.

Per quanto mi riguarda è diverso tempo che sono confinato ad un livello basso di preparazione e di esperienza perchè, se è vero che di passione ne ho da vendere, non avendo fatto l'università ho delle enormi lacune che difficilmente (idea mia) da autodidatta si riescono a colmare.

Scusami ancora per l'OT
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 16-09-2010, 00:23   #14
matteo.pata
Member
 
L'Avatar di matteo.pata
 
Iscritto dal: Oct 2004
Città: Gazzada (Va)
Messaggi: 186
tranquillo non l'ho presa sul personale era solo per chiarire un po' la mia situazione.Diciamo che cmq esperienza personale, Si ti posso dare una mano nel programmare i docenti universitari ma la maggior parte delle cose te le devi vedere per conto tuo.Le basi te le danno per bene e poi sei te che ti devi smazzare il resto.
Cmq rimango sempre in attesa di info sul mio progetto
__________________
......IN FASE DI COSTRUZIONE PC NUOVO.......
matteo.pata è offline   Rispondi citando il messaggio o parte di esso
Old 18-09-2010, 11:37   #15
matteo.pata
Member
 
L'Avatar di matteo.pata
 
Iscritto dal: Oct 2004
Città: Gazzada (Va)
Messaggi: 186
UP....please aiutatemi...
__________________
......IN FASE DI COSTRUZIONE PC NUOVO.......
matteo.pata è offline   Rispondi citando il messaggio o parte di esso
Old 19-09-2010, 01:19   #16
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2782
Quote:
Originariamente inviato da matteo.pata Guarda i messaggi
UP....please aiutatemi...
Veramente io avevo scritto un post 4 giorni fa... in effetti non sono sceso molto nel dettaglio.
Ho pensato che potresti implementare più strutture dati (come accennavo nello scorso post) in modo da coprire più o meno tutte quelle che avete visto durante il corso.
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 19-09-2010, 13:34   #17
matteo.pata
Member
 
L'Avatar di matteo.pata
 
Iscritto dal: Oct 2004
Città: Gazzada (Va)
Messaggi: 186
si il post mi è risultato utile..non so però ancora come tenere traccia dei vari skyline creati...praticamente non so in che struttura dati salvarli,perchè ogni volta che creo o distruggo un grattacielo devo tenere traccia dello skyline.
__________________
......IN FASE DI COSTRUZIONE PC NUOVO.......
matteo.pata è offline   Rispondi citando il messaggio o parte di esso
Old 19-09-2010, 15:48   #18
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2782
Io lo vedo intuitivamente come una lista di coppie di valori (metro,altezza) in cui per risparmiare spazio si possono eliminare tutte le coppie la cui altezza non cambia rispetto alla coppia precedente. Quindi per determinare se due skyline sono uguali basta confrontare le due liste. Per rendere i confronti ancora più veloci puoi tenere dei codici hash delle liste in modo che se l'hash non corrisponde non perdi tempo a confrontare le liste.
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 22-09-2010, 20:43   #19
FeDeGbR
Junior Member
 
Iscritto dal: Dec 2006
Città: GERMIGNAGA
Messaggi: 2
è lo stesso progetto che sto facendo anche io =D
ti mando un messaggio privato...
FeDeGbR è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria Recensione vivo X300 Pro: è ancora lui il...
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'...
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti AWS re:Invent 2025: inizia l'era dell'AI-as-a-Se...
Cos'è la bolla dell'IA e perché se ne parla Cos'è la bolla dell'IA e perché se...
BOOX Palma 2 Pro in prova: l'e-reader diventa a colori, e davvero tascabile BOOX Palma 2 Pro in prova: l'e-reader diventa a ...
Il nucleo della cometa interstellare 3I/...
La Russia potrebbe sviluppare un'arma pe...
Manda la RAM Corsair in assistenza, rice...
ASUS ROG G1000 con 'AniMe Holo': saranno...
Un test di longevità ha messo alla prova...
Incat inizia i test dell'incredibile tra...
LG Sound Suite: al CES il sistema audio ...
Avengers Doomsday, il primo trailer &egr...
La crisi delle memorie non farà sconti a...
Il trailer più atteso dell'anno &...
I gamer vogliono i monitor OLED: sopratt...
Samsung alza l’asticella dei televisori ...
Energie rinnovabili 2025: quasi 42% del ...
Le auto elettriche volano in tutta Europ...
Nuovo look per la finestra Esegui su Win...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 06:42.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v