https://adventofcode.com/2021/
Misschien een ideetje om een UB leaderboard op te zetten?
EDIT:
Leaderboard url (thx silentkiller!): https://adventofcode.com/2021/leaderboa ... ew/1706665
Code:
Code: Selecteer alles
1706665-12180546
Code: Selecteer alles
1706665-12180546
Code: Selecteer alles
Import-Csv .\day3.txt | % {
$check = 0
$_.ToCharArray() | % {
if ($_ -eq '1') {
$check++
}
}
if ($check -ge 6) {
$gamma += [string]'1'
$epsilon += [string]'0'
} else {
$gamma += [string]'0'
$epsilon += [string]'1'
}
}
Code: Selecteer alles
$gamma= 0100000111011101110001111111011001011011011110011010101011011110110101110010001101010111011111101110000110001011101111111111101101111111110010011111110110011010111110010111011011001111111011011110011111111000100100111111111010010111011110101111011010100111111111100010100011111010111010110101001101011111001100010101111101111011110110011111000110010101010101010111001010111000011100101110011111011101001011110110111000111111101101101011001010111111011100000010101110111110111001110100000001011101111101010000011101010110111100101110111100011100101101111110111111011100111110010101001010000011101111000111101011110001111000001110101111001111111011010111011000101001111100110101011101011101001101011110001011111111010010110000111101100101111111100000100010110111001011010101110111001101101110011101101101001110010010011110101010101101100011110101011110111100000101000101011011010010111101010111001100011111101111011111110101110110010010101101011110100111101000110110111110001110101010110100011000110000
$epsilon=1011111000100010001110000000100110100100100001100101010100100001001010001101110010101000100000010001111001110100010000000000010010000000001101100000001001100101000001101000100100110000000100100001100000000111011011000000000101101000100001010000100101011000000000011101011100000101000101001010110010100000110011101010000010000100001001100000111001101010101010101000110101000111100011010001100000100010110100001001000111000000010010010100110101000000100011111101010001000001000110001011111110100010000010101111100010101001000011010001000011100011010010000001000000100011000001101010110101111100010000111000010100001110000111110001010000110000000100101000100111010110000011001010100010100010110010100001110100000000101101001111000010011010000000011111011101001000110100101010001000110010010001100010010010110001101101100001010101010010011100001010100001000011111010111010100100101101000010101000110011100000010000100000001010001001101101010010100001011000010111001001000001110001010101001011100111001111
Code: Selecteer alles
for line in file :
list.append(line.strip())
for i in range(len(list[0])):
kolom=[]
for value in list:
kolom.append(value[i])
gamma=gamma+most_frequent(kolom)
epsilon=epsilon+least_frequent(kolom)
lol.EotT schreef:Edit: Ik denk dat jij telkens het meest voorkomende cijfer hebt genomen van elk getal (elke lijn in de input, per rij dus), terwijl je dit moet doen per kolom.
Code: Selecteer alles
$kolom = @(0,0,0,0,0,0,0,0,0,0,0,0)
Import-Csv .\day3.txt | % {
$pos = 0
$_.ToCharArray() | % {
if ($_ -eq '1') {
$kolom[$pos]++
}
$pos++
}
}
$kolom | % {
if ($_ -ge ($day3.count)/2) {
$gamma += '1'
$epsilon += '0'
} else {
$gamma += '0'
$epsilon += '1'
}
}
echo ("day3, part1: " + [convert]::ToInt32($gamma,2)*[convert]::ToInt32($epsilon,2))
Inderdaad ook mijn tenen moeten uitkuisendevilkin schreef:Dag 3 was stevig...
Het is letterlijk mijn eerste aanraking met go, nog nooit iets in geschreven. Elke dag leer ik bij, dus de kans is groot dat ik veel optimalisaties niet kenmeon schreef:
oeps
@devilkin = euh wow, 146 lijnen code... 't zal wellicht robuuster zijn en een aantal 'quirks' die voortkomen uit Go, maar dan vind ik PowerShell toch makkelijker ^^ (enkel nog maar naar part 1 gekeken)