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))
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)