uppdateras med ojämna mellanrum

11 februari 2009

Problem #3

Och här en quick'n'dirty lösning till problem #3. Här kom primtalsfaktoriseringen till användning.
#include <iostream>
#include <cmath>

template <typename T>
bool is_prime(T p)
{
for (T i = 2; i < (p / 2.0); ++i)
if (fmod(p, i) == 0.0)
return false;
return true;
}

template <typename T>
T trial_division_prime_only(T n)
{
T max = sqrt(n), result = 0.0;
for (T i = 2; i <= max; ++i)
if (fmod(n, i) == 0.0 && is_prime(i))
result = i;
return result;
}

int main(int argc, char *argv[])
{
long double n = 600851475143;
std::cout << "Answer is " << trial_division_prime_only(n) << std::endl;
return 0;
}

Godnatt!

Problem #5

En möjlig lösning till problem #5. Den här snurran tar någon sekund att beta genom på min maskin, men det går att gena genom primtalsfaktorisering fick jag lära mig.

#include <iostream>

bool f(int n)
{
for (int i = 1; i <= 20; ++i)
if (n % i)
return false;
return true;
}

int main(int argc, char *argv[])
{
int n = 1;
while (!f(n))
++n;

std::cout << "Answer is " << n << std::endl;
return 0;
}

Problem #2

Och här kommer lösning till problem #2:
#include <iostream>

int main(int argc, char *argv[])
{
int sum = 0;
for (int t, c = 2, p = 1; sum < 4000000; )
{
if (!(c & 1))
sum += c;
t = c; c += p; p = t;
}

std::cout << "Answer is " << sum << std::endl;

return 0;
}

Gjorde den rekursiv först; men stacken tog lite för mycket stryk :P

Nya tidsfördriv, Project Euler

Har hittat ett nytt tidsfördriv. Project Euler.
Project Euler is a series of challenging mathematical/computer programming problems that will require more than just mathematical insights to solve. Although mathematics will help you arrive at elegant and efficient methods, the use of a computer and programming skills will be required to solve most problems.

Löste igår tre av 231 problem, svårighetsgraden ökar ganska snabbt, så det kommer bli en otroligt lärorik resa.

Här min lösning på Problem #1:

#include <iostream>

int f(int n)
{
if (!n)
return 0;
else
return (!(n % 3) || !(n % 5)) ? n + f(n - 1) : 0 + f(n - 1);
}

int main(int argc, char *argv[])
{
int n = 1000 - 1;
std::cout << "Answer is " << f(n) << std::endl;
return 0;
}

Känner jag mig själv rätt kommer många problem lösas av hård brute force ;)

25 januari 2009

Skitmånad


Fyfan vilken skitmånad. Nu är det tredje veckan jag är sjuk. Det började lite lätt med 38-40 graders feber i en vecka, efter det - när jag trodde jag skulle bli frisk - bröt en sjujävla förkylning ut istället, fem dagar med rinnsnuva och huvudvärk och den har fortfarande inte gått över.

Jag hatar vintern.

Jobbade förra veckan när jag egentligen borde varit hemma istället. Och för att toppa denna skitmånad är det 21.000:- i räkningar. Så det blir en riktigt snål februari.
Hade jag vetat att GodEl tar ut betalning i förskott hade jag inte bytt till dem. Okej om det hade varit under sommarhalvåret, men december/januari är den månad då det går som mest el. Jaja, enough ranting.

Jag har gett upp hoppet om att någonsin bli frisk igen, jag måste ha dragit på mig en zigenarbesvärjelse eller dylikt.

6 januari 2009

Dagens middagstips!

Trettondagens middagstips:

3 januari 2009

Årets kallaste dag

Kallt som tusan idag. Och när det är som mest kallast lägger dom av, värmepumparna alltså. Felkod F11 avbyttes av F91 efter en hård reboot (dvs, drog ut proppen och satte tillbaka den).

Längtar till den dagen då jag köper en vedeldad kamin, då finns det ingen elektronik som kan strejka.

I övrigt blir det en lugn lördag, planerar att se lite elitseriehockey på Canal Plus Sport som Telia bjuder på januari ut. Tyvärr är det inte alla sportkanaler så jag får se Frölunda - Linköping.
Sedan 23:00 är det Dakar rallyt på Eurosport. Ett rally som inte längre har något med Dakar att göra. Då arrangörerna inte kunde garantera säkerheten i Afrika går rallyt nu i mestadels Argentina och en sväng i Chile. Men det ska bli otroligt intressant att följa. Dakar är alltid vinterns bästa följetång.

Gabriella och barnen bakar kanelbullar. Gott!

31 december 2008

Gott nytt år!

Detta blir årets sista inlägg. Önskar alla ett riktigt gott nytt år. Inte för att det kommer bli sån stor skillnad mellan 2008 och 2009.

Drömde att vi vann 1 miljon på Bingolotto i natt, och det var en så verklig dröm att det tog en minut innan jag fattade att det bara vara en dröm. Men det var en härlig känsla att vara miljonär i 60 sekunder. Låg och tänkte att vi skulle på banken och pynta bort topplånen, en platt-tv fladdrade även förbi bland synapserna :)

Vi är just nu nere i Borlänge hos G's syster och firar nyår. Ikväll blir det skumpa och plankstek (har varit sugen på plankstek sedan julafton).

Gott nytt år!

16 december 2008

Bilen besiktigad

Tidigt i morse hängde jag på låset utanför Bilbesiktningen i Nacksta. 07:30 var bilen besiktigad och godkänd. Äntligen.

Åt en fantastisk jullunch med jobbet idag på M/S Medvind, det enda jag saknade på julbordet var vörtlimpa.

På fredag börjar julledigheten, det ska bli otroligt skönt. Hoppas få lite tid över till mina privata projekt.

Önskelista till tomten:

1. Tid
2. Tid
3. Tid
4. Tid

Lunchtips till fredag: Aveny serverar komplett julbord till ordinarie lunchpris.

15 december 2008

Krossad bakruta!

Ja, såhär lagom till jul så gick bakrutan i kras på bilen. Den var hel men krossad, det kanske kan bero på det här sjuka vädret.
När jag lade mig i lördags var det runt -17 grader ute, när jag vaknade på söndagmorgon hörde jag hur det droppade vatten i stuprören. Det var cirka +2 grader och regn ute.

På kvällen skulle jag till bilen för att hämta några grejor, hela bilen var belagd med en riktig isbark och jag tyckte att bakrutan såg extremt isig ut, när jag rörde lite lätt på den med fingret för att skrapa bort lite is ramlar rutan isär i tusen och åter tusen bitar. Då har det tydligen bara varit isen som hållit ihop den.
Jag tror inte att någon knackat den, för då borde den ju rimligtvis ha gått sönder vid det ögonblicket, istället måste det ha blivit spänningar när vattnet på den frusit till is.

Det blev raka spåret till glasmästaren imorse som (tack och lov) hittade en ruta till vår bil på Pilkington. 5670:- gick det kalaset på, helt i onödan. (Det var dom julklapparna det).

Och inte nog med det så är det nu körförbud på bilen, i fredags hade vi den hos en mekaniker som bytte båda spindellederna fram för att åka på efterkontroll idag (var tanken iaf), men nu får vi hoppas att biljäveln håller ihop tills imorgonbitti så jag kan besiktiga fanskapet i år.

Jävla bilar, ett nödvändigt ont!

Om mig

Sundsvall, Sweden