Inlägg

Inlägg som Pelegrino har skrivit i forumet
Av Pelegrino
Skrivet av Entash:

Du måste vara inloggad och välja hämta i varuhus.

Rabatten ska ej gälla spelkonsoler enligt finstilt så måste blivit fel. Var snabba om ni vill ha det, men inte omöjligt att de avbryter köpet.

"Erbjudandet gäller ej Philips HUE, Apple-produkter, spelkonsoller, hemleverans- och installation, abonnemang samt abonnemang med telefon, presentkort, värdekort, kundbeställningar och offerter. Max 1 av varje vara per kund."

väntar med spänning på att se om det blir några köp. Mediamarkt hyllades starkt när de gjorde en enorm miss med sin LG OLED för ett tag sedan, får se om Power håller upp det.
Hade själv köpt om jag inte redan hade ett...

Av Pelegrino
Skrivet av Sarato:

Ett tips i framtiden är att kolla upp IMEI-numret innan man köper den. Då är det lätt att ta reda på om varan är låst redan innan.
Men tråkigt att jag hade rätt i det här fallet.

Han har ju använt den under en tid så det hade inte hjälpt.

Tråkigt när det blir såhär. Köpte själv en äldre iPhone 12 pro till sambon på tradera, bad ej om kvitto. Funkat hur bra som helst. Men att köpa en mobil som är under 1 år gammal utan kvitto känns dumt.

Av Pelegrino
Skrivet av pompado:

Har en funktionsnedsättning, Schizofreni, prova leva med det och fungera som en vanlig människa.

Skrivet av pompado:

Ja, delvis, sparat och sparar i värdeföremål som inte förlorar i värde över tid och som inte syns hos intuitioner eller myndigheter.

Känns som dessa hör ihop. Är dock nyfiken på vad du sparar på och varför du inte vill det ska synas hos institutioner/myndigheter. Skattebrott?

Gällande att gå ner i arbetstid kan jag inte säga något då jag inte ens kan föreställa mig att leva under de förhållanden. Från en personlig aspekt skulle jag aldrig kunna gå ner till 2.5h/dag men tycker det låter som en bra lön om du kan jobba så lite och få 19' netto. Jag hade absolut inte gått ned mer pga pension osv men också för att faktiskt ha sysselsättning. På 2.5h hinner man ju knappt börja jobba.

Det hade dock varit trevligt kanske att ändra om när du jobbar så du är ledig fredagar för längre helg?

Av Pelegrino
Skrivet av Mullvaden83:

Det är helt sjukt system med 3800kr i mån.
Lite samma här men inte i närheten ändå.
Min fru pluggade o hade CSN. Hon blev gravid o vi fick barn.

Att inte bli gravid innan man kan försörja sig är dock rätt smart, oavsett lön.

Av Pelegrino
Skrivet av Enviro:

Men vi gör som så att vi låser tråden för kvällen, så går jag igenom den för att säkerställa att det inte är något regelbrott, sen låser vi upp i morgon.

Glad söndag!

https://images.squarespace-cdn.com/content/v1/610aec5190cbf577be...

Av Pelegrino

Sjukt att jag aldrig hört talas om detta spel.

Av Pelegrino
Skrivet av SunQ:

Ska bli spännande att se vad man får på måndag när jag skriver på det slutgiltiga.
Men ser inte ut att hända något med listräntan hos Swedbank innan dess.
Ränterabatten är satt till 1,55. Så om inget händer så kommer jag hamna på 4,39% med 3-månadersränta. 75% belåningsgrad.

4.39% är bra. Har 4.79 - begärde ut amorteringsunderlaget och SEB ringde upp mig men vägrade ändra min rabatt hos dem. 50% belåningsgrad, 1.5 MSEK.

Av Pelegrino

Digitalisera VHS själv eller lämna in?

Hej,
tänkte försöka komma igång med att digitalisera mina VHS igen. Jag har dock reagerat på att det är väldigt dålig kvalitet men det är nog snarare för det är från 1995. Överföring gjordes med någon Kjell & Company-adapter/capture card. Jag har dock 2 frågor.

