abból mindig pontosan ez lesz ha valaki nekiáll, és azt mondja hogy megpróbálok lépésről lépésre eljutni a célba kódolás közben (kikötsz a legebőpontoknál, libeknél (életemben nem nyúlok libhez ha csak nem komponensről van szó, de akkor se szívesen), írsz egy esszét arról hogy milyen hogy stb.)
mondasz inkább egy reprezentációt amiben tudsz dolgozni egész idő alatt
mi a baj? "egész számok nem zártak a {szorzás, összeadás, kitevős szarok..} műveletekre
mit lehet tenni? sok mindent de mondjuk választunk egyet ami igazán kézenfekvő xD zárttá tesszük őket talán?
-> bitműveletekkel dolgozunk bittömbökben, arra nem lesz megszorítás
Code
static void Main(string[] args)
{
Int16 x = 5;
Int16 y = 6;
Int16 z = 7;
bool[] xp = FancyInt.Square(x);
bool[] yp = FancyInt.Square(y);
bool[] zp = FancyInt.Square(z);
bool[] r = FancyInt.Add(xp, yp, zp);
r = FancyInt.SquareRoot(r);
Int16 SzuperMernokEredo = BitArrayToInt16(r);
Console.ReadKey();
}
az hogy FancyInt-et hogy írod le az tök mindegy, 10000 dev 10000 módon írná le kihasználva a nyelvek sajátosságait (asm részlet, c++, c#, ..)
a lényeg az hogy ha ezt látod magad előtt és alkalmazod a "> 2013 > google > wikipedia > 5 másodperc kiguglizni mindegyik részfeladatot" szabályt, akkor kész is van a feladat..
összeszorzod binárisan a számokat
összeadod binárisan a számokat
gyököt vonsz binárisan a számokból
ahol a tömbök mérete a nem zárt műveleteknél 2x akkora lesz mint a bemenő adat mérete, majd egyszer csak megfelezhetjük, de ez megint egy invariáns dolog, amit kihasználhatunk mint információt, de nem kell
mindezt úgy hogy egy bittömbben van reprezentálva, mert ez volt a problémánk
igazából nem is értem hogy a feladatban mi a kérdés
![:D](http://forums.d2jsp.org/html/emoticons/biggrin.gif)
természetesen az lehet (nem lehet, biztos) hogy egyik részfeladatot ezek közül úgy is meglehet oldani hogy nem kell tömbként kezelni, mert int16 bitjeire hivatkozunk, stb, de ez már a visszabutítás része
először egy absztrakción meg kell oldani a feladatot hogy működjön és utána jöhetnek a bitmagic vackok
ezzel meg pont azt éri el az ember hogy 15 perc alatt leprogramozza és működik //e és saját, és van jövője mert olyan algoritmusok vannak bitműveletekre hogy a végén negatív időben lefutnak
ja és ha ezt cpp-ben prokramozza meg az ember akkor ott alapból úgy van megírva az array hogy bool <T> esetén saját implementációt kapott, és a bool értékekeket nem külön külön tárolja hanem valódi int típusokat indexel mondjuk 8-asával (ezt jason majd megszakérti ha gondolja, én nem tudom pontosan, inkább .net orientált vagyok)
= gg much
This post was edited by Anarkin on Nov 24 2013 08:49am