feat: aggiungo parte1 e parte2 di 04_aeolian_transmissions
This commit is contained in:
parent
c41cabedd0
commit
bad4c1eb29
7 changed files with 352 additions and 0 deletions
|
|
@ -36,3 +36,68 @@ For example, consider the (smaller) inventory list below:
|
|||
The first range, 8-9, contains 2 boxes. The second range, 9-10, contains 2 boxes. The third range, 7-8, contains 2 boxes. The fourth range, 8-10, contains 3 boxes. By continuing this process, we can determine that the total number of boxes (for this file) is 43.
|
||||
|
||||
Considering your file, what is the total number of boxes in all of the piles?
|
||||
|
||||
|
||||
Part 2
|
||||
Difficulty Rating: 2
|
||||
|
||||
The calculation was correct, but there are noticeably fewer piles than expected… You’ll just ask the captain about this.
|
||||
|
||||
“Oh, he must’ve misremembered. Each line in the file actually represents one pile.”
|
||||
|
||||
Ah, a miscommunication. Apparently, both ranges on a line represent one pile. That’s alright, as you still have some time.
|
||||
|
||||
The captain tells you that if a number is in any of the ranges on a line, then that pile contains one box labelled with that number. For example:
|
||||
|
||||
|
||||
A pile represented by 6-8 8-10 contains 5 boxes (labelled 6, 7, 8, 9, and 10).
|
||||
|
||||
A pile represented by 5-6 7-8 contains 4 boxes (labelled 5, 6, 7, and 8).
|
||||
|
||||
A pile represented by 3-4 7-8 contains 4 boxes (labelled 3, 4, 7, and 8).
|
||||
|
||||
|
||||
You’ll still have to figure out the total number of boxes in all of the piles combined.
|
||||
|
||||
For example, consider the same sample inventory list:
|
||||
|
||||
8-9 9-10
|
||||
7-8 8-10
|
||||
9-10 5-10
|
||||
3-10 9-10
|
||||
4-8 7-9
|
||||
9-10 2-7
|
||||
|
||||
|
||||
The first pile, represented by 8-9 9-10, will contain 3 boxes (labelled 8, 9, and 10). The second pile contains 4 boxes (labelled 7, 8, 9, and 10). The third pile contains 6 boxes, the fourth pile contains 8 boxes, the fifth pile contains 6 boxes, and the sixth pile contains 8 boxes. So, for this file, there will be 35 boxes in total.
|
||||
|
||||
Considering your file, what is the total number of boxes in all of the piles?
|
||||
|
||||
Part 3
|
||||
Difficulty Rating: 3
|
||||
|
||||
You send the calculation to the lab, and they confirm that none of the boxes have gone missing in transmission. Great!
|
||||
|
||||
Due to space constraints, you’ll only be able to load two piles of supply boxes onto the ship. As boxes with the same label contain the same items, you should take as many uniquely labelled boxes as possible.
|
||||
|
||||
Suddenly, the captain calls out to you.
|
||||
|
||||
“We’re short on time! We’ll only be able to load two piles that are adjacent to each other!”
|
||||
|
||||
You observe your surroundings: the piles of boxes are already arranged in a single line. The first line in the file represents the first pile, the second line in the file represents the second pile, and so on.
|
||||
|
||||
As you are short on time, you’ll have to find the maximum number of uniquely labelled boxes in two adjacent piles.
|
||||
|
||||
For example, consider the same sample inventory list:
|
||||
|
||||
8-9 9-10
|
||||
7-8 8-10
|
||||
9-10 5-10
|
||||
3-10 9-10
|
||||
4-8 7-9
|
||||
9-10 2-7
|
||||
|
||||
|
||||
There are 4 uniquely labelled boxes when pile 1 and pile 2 are combined. There are 6 uniquely labelled boxes when pile 2 and pile 3 are combined. Continuing the process, there are 8 when pile 3 and pile 4 are combined, 8 when pile 4 and pile 5 are combined, and 9 when pile 5 and pile 6 are combined. So, the maximum number of uniquely labelled boxes in two adjacent piles (for this file) is 9.
|
||||
|
||||
Considering your file, what is the maximum number of uniquely labelled boxes in two adjacent piles?
|
||||
|
|
|
|||
49
03_supplies_in_surplus/part2.py
Normal file
49
03_supplies_in_surplus/part2.py
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
import data
|
||||
|
||||
# splitto la lista data per togliere gli spazi e gli "a capo"
|
||||
split = data.l.splitlines()
|
||||
|
||||
# aggiungo una variabile per sommare i range
|
||||
somma = 0
|
||||
|
||||
|
||||
for i in split:
|
||||
# splitto nuovamente per non avere il carattere - e separare i due numeri
|
||||
splot = i.split(" ")
|
||||
# definisco due nuove variabili per splittare le due stringhe
|
||||
asplot = []
|
||||
bsplot = []
|
||||
# associo alle due nuove stringhe i valori
|
||||
asplot = splot[0]
|
||||
bsplot = splot[1]
|
||||
# definisco le variabili per splittare i quattro valori di ogni stringa
|
||||
alfa = 0
|
||||
beta = 0
|
||||
gamma = 0
|
||||
delta = 0
|
||||
# associo ad ogni variabile uno dei quattro numeri dei due range
|
||||
alfa = int(asplot.split("-")[0])
|
||||
beta = int(asplot.split("-")[1])
|
||||
gamma = int(bsplot.split("-")[0])
|
||||
delta= int(bsplot.split("-")[1])
|
||||
# creo due liste vuote
|
||||
boxes1 = []
|
||||
boxes2 = []
|
||||
# associo alle due liste tutti i valori dei due range
|
||||
boxes1 = list(range(alfa,beta+1))
|
||||
boxes2 = list(range(gamma,delta+1))
|
||||
# creo una copia della prima lista
|
||||
new_boxes = boxes1
|
||||
# per ogni elemento della seconda lista, che non e' presente nella prima lista,
|
||||
# lo aggiungo a new_boxes
|
||||
for i in boxes2:
|
||||
new_boxes.append(i)
|
||||
# rimuovo eventuali numeri duplicati
|
||||
no_duplicates_boxes = list(set(new_boxes))
|
||||
# ordino dal minore al maggiore
|
||||
sort_boxes = sorted(no_duplicates_boxes)
|
||||
|
||||
# aggiungo alla variabile somma, il valore della linghezza della lista ottenuta
|
||||
somma += len(sort_boxes)
|
||||
|
||||
print ("Result :", somma)
|
||||
70
03_supplies_in_surplus/part3.py
Normal file
70
03_supplies_in_surplus/part3.py
Normal file
|
|
@ -0,0 +1,70 @@
|
|||
import data
|
||||
|
||||
# splitto la lista data per togliere gli spazi e gli "a capo"
|
||||
split = data.l.splitlines()
|
||||
|
||||
# aggiungo una variabile per sommare i range
|
||||
somma = 0
|
||||
|
||||
# aggiungo una variabile per fare una lista di liste
|
||||
listona = []
|
||||
|
||||
# aggiungo variabile per calcolo lunghezza massima
|
||||
max_len = 0
|
||||
|
||||
|
||||
for i in split:
|
||||
# splitto nuovamente per non avere il carattere - e separare i due numeri
|
||||
splot = i.split(" ")
|
||||
# definisco due nuove variabili per splittare le due stringhe
|
||||
asplot = []
|
||||
bsplot = []
|
||||
# associo alle due nuove stringhe i valori
|
||||
asplot = splot[0]
|
||||
bsplot = splot[1]
|
||||
# definisco le variabili per splittare i quattro valori di ogni stringa
|
||||
alfa = 0
|
||||
beta = 0
|
||||
gamma = 0
|
||||
delta = 0
|
||||
# associo ad ogni variabile uno dei quattro numeri dei due range
|
||||
alfa = int(asplot.split("-")[0])
|
||||
beta = int(asplot.split("-")[1])
|
||||
gamma = int(bsplot.split("-")[0])
|
||||
delta= int(bsplot.split("-")[1])
|
||||
# creo due liste vuote
|
||||
boxes1 = []
|
||||
boxes2 = []
|
||||
# associo alle due liste tutti i valori dei due range
|
||||
boxes1 = list(range(alfa,beta+1))
|
||||
boxes2 = list(range(gamma,delta+1))
|
||||
# creo una copia della prima lista
|
||||
new_boxes = boxes1
|
||||
# per ogni elemento della seconda lista, che non e' presente nella prima lista,
|
||||
# lo aggiungo a new_boxes
|
||||
for l in boxes2:
|
||||
new_boxes.append(l)
|
||||
# rimuovo eventuali numeri duplicati
|
||||
no_duplicates_boxes = list(set(new_boxes))
|
||||
# ordino dal minore al maggiore
|
||||
sort_boxes = sorted(no_duplicates_boxes)
|
||||
# aggiungo la lista di ogni riga ad una lista (lista di liste)
|
||||
listona.append(sort_boxes)
|
||||
# calcolo la lunghezza della lista
|
||||
len_listona = len(listona)
|
||||
# se la lunghezza della lista e' != 2 salto
|
||||
if len_listona == 2:
|
||||
# creo una variabile temporanea con la lista parzuiale dei numeri
|
||||
lista_par = []
|
||||
# popolo la lista con tutti i numeri della lista di liste
|
||||
lista_par = sum(listona, [])
|
||||
# elimino numeri doppi e metto in ordine crescente
|
||||
lista_par_sort_unic = (sorted(set(lista_par)))
|
||||
# se nella lista di liste ci sono gia' due elementi (due righe di dati)
|
||||
# allora elimino il primo elemento
|
||||
del listona[0]
|
||||
# se il numero di elementi e' maggiore del caso precedente, allora aggiorno
|
||||
if len(lista_par_sort_unic) > max_len:
|
||||
max_len = len(lista_par_sort_unic)
|
||||
|
||||
print ("Result :", max_len)
|
||||
BIN
04_aeolian_transmissions/__pycache__/data.cpython-313.pyc
Normal file
BIN
04_aeolian_transmissions/__pycache__/data.cpython-313.pyc
Normal file
Binary file not shown.
100
04_aeolian_transmissions/data.py
Normal file
100
04_aeolian_transmissions/data.py
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
HHPBBBLLLCCCCXXOOOOZZZZZZECCUUUUUUUUUPPPIIIIICCCJGGGBBBBBBBBBBBZZZZZQQQQQQQQPPPPPPPP
|
||||
XXNNNNNKXXXXXXXXXIIIIIIOOOOOOOCWWWLLLLLAGGGHHHHDDDDDDDRRRFAAAJJOOOOOOOBBBBBCCCCTTUUKERRRRRRIIIIBBBBTTTTTTTTTLLLLMMJJJCCWWWWWWWW
|
||||
QQQIIIIIIHHEBBTFFFFFFFFIIJJJJHHBBBBBBAAAOOOOOOCCBFFFFFFFGNIIIOOOOOORBBBIIIGGGOIVVVVVOOQQQQXXKKKKSSSSSSSQQQQQQ
|
||||
RRRRHHHLLLLLLLZZZZBBSSSSSSNNNNNNNIHHHAOOOOXXXBBBBMMMMMMMPPPPAAAAAAAAAAZZZZZZZWWWWWWCCCCJJJJJJJJTTTJJTPPPYKKKKKKGGANNNNCRRRRRRRUUUUUUUUU
|
||||
PPPPPPPJJJJJJHHHHHHHDDDGGIIIIIIIFEWXXXXXXDDTWWWGGGIIIIILLLLLLLXXXXXXXXX
|
||||
DDDDDYYYYYYYYYBBBTTTTTTTJCCIIIIIPYUUUUUTTHHMMMMJJJJJMMOOEEEEPPPYYYYKYYYYYYYHHHEEEEEEEEZZSSSSSSVVVVVVVKKKKK
|
||||
KUUULLKKUUTTTTVVGGFFOFFTTTHHHHHAAAAAAARRRRRRFFFZZZZZZWWWWWPPPWWWWNNNNNNN
|
||||
XXXXXJJJTTTTTTRRRRCCSIIIIIICCAAAZZZYYYPPPUUUUUUUESSSSSSTPNNMMMMMMXXXFFFSSSSPPPPPMCCCRRRRVVVVVVKFFFEEEFHHHHHQSSSSSSSSS
|
||||
KKQQQQQEEEENNNNNHHDDDDDDDDIHTTTDDGGGGGCCCEEQQQQQQNNNCCCCCRRRRRNNNNN
|
||||
DDDDNNNNKKKKKKKEMMMMMLLNXCAVVVGGGGGGGJGGYYYYGGGGGGGG
|
||||
JJRRBBBPPPPPXXXXXRRRRRRYYYYYPTTTBBSSSLFFIIIIIIIMMIIGDDDDVVCCCCCLLCCCCCCNNNNEEEETTTTTYYYYYOOGGGGVVVVVVVVVVQQQQQQQQ
|
||||
CYYYYYYRRRRRJJJGOOOOOSSSSSSEIIIIIIDDDDDQUUTQTTTTTTMMMMMCCCCCCSSSSIIGGGLLKKBXXBBEEEEGXXXXBBBBQQQQQAAAAAAAAVVVVVVUUUQQQQQQQQQDDDDRRGGGGGGGUUUU
|
||||
IIIBHSSSSVVVPPPKKKKKKZHLLGGGGEEIIIJJJJJWWWYYYYYYYYYEEXXXXXXTTTTTXXXUUUKKNNNNNZJUFFFQQQQQOETVVVVVVVFFFFZZYYYHHHHHAFFFFFEEEEEEECBDSSSSSSSSGGPPCCCCCCCGGG
|
||||
UUUUFFPPPEEKKKKKKKGGGGGJJJJJJJYXXXXXECCCCCNNNNNWWSSSSSBBYYYYYUSLLLLLLZZZZZHHHEEEEOOOOOOOOJJJJJJJPPPPNNNNNNEEEEEEE
|
||||
SSMMMMMMMMPPPPPPPPUJVVVRRQQQQQNXAAAAYYYFFFFFFFBBBBBBBBOOOO
|
||||
ZZZZSSSSSSJJJJJJDDDHHHHHRRRRRRKKKKKAAAAHNFFFFSSFFFYTEEDDDHHQQQIXXGGGGBBQXXHHHHFFJJJIIIIIWWWWWWWWWWWWQQAAAAAAVVVVVVVVVRAAAAAAARRRRRRR
|
||||
NNNNTTTTJJJJJJJJOOOOQQQQEEEFPPPPOOWWUUUUGGGGYEEEEEEGGGGGGNNNNNRRRRJHAAWWWQQSSSSSDDDFFFFFFFFQQQDDDUUUUUUUUJJJJ
|
||||
XXXLLLAAHHHBBBBIIEEEEEEVVVVVKKKKKKKPPPPPIIIVVZPPFFWWWWWIIIIISSSSPPPJJJJBBBVVBBBBBBBBCOOOOXXXXXXXXMMMMDDDDDIIIIIUUUUMZZZKKKKKKKKJJJJJTTTTTWWWWWWWW
|
||||
JZIIIUUUUUUUXXXPPPPSSSSSSCNTTTTTTTMMMMMMGDKKOOOZZZQQQGGGGKKKKKKKKDDXBBEEEEEOOOOOOO
|
||||
MMMMMQSSSQEWWWWTTTTTTTAAAAAHDDDDDDNNQQQQQPPKKYOEEFFFFFFFFRRRRRRRLLLLL
|
||||
AAAARRRRRRHHHRRRRRRRRHHHHHHHYYYSGGGTTEEEYYLBBBBBBBOOOOOOVVVVGGGGGVKKKKKSXXXXXRRRRRRRR
|
||||
CCCCCZZZZZZZAAAOOOOOOOOGGGGGGGRRRRRSSSSSCCCFFFFFTSTTTTWIOOOXXXXXXXXYYYAAAAAAEHHHHHHNNNNNYYYKKJJJJJJJRRRRRR
|
||||
QQQQQQWWDDDDDDUUUUUWWWWWWGGGGSSSSSSUUUUUUUUXXXXQQQHHHHHHHHZZZZZJMMMMMAAANNDDDSSSSSSSAAAAAAAAUUZZZRRLLLLLLLLNNCCCJJJJJFFQQQQQQQQZZZ
|
||||
RTTTKDDDJAANQQQOOOOJIIIRRRRRREZZZGWWWWWXXGGGGGGGAASSSSSSSKKGGGGGLLTTTTJJJJJJBBBBZZZKKKKFFZZZIIIIDDDRRRBBBBBDDOOOOCDDDDDDDCVVRRRRIDDBBBBBBBGGGGGGGGG
|
||||
YZUUEEEENNNNNNNNXXXCCVBAAAACCCCCCYPRRRRMMMMCCYYYYYYYY
|
||||
DDDDDDDDRRRMMMMMSSSEEEEEBKKXXXQQQQQQFFFFBHHHFFFFFFSBBBBBBBBRRRRRRRHHHHHHEEEEEEEBBBBDDDDDDOOOOOO
|
||||
LLLKKKUUUUUUUWWWWWWSSSTTTTTTGGSCCCCOOPPNNNJJJJKKKOOOOOSSSSSS
|
||||
PPPPPJJJJWXXXXXXXUUUUUVVVVCCCCUULAAAHHHVVJJJJJJLQQQQEEEEEEEELLLAAAAANNTTIIIVVVVVXXXXXTTTTTTGGGGGGGGGGGGGG
|
||||
COQQQQGGGGGGEEEEKKKIIIIIIBBBBBBBYYYPQQNVVVVVVVVOVVVVVVVVV
|
||||
QQQQQQQRCCCUUXXNJJOOLXXXNNNBBBNNNNNNHHHHHMMMMMZZZZZZXXXXXXXXX
|
||||
WWWWWWWWVVVVVBLLLLLPQQQBBBPPPPUUUUUUUAXMMMMMMMVRRRRRRRRZZZJJJJPPPUUUYYUUUUUUUOOOOOOOO
|
||||
GGGGGGGUUUAAAOOOOOFFFFFFFRHHHHKKKFFFFVVVVVVVVBBBOJXXXXMMMMMMM
|
||||
UUUUTTTTTQQQQQQQQNNNNNNNWWVBXXXXXXHHHHDDDDDDDIIOOOUALLLLLKQQQQUEESSSSSSSCCCCCVVVVVVVVWWWOOOFFIIIIIOOOOOUUNNNNNNNNNHHHRRTTTTTAAMMMMMIPPKKKKKKKKK
|
||||
SLLLLLCCCCCCYYIIIIIIIICCCNQQQXXXXAAAAAAWJJJJJJJCCCCMMMMMZZQQYCCCCCCCDSSSSSGGGLLLLLLL
|
||||
VVVVVSSSSXXXBBBBOOOXVVVVVVUTHHPWWWWTTTJJJLLLLLLPPPPPPOOUUUUULHHHPPPPPIIIIIIIVVVRRRRRRAAZZZZZZZZZ
|
||||
YSSFFFFVVBBBBHHMMUXXKKKKIIIIIIGGGGRRRRRRESSSSSSFFFFFFFFFFFFFUUCQQDBBBQIIPJZZZZZZYYYYYYTTTTT
|
||||
VVVRRRRRRRRJJFFFFFFQQLLLCCCRRRRRROOOOORRRRRRRCBBBBBBBBBGGGGGGLLLLLFFFFEEELLLLWWPPPPMMMAAAAAASSSSSTTNNNNNNPPPPPMMMMMMMMMNNNNNNNN
|
||||
MDDDFFFFFFVNNNNNNNNFFUUUTTTZZZZZUUUYYYYYYYZZZZZZAAAXXXBBBBBBBUUUUUWWWWWXXXXZUUUUUUUUYYYYYYYQQXXLLLNNNIIIIIIII
|
||||
TTTTBBBBFFAAQQQCCCCCCVYYUUURRGGGGGGGOOOOOMMMMMMIIIJJJJJJJWWWWQWWWMMVZZZZZZKKKKOOOOAAAAAAAA
|
||||
HAAAARAADDDDBZZZZBYYFFFSSSSSHHHQQAAYRRRRRRREEEEEECCCCCKKOOOOVVVSCCRRRRRRRRPPPUUUUUNNUUUUUUUVKRRRRIIUUUUUUUTTTTTTTTFFFUUFFMMMMVVVVVV
|
||||
AAAAAAAAWEEYJSSKKONNNNNDOOOFFJJJTLLLLLLLLLVVVCCCCCCCCGXXXXDDNNNNNUUGLLLLDNNNNNQQQCCCCCYYYYYYYOOOOOHHHHHH
|
||||
FFFRRRRRFFFQQZZZYYYYYWRRRRHHHOOLLZZZZZPSSSRRRRRBBKKKKKKLWWAAZZZMBBBBLLLLLLLLPPXXXXHBBBBBBTTTTT
|
||||
PJJGGGGGGGQQQQQQQQQGQQQQAAAAAAAAAARVVVVVVVWWWWWWVVXXKKKKKKKKAAAAAAAFFBBFYYYPPPPPKKKMMMMMMMAIOOOOOOMMXXOOBYCCCCCCCCCOOOOAAAEEXXXXXXXYYYYYMMMMM
|
||||
XXXXAAAAAAAOOVVIIVVHHHHZZZZZZAAAOOEYYYYWWWWDDKHHSSSSSSSSSLLRRRRRDDDDDQQQQQQQWWWW
|
||||
QQQSPPQQRHHHHHCCCCCCCUUUZZAAAAAUUUUUUUTTTTEEEEEEEE
|
||||
JJJIOOOOOOBZZBBBBBBEEXBRRIIIIIIOOOOOTTTTTTTTSSSSSSSPPHHHHHGGGQYYYYYIIIIIIIICCCCCCEEMMMMBBNGGGGGGGGGGXXIUUUUUBBBBBBBBPPPPJJJJJHHHHHHH
|
||||
PPPBBBYTTTTSSHNNNNNNBBBBBBFFFXDDHHHCCGGOOOYRRRRRSSSSSSKKKXXXGGHHHHHHHEEEKKKKKPPPPPPPPP
|
||||
TTTNNNNGGGGGGGGKKKAAAAYTTOOOOOOORRRREEADHHHJJJJJJJJJOSSSSKKKKOOOOXTTTYYYYUUUTTTTTTTCCPPCCCCCCCNNNNNKUUUUUUOOOBBBBBPPDDDDFFFFFFFOOOOOYYYYYYYYY
|
||||
ZSQQJJJJJJTTGGGGXIIIIGGOOOOOOMMMQQQTTTTTTPUUWRRMMMYYYYYYNZZMZKKKKWWWDDJVVSSSSSSSGGGGJAAAAAMMMMMMYYMVVVHHHHHHHHH
|
||||
IIIIIIIOOOXXXXXXXBBBDDDDDDZZFFFFFFFYYACCCCCCJJJJJJJZBBBBBBBBB
|
||||
WWWWFFFFXXXXQQQQIBBBBBKKKKQQQQQQQQTTJJVVVVDDYYYYVVVVVVEEEEYYYYCCCCKKKKTKKKKKKUUUUGGGAAAAAAMMMMMMMNNNNNNNXPPCZZZZZBBBBBBBBB
|
||||
MMMGGGXXZZZZZZZWWWWWQQQBBTJJNNJJJDQQDDDDDDWWWAAWWWWWWWHHHHHHZZZZEEEEEEYYYYYSSSFFFFFFFFGGG
|
||||
FFFFFFIQQUUUUUUVMMMWWMMMMMMMCCCCCCCAAAAAAOOOOOOOKBBBBBBBBEEUUUUKKKKIIIIIIIISSXXXJJJRRRRRRKVVVVVAAAAZTTTTTTRRRRRRAAAAAUWAANNNNNNNNN
|
||||
SSSSSSSSYYYJHHAAAAHHHHJJJJJJJJYYYGGGOOOOOOCCCPPPPPPKKKTTTBBBBIIIIIIIXKKSSSSSSSCFFFEEQQQXXXIIIIIIIINNNNNNN
|
||||
XPPPPPJJJJDDIAAAAAJJJPHHCCCCLLLLESSSSSSREEEAAALLPPPPMMPPPQQQQEEEEEIIIIUUFFFFWWWJZZZZZZZIPPPPPPKOTTTRRRRRYYYYXXXOOOUJBBBBBBBBBBBBNNNNNNNHHHHHHH
|
||||
EEEEOOOOLNNXSSSNNCCCCCCXHHHHHHHXXXXNNNNNDDDDBOOOOOOOOIIPPMOMVJYYYFFFFPPPPUUIIRRKPPPPCCCCCNNNNNNQQQQQQQPPPPPPIIIITPXCCWWWWWWWWW
|
||||
UUUUUNNNHHIIDDDDCCZZFFTTTTTTOOOOOMMFFFFFFVVVUYPHHHHHHHPPIIIIIXGPPPPPPBBBB
|
||||
AACCVVVVVVVVVVVVVVAAAAAARYYGHHHHHHHHHYYYWWWWWWWWHHHHHHCCCCCMUQQQQQIIIIQQVVVVVDDDDAAAWWWDDDDDDDFFFFFFAAAAWWWWWWWEENZOOOOOOOOO
|
||||
JJJJJJJJBRRRRRRRRGGGGGGVVVVUUUUUUUUJJJTAAARRRXXXXXXXCCCCCCCGGGGGKOOOOOOXXXXXXMMMMMM
|
||||
TTTTTTTDDDUVVVVVVVPPPPLLLLLLIIIIBBHHBBBCCCTTWAAATTTTTTTSSSSCCCCCEEEFFFFYXXEFFFFFFDNNNNNFFFFFFFFF
|
||||
WWWWUUZZZZZZKKKKKKCCCCCTZZZZQQQQQEEEKKCAAAAAAAHHHHHHDDDDMMMMZZZYYLLLTTTTTTTBBBBBJJJZJJEJJJAAAAAYYEEEEETTTCWEEJUUHHHAAADDDDDDDKKKKKLLLYYYYYTTTMMMMMMMMM
|
||||
QQQQQQAWWWWWBVVVVVVVEEEEEQQQQQVRRRRRRRUUUMMLLLLDDDLLLLAAAAAAZMMMNNNDDDDDDSSSSSSSSSSSSJJJJJZZZZZKKKKKKEEEEEESSCCCCCCCCMMAAABBBBBXXOOOOOOOOO
|
||||
NNDDCZZZZPPPPVVVVUUUVVWWWWGHHHHHHJJJJJJSKKKKKKRRRRRRRRDDDDCCCCCCCCQQQ
|
||||
PJJZZZZZZCZZZZZZZKKKSSSSSSAAAIIKKLLLLDPPPPPPPWWAAAAAAAAA
|
||||
PPPBBBBBFXKKIIIIIIIIIIIIIIYAAAAAMMMMOOOOOOMMMMMCCCCSSSSZZZZZZZZZKKKKKNNPPPPPPPLLLLLLLLZZZZZOOOOOMMMMMMMNNNNNVVVVIIIIIII
|
||||
TRRRRRVVVVUUQQQRRRRRRWWWWWRRVITTVMMMQQIIIIIIIHHNNNNSSSSSSSSS
|
||||
AAAAAAAPUUUUUURRRRKMMMMMMMUKEEEEEEZXIIDDDDDDDDDDDZGGGGGGGGGGDDDDRRRRQQQQQIIIIVVVVVMMOOOMWWWWWWWUUUFFZZZZZZZMMMMFFFLLOOOOOHHPPPXXXXXXXXXX
|
||||
CCCCCCCOOOCCCCCCZTTVVVAAAAAFFFFVLLLLLLNNNRRRRRRRRRNNNNNNNIIIYYYYTTTTBBBBBBBLLLLCCCNNNNNNNNN
|
||||
LLLLLLLLIIIUUUUUYYACCCOORRRJJJJJJGGGGGGTMMMNNNNNNXXRRSSSSSSSSSSSSDDDDDZZZZZGGGGGGGGGEEECCCEWPPPPPPPPP
|
||||
RRRVVVCCCCCMMMBBBBBBBBCCCTFFFFSSSSSSHHHHHHHNAAAAAJVVVVVMMMMWWWWWWOOOQNNNNNNXXXXBBBBBBBBBCCCCCCZQQEEEEEMMMMMMMM
|
||||
LLWWQQQLLLLLUUUUULLLLLLTTTTUPPAAAHCCVVFVBBBBBHHHHKKKKKBBBAUUUUOOOOAAAAAAASRRRIYYYFFFFPPPPPPP
|
||||
KKKKKKNNVVVAAXXXXXGGQQQQQQDDDDZZZZZZZZZHNNNNNNNOOOOOOJJZIIIIFFFRRRRRVVVVEEEGGGBBBBBNNNNNHBBBIIIIVVVVVV
|
||||
INMMMMMMMWWWWWWWWRRUUUUUUUJJJBBBMMMMMMMMZEEEEEERRRRRBBBTNQQQQQJDBBBBBBAATTTTWWWGGGZZFFFFFFFF
|
||||
FFFNNNNNNNIIIIIAAAAAAAWWWJJJJJYYYYKFFFFFIIIIIIKKKKWWWWWWRRMMMMMMTTTTTTT
|
||||
RRRRRRALLLLJJJLDDDDDDDDLMMMHHHHHHHHZZZZZYYYYYYYYZZZZYBBBGGGGGGGGQQQAAAAAAAAAAAA
|
||||
CCMMMMMMMUUUUUUUUUUUJJYYYYYYYYDDDDDACCCCCCCCCSSEEEBXXXXXXXXXRQVZVVVRTTEEEIIIZZHHHHHNNNNJJJJJJCCCCCLLLLLXXXXXXXXQKKKPIIIIIIIII
|
||||
VVOOYYWWWWWYYORGJJJJTTTAAAALLLYYYYYYPPESTTTTTTTKKKKKKJJJJJJJ
|
||||
RCCCWWWWWAXXXXXXXIIIIIIIEEYYYYYIIIMMMMMMMMMOOOOOOOYYYYYYYEBBBBKNNNNNNNVVTTEEEEEPPPPPPPP
|
||||
KKZPPNNHHDDDDFFFFIICCSSSSSPPPPPPQQQQQQQQUIILLZZZZZZZZZZZZNNWWWWWWWWWIITNNNYXXXXXXXXX
|
||||
CCCCCCCCCHHHHHHWWWWWWIIINNNNNNXXXXXWWWWKKKKKKBBBTTXPPKKKKJJYYYYYYYTTTTTTT
|
||||
NNNKNNNNNUUNNNNNYYYGGGGLLLLLLTTTTTGGWWWWWWWWQQQQQQQ
|
||||
GUUUUCCCCCCCCJWWWOOOOOIIIIEQQQQQQQQQQQQQQQQSSSSMMMMXXNNNNNNKOOZGGGGIIWWWEEEEUUUUUUUGUUNNPBBBCCCCTTTTTTTTTTTTZZZZHHHFFFFTTTTTTTQDNLKKKKKKKKPPPPP
|
||||
CCCCCXXXXXXXIIIIIIIIRRRUWWWWWWWSSSSSCCCCQQQQQQQQQX
|
||||
LLLLLIIIWWWWXXXXXXXXXXXXSSSSKKFFPPPPPRRHHHHHEEEGGGOOOLLLLXWWWWWSVVVVVVVWWWWWW
|
||||
ZZZZZZZZZSSSSSSSQQLLLLLLLIIIIIIDHHHQQBBBBBVVVVVRRRRRRRTXXXXXXXAAAAAAAAAAAAKKKKJJIRRRRBDDDDLYYYYJJJJJEEEEEEE
|
||||
WWKKKHHHHIQQQQTTFFSPPNNNAAAAAARRRRRRCCCDDDDDWWWWGGGGGGKKVVSSSSSSSSS
|
||||
FFFFFFXXXSSSSSAAAAADDDDDDDDIIPPPPPPPSSSSSSSKKKKKIXXXPPPPPPPSSSAAAAAAA
|
||||
CXMMMMMMMAHHHIIIIITTTTTTTDXXXQQKJLLVVZZZDDXXOHHOSSSSSSMMMMMTTTTPPPPPPPPP
|
||||
QQQQQZZZZZZQPUEXXXXXXXXXYSSOKKKWWWHHHOOJKKPPPNNNNNRBBPPPPPPPPGGGGZZZGGGWWWWWWWWEZZGGGGKVVVNNNNRCCCQQQQQQQQ
|
||||
VVVVEEEEDDDSSSSSSSSMXNNIIIIXXXXXQQQQQQWWWWWWXXXXXXXXIIIIIIIWWRYYYDDZZZZZZZZZZZZUHHHHAAAAAYYYYYYYIIIZZZZZZOOOOOO
|
||||
SRSSCCCUUUUUUZZLLLLZZERRRRMMMMCCCCDDOOOOORREEEEEECEAAAAAAAMMMMMMQQQQVUUBXXXXXPPPPLLLWWWWWWW
|
||||
CCCVVVRRRRAABBBBBBBBKCCCCCOOOOOOPPPPPHHHHHDDDDDDNVVVRRRRCCRPPPSSSSSSSSZZZZZZZZZZZZZZJJJJJJJ
|
||||
VVVVVUUUUUUUJJJJNNNNAAAAAYYYYDDDIIIBBBBBBCCCCCCSSSSNNNQQQAAAAAJJJJJJJJLLLLZZZZWWWWMMXXMYYYCCCCOOOAAAAAAAAA
|
||||
DWWWWWWRRVVVLLQQQQQDDGGGGGGGYYXXJJJPPTTTTHHHHHHUUUPPPPPPPTMMMMMMMMLLLDDDDDDAAAHHHHFFFFFFKKKKDDDDGGGGGOOOOOODDYYYYYYNNNNNNNNDD
|
||||
KKYYBOOOOONNEEECFFFHHHHFDDDDWWWWCCCCCQQQKKKKKKLLLLOOOOQQQQQQCCWPXWWWWWWWFFFFJJMMMMMMIIIIIIIHHHHHDDZZCCCCCCXXXXXXXXXCCCCQQQQQQ
|
||||
OOOCCFFUVVVMMMWWWOFFFAAAANFGSSOOOOOOOONNNNVQQCJJJMMMMMMMMM
|
||||
JJDDDDDDDDDAAAQPPPPPPPPPWWBBBBBCCCCCSSAXXUUUUJJJUUUZZZCCXXXXXVVUUUJJJBSWIIIIIIIII
|
||||
VVVVVPPPPPPWWKKKCCCCCCCCUUUUUUHHYAAAWWBBHKKKKKKTTTTTTTTQQOVVUUUNNNLLEZZZZZZAAAAAVVVVVVVYYEEEEBIIIIWWWGGIIIIPAAAAAFFFFFFXXLRRRRRRRRR
|
||||
LLLLJJJVVQQQQQQQQZZZZNNNRTHHNIGGGGBJJJJMMMMMPPPPPPTPCCCCCCVVVVFFFFYYYYDDRRHHHHHHHRRRUUUUUEENNNNQQQOPPPFFFFFFFDDDDDD
|
||||
OOOOOOOOOOOMMMMMMMOOOBBBBBBMMMMMNNNGFFFTTTCCUUUUFFFFFNNNQQQYDDDLLLLLLCCAFFFFFFFFVVVRRRRAAYYYYYYYYBB
|
||||
18
04_aeolian_transmissions/part1.py
Normal file
18
04_aeolian_transmissions/part1.py
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
# importo dal file data.py le stringhe date
|
||||
with open("data.py", "r") as f:
|
||||
lines = f.readlines()
|
||||
|
||||
# definisco la funzione per convertire le lettere maiuscole nei corrispettivi numeri
|
||||
def letters_to_numbers(text):
|
||||
return [ord(char) - 64 for char in text.upper() if 'A' <= char <= 'Z']
|
||||
|
||||
# creo la variabile per la somma dei caratteri
|
||||
somma = 0
|
||||
|
||||
# per ogni stringa in input (una per riga)
|
||||
# lancio la funzione di conversione e sommo il numero di "celle di memoria"
|
||||
for line in lines:
|
||||
numeri = letters_to_numbers(line.strip())
|
||||
somma += sum(numeri)
|
||||
|
||||
print ("Result: ", somma)
|
||||
50
04_aeolian_transmissions/part2.py
Normal file
50
04_aeolian_transmissions/part2.py
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
# importo dal file data.py le stringhe date
|
||||
with open("data.py", "r") as f:
|
||||
lines = f.readlines()
|
||||
|
||||
# definisco la funzione per convertire le lettere maiuscole nei corrispettivi numeri
|
||||
def letters_to_numbers(text):
|
||||
return [ord(char) - 64 for char in text.upper() if 'A' <= char <= 'Z']
|
||||
|
||||
# creo la variabile per la somma dei caratteri
|
||||
somma = 0
|
||||
|
||||
# per ogni stringa in input (una per riga)
|
||||
# lancio la funzione di conversione e sommo il numero di "celle di memoria"
|
||||
for line in lines:
|
||||
#numeri = letters_to_numbers(line.strip())
|
||||
# calcolo lunghezza totale della stringa (senza a capo)
|
||||
total_len = len(line.strip("\n"))
|
||||
# calcolo del numero di lettere da tagliare
|
||||
cut = int(total_len/10)
|
||||
# calcolo del numero di caratteri da tenere
|
||||
resto = total_len - (2*cut)
|
||||
|
||||
# definisco una variabile per ciclare solo fino alla lunghezza richiesta
|
||||
l = 0
|
||||
|
||||
# per ogni riga (tolto a capo) eseguo la funzione per convertire la lettera in numero
|
||||
for i in line.strip("\n"):
|
||||
|
||||
if l == cut:
|
||||
l = 0
|
||||
break
|
||||
numero = letters_to_numbers(i)
|
||||
# sommo alla variabile, la quota di numeri della prima parte di lettere
|
||||
somma += numero[0]
|
||||
l += 1
|
||||
# sommo alla variabile la cifra numerica della parte centrale della stringa
|
||||
somma += (sum(int(x) for x in str(resto)))
|
||||
l = 0
|
||||
|
||||
# come per il for sopra, ma per le ultime cifre della stringa
|
||||
for i in reversed(line.strip("\n")):
|
||||
|
||||
if l == cut:
|
||||
l = 0
|
||||
break
|
||||
numero = letters_to_numbers(i)
|
||||
somma += numero[0]
|
||||
l += 1
|
||||
|
||||
print ("Result: ", somma)
|
||||
Loading…
Add table
Reference in a new issue