1. Tror ni att professionella videobutiker får bättre kvalitet ut av sakerna? Såg en butik i Malmö som tar 100kr per band vilket var väldigt billigt.
2. Får en del artefakter i top/botten. Är det pga dåligt band eller dålig överföring? Kan något göras? Se exempel

mvh

Av Pelegrino
Skrivet av moire:

Va ? Senior med två års erfarenhet?!
I min värld är det minst tio år som behövs för senioritet

Skrivet av noMad17:

Det är väl mer eller mindre standard inom konsultbranschen att man blir senior efter två år (då kan man sälja konsulten dyrare).

Skrivet av CrazyBanana:

Visar väl tydligt på okunnigheten hos kunderna att inte ifrågasätta och ha kännedom om kompetensen som krävs. Samtidigt som att de kanske faktiskt till viss del är beredda att betala oavsett då det ofta är kritiskt för verksamheten att dessa saker fungerar.
Frågan blir ju även vad som då skiljer en 2årig senior mot en 10åring egentligen och hur en driver dessa frågor internt inom företaget när det ska pratas lön.

Inom VVS är kunden oftast ganska införstådd med vad som förväntas beroende på förfrågan och uppdrag och vilken kompetens detta kräver och förväntar sig pris därefter.

Håller väl med om att 2 år är ganska tidigt men är väl som @noMad17 säger. Normalt vad jag har sett i produktbranschen är det väl snarare 5 år. Det är dock snarare ett undantag att man blir "fast-trackad" vilket är baserat på ens kompetens och annat. Att vara duktig konsult är inte enbart att man är duktig programmerare.

Av Pelegrino

Årliga löneökningen kom in. Otroligt bra löneökning men då svenska valutan tyvärr tuffat på så har jag fått en reallön som är lägre än i somras. Fick också en befodran till senior.

Ålder: 29
Yrke: Senior IT-Konsult
Lön: 53250 DKK (upp från 47750). Motsvarar i dagsläget strax under 80 000 SEK.
Förmåner: Fritt gymkort, flertalet resor, massa alkohol, roliga team events, matsal på jobbet (300 DKK i månaden). I Danmark får man även skattelättnader för pendling vilket täcker det dyra busskortet. Största fördelen är dock den kortare arbetsdagen på 8h ink 30 min lunch.
Ort: Köpenhamn
Erfarenhet:2 år
Utbildning: 5 år civ. ing Datateknik

Av Pelegrino

Började kolla Brott och Heder. Riktigt bra serie, såvida man inte är känslig för att det pratas andra språk.
https://www.netflix.com/title/81442394

Av Pelegrino
Skrivet av ZyntaaX:

Haha härligt att du löste det själv. Jag testkörde din kod med min input och fick rätt svar. Märkligt

Se nedan:

Anledningen är att om linjens summa är 0 slutade den exekvera då jag av misstag kollade summan istället för att kolla så varenda siffra var 0.

Dold text
Av Pelegrino
Skrivet av Pie-or-paj:

Ser inte exakt vad som går fel, men din kod ger 13730168 som svar på

16 26 35 54 107 245 582 1364 3093 6750 14202 28955 57552 112141 215085 406987 760190 1400714 2542733 4541092 7969025

men den borde ge 13730157, prova att bryta ner den per steg och se om något uppenbarar sig

Edit:
Kom på det, spoiler för om du vill hitta det själv. Ovan tips om att bryta ner den per steg kommer att hjälpa.

Ett av de sista stegen i ovan exempel är

[9, 7, 5, 3, 1, -1, -3, -5, -7, -9]

, din filter funktion baserat på reduce kollar inte om alla värden är noll utan om alla värden summerar till noll. Vilket ovan delsteg gör. Vilket gör att du skippar den och missar en -11 i totalen. Om du istället byter ut den till

while (lastSequence.some((partialSum) => +partialSum !== 0)) {

eller liknande så fungerar det.

Dold text

Haha jag hittade faktiskt felet själv nu och skrattade jävligt gott. Fyfan vad man skäms nu. Tack för test-inputen, jag räknade på det manuellt själv och blev väldigt förvirrad varför den bara stoppade. Otroligt korkat villkor av mig.

Edit: Det var också allt. Pinsamt feltänk.

Av Pelegrino

Tyckte jag lyckats med dagens men av någon anledning får jag något fel. Funkar perfekt för test input och när jag räknar manuellt på ex första och sista värdet i inputen så får jag samma matchning som min kod. Någons om kan slå sig ett getöga?

JS, del 1:

const fs = require('fs'); const allFileContents = fs.readFileSync('input.txt', 'utf-8'); const linesplit = allFileContents.split(/\r?\n/); let createDifferenceArray = array => { let differences = [] if(array.length === 1){ return [0] } for (let i = 1; i < array.length; i++){ differences.push(array[i] - array[i-1]) } return differences } let extrapolate = sequences => { sequences = sequences.reverse(); sequences[0].push(0); for (let i = 1; i < sequences.length; i++){ let a = parseInt(sequences[i-1][sequences[i-1].length-1]) let b = parseInt(sequences[i][sequences[i].length-1]) let newNumber = a + b ; sequences[i].push(newNumber) } let finalValue = sequences[sequences.length-1][sequences[sequences.length-1].length-1]; return finalValue } let result = 0 for (let i = 0; i < linesplit.length; i++){ let lastSequence = linesplit[i].split(' ') let results = [] results.push(lastSequence) while(lastSequence.reduce((partialSum, a) => partialSum + a, 0) !== 0){ lastSequence = createDifferenceArray(lastSequence); results.push(lastSequence) } result+= extrapolate(results) } console.log(result)

Dold text
Av Pelegrino
Skrivet av lambdan:

Antal steg det tar för ett spöke komma fram till en **Z plats är en konstant interval/cycle. I exemplet är det 2 och 3 t.ex, i min data hade ett spöke något på 17000, en annan nåt på 18000, osv.
Om du räknar fram intervallet för varje spöke, så kan du göra en sak med dem siffrorna

Ledtråd 1

Tack, jag ska testa det!

Visste ej det var en konstant cykel.

Dold text

EDIT: Löste det nu. Gud vad mycket lättare det blev. Jag hade som sagt inte förstått ovan spoiler vilket jag tyckte uppgiften borde sagt.

for (let i = 0; i < startPoints.length; i++) { let count = 0 let currentPoint = startPoints[i] while (!currentPoint.key.endsWith('Z')) { let currentTurn = instruction[count % instruction.length] let currentKey = currentTurn === 'L' ? currentPoint.left : currentPoint.right; currentPoint = list.find(x => x.key === currentKey) count++ } currentPoint.distance = count startPoints[i] = currentPoint } const distancesArray = startPoints.map(x => x.distance); console.log(getLCMOfArray(distancesArray))

lösning
Av Pelegrino

Är det någon som kan förkalra för mig dag 8 del 2? Jag fattar ej hur man ska lösa det med eller hur mgn hjälper.

Vad jag har:

Jag hämtar alla startpunkterna och lägger dem i en array så jag har alla som startar på **A där. Sen har jag försökt loopa det men det går ju uppenbarligen inte för det är för långt.

Loopen såg ut lite såhär:

while (!allOk){ let currentTurn = instruction[count % instruction.length] let boolList = [] for (let i = 0; i < startPoints.length; i++){ let key = currentTurn === 'R' ? startPoints[i].right : startPoints[i].left; boolList.push(key.endsWith('Z')) startPoints[i] = map[key] } count++; allOk = boolList.every(x => x === true) }

Dold text
Av Pelegrino

React och det är inte ens en fråga. Vue & React är, enligt min erfarenhet, det som används mest och efterfrågas mest.

Av Pelegrino
Skrivet av Trihxeem:

Jag kör uppgifterna i nodejs och kör något sådant här:

const fs = require('fs'); const allFileContents = fs.readFileSync('advent04.txt', 'utf-8'); allFileContents.split(/\r?\n/).forEach(line => { console.log(`Line from file: ${line}`); });

Inte optimalt men tillräckligt smidigt att använda för den här typen av slit-och-släng-kod

Tack för tipset, otroligt mycket smidigare än nedan

const fs = require('fs'); const readline = require('readline'); const fileStream2 = fs.createReadStream('input.txt'); const fileStream = fs.createReadStream('input.txt'); let count = 0; let res = 0; let map = {} const rl2 = readline.createInterface({ input: fileStream2, crlfDelay: Infinity, // Detects all line endings (\r\n, \n, \r) }); rl2.on('line', line => { map[count] = 1; count++; }) const rl = readline.createInterface({ input: fileStream, crlfDelay: Infinity, // Detects all line endings (\r\n, \n, \r) }); let currentLine = 0; rl.on('line', line => { const split = line.split('|'); let occurences = 0; let myNumbers = split[1].trim().split(" "); let winningNumbers = split[0].split(":")[1].trim().split(" "); winningNumbers = winningNumbers.filter(x => x !== ""); myNumbers = myNumbers.filter(x => x !== ""); myNumbers = myNumbers.map(x => Number(x)) winningNumbers = winningNumbers.map(x => Number(x)) occurences = myNumbers.filter(x => winningNumbers.includes(x)).length for (let i = 1; i < occurences + 1; i++){ if (i + currentLine < count){ map[i + currentLine] += 1 * map[currentLine]; } } res+=map[currentLine]; currentLine++; }) rl.on('close', () => { console.log(res) })

Dold text
Av Pelegrino
Skrivet av kwame:

Här får du den biten Sista biten är bara att splitta på '|' så får du vinster i arr[0] och dina kort i arr[1] (som jag gör i getWins)

const parseLine = (line: string) => { const newLine = line.split(':') // Plockar bort "Card 1" eftersom den hamnar i newLine[0] så returnerar jag allt till höger. return newLine[1].trim() } const file = readFileSync('testInput.txt', 'utf-8') .split('\n') .map((line: string) => parseLine(line))

Dold text

All splitting osv har jag löst, det är bara att jag hittade ingen bra lösning förf att läsa in filer så blev fs readstream vilket är lite osmidigt...

Av Pelegrino
Skrivet av kwame:

Del 2 kändes som rekursion passade bra på, så körde på det.
Inte den mest effektiva lösningen dock

Dag 4 (Del 1 och 2)
Språk: TypeScript

const AmoutOfWinsMap = new Map<number, number>() const getWins = (line: string, index: number) => { if(AmoutOfWinsMap.has(index)) { return AmoutOfWinsMap.get(index) || 0 } const [winningNumbers, actualNumbers] = line.split('|') const winningNumbersArray = winningNumbers.split(' ') const actualNumbersArray = actualNumbers.split(' ') const intersection = winningNumbersArray.filter((number: string) => parseInt(number) && actualNumbersArray.includes(number)) const wins = intersection.length AmoutOfWinsMap.set(index, wins) return wins } const part1 = (input: string[]) => { return input.reduce((acc: number, curr: string, index) => { const wins = getWins(curr, index) if(wins === 0) return acc const lineSum = Math.pow(2, wins-1) return acc + lineSum }, 0) } const countTotalCards = (allLines: string[], index: number) : number => { if(index >= allLines.length - 1) return 1 const wins = getWins(allLines[index], index) if(wins === 0) return 1 let totalCards = 1 for(let i=1; i<=wins; i++) { if(index + i < allLines.length){ totalCards += countTotalCards(allLines, index + i); } } return totalCards } const part2 = (input: string[]) => { return input.reduce((acc: number, curr: string, index: number) => { const wins = countTotalCards(input, index) return acc + wins }, 0) }

Dold text

Är nyfiken på hur du läser in filerna. Gör det själv i JS men tycker det är den osmidiga delen.