Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 1 votos - 5 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
20000 factorial
Autor Mensaje
pablo Sin conexión
ModdIng
Hombre de ingenio (?)
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.637
Agradecimientos dados: 0
Agradecimientos: 24 en 14 posts
Registro en: Apr 2008
Mensaje: #16
Re: 20000 factorial
Ah pero esto es sólo para exigirle a la PC para joder =P el año pasado en el post que hice más arriba puse una forma de calcularlo sin que sea recursivamente =P.

Que onda con Haskell? alguien probó? El derive y el mathematica lo resuelven casi seguro (el mathematica seguro).

La otra es armar tu propio tipo de datos, donde un número en realidad sea la concatenación de varios números (digo, porque probablemente necesites varios bytes para representarlo) y vos te encargues de definir cada operación de multiplicación. Eso sí, no esperes mucha eficiencia xD.

"No estoy de acuerdo con lo que decís, pero defenderé hasta la muerte vuestro derecho a decirlo" - Voltaire.
10-08-2009 12:35
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Chaito Sin conexión
Secretario General
Sin estado :(
*******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 825
Agradecimientos dados: 0
Agradecimientos: 6 en 5 posts
Registro en: Jul 2008
Mensaje: #17
Re: 20000 factorial

int factorialNoRecursivo(int n)
{
long long int factorial = n;
for(int i=1; i<n;i++)
{
factorial *= (n-i);
}
return factorial;
}



Igual hace overflow por todos lados esto xD

"Una mentira dicha mil veces se convertirá en verdad" Joseff Goebbels.

"La propaganda de los vencedores se convierte en la historia de los vencidos" Trevanian.
14-08-2009 14:48
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Chaito Sin conexión
Secretario General
Sin estado :(
*******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 825
Agradecimientos dados: 0
Agradecimientos: 6 en 5 posts
Registro en: Jul 2008
Mensaje: #18
Re: 20000 factorial
Haskell:

Lo mas sorprendente, la primera vez que lo llamo me tira esto:
Main> factorial 20000
ERROR - C stack overflow

Lo fui llamando con numeros mas pequeños y me los devolvia, hasta que lo llamé con 2000 otra vez y:
Main> factorial 20000

lo mas sorprendente, es que devolvio la respuesta instantaneamente! 1 o 2 segundos se tomo =D y con todos los numeros.


factorial num
| (num == 0) = 1
| otherwise = num * (factorial (num-1))



Me imagino que es por el lazy evaluation, osea no hace ninguna operacion hasta que tiene todo armado, llega a una expresion de este tipo digamos 20000*(20000-1)*(20000-2)*(20000-3) ...

y luego evalúa todo junto... me imagino que será por eso, ya que haskell en otras oportunidades me demostro ser mas lento incluso que python =P

"Una mentira dicha mil veces se convertirá en verdad" Joseff Goebbels.

"La propaganda de los vencedores se convierte en la historia de los vencidos" Trevanian.
14-08-2009 14:58
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Imakuni Sin conexión
Presidente del CEIT
Boxes tastes like mush
********

Ing. en Sistemas
Facultad Regional Córdoba

Mensajes: 7.021
Agradecimientos dados: 124
Agradecimientos: 129 en 85 posts
Registro en: Jul 2008
Mensaje: #19
Re: 20000 factorial
No creo que haga overflow tu algoritmo :P.

Apuesto a que antes, el Long Long va a hacer modulo muchas veces, y te va a dar como resultado 42 , o algun otro numero mentiroso :P.
14-08-2009 18:09
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Jarry Sin conexión
Anomalía de Belady
I know teh codez
**********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 2.008
Agradecimientos dados: 189
Agradecimientos: 259 en 98 posts
Registro en: May 2008
Mensaje: #20
Re: 20000 factorial

Off-topic:
pero cuarenta y dos es la respuesta al sentido de la vida, el universo y todo lo demas, como te atreves a llamarlo mentiroso? infiel!

No estoy necesariamente de acuerdo con lo que dice en el post de arriba
[Imagen: 971aa6599664453c05cb3e42d58bbc0eo.jpg]
14-08-2009 18:57
Visita su sitio web Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Vallo Sin conexión
Mejor Firma 2011
HAHAHAHAH

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 2.745
Agradecimientos dados: 154
Agradecimientos: 125 en 79 posts
Registro en: Sep 2009
Mensaje: #21
RE: 20000 factorial
en pascal no me dejaba hacer el factorial de más de 160 o por ahí porque no maneja números tan grandes =P


(reviviendo topic viejísimo xD)
13-09-2010 20:16
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 889 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #22
RE: 20000 factorial
ahora me dan mañana ganas de probarlo en haskell a ver cuanto tarda y hasta donde llega =P

[Imagen: v34BEFt.gif]
13-09-2010 20:43
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
rulo Sin conexión
Ultra Nerd Mod
By demons driven!
*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 4.333
Agradecimientos dados: 51
Agradecimientos: 67 en 37 posts
Registro en: Apr 2009
BlogSpot
Mensaje: #23
RE: 20000 factorial
(10-08-2009 12:35)pablo escribió:  Ah pero esto es sólo para exigirle a la PC para joder =P el año pasado en el post que hice más arriba puse una forma de calcularlo sin que sea recursivamente =P.

Que onda con Haskell? alguien probó? El derive y el mathematica lo resuelven casi seguro (el mathematica seguro).

La otra es armar tu propio tipo de datos, donde un número en realidad sea la concatenación de varios números (digo, porque probablemente necesites varios bytes para representarlo) y vos te encargues de definir cada operación de multiplicación. Eso sí, no esperes mucha eficiencia xD.

Para eso esta el FORTRAN que (segun dicen) puede manejar hasta complejos de cuadruple precisión.

ESO es METOL (aunque,necesita un plugin,claro...).
Ahora me hago un algoritmo en C con long double para hacer la prueba igual =P.

Cita:Absolve me, save my reign
Have you forgotten me?
14-09-2010 17:34
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 889 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #24
RE: 20000 factorial
hoy vino mi jefa ---> tenia q hacer el iva ---> no tuve tiempo de boludeo =P

mañana seraa =D

[Imagen: v34BEFt.gif]
14-09-2010 17:35
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
juanman Sin conexión
Secretario General
Mister X'
*******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 702
Agradecimientos dados: 1
Agradecimientos: 1 en 1 posts
Registro en: Apr 2008
Mensaje: #25
RE: 20000 factorial

Off-topic:
(14-09-2010 17:35)gonnza escribió:  hoy vino mi jefa ---> tenia q hacer el iva ---> no tuve tiempo de boludeo =P

mañana seraa =D
Menos mal q NO estuviste boludeando en el chat, sino sería poco creíble =P
14-09-2010 18:13
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 889 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #26
RE: 20000 factorial
(14-09-2010 18:13)juanman escribió:  
Off-topic:
(14-09-2010 17:35)gonnza escribió:  hoy vino mi jefa ---> tenia q hacer el iva ---> no tuve tiempo de boludeo =P

mañana seraa =D
Menos mal q NO estuviste boludeando en el chat, sino sería poco creíble =P


Off-topic:
Boludear en el chat no requiere tiempo
Escribir


factorial 0 = 1
factorial n = n* factorial (n-1)



implica mucho tiempo de pensar el algoritmo (?)

La realidad es que cuando me acorde ya estaba mi jefa rondando =P

[Imagen: v34BEFt.gif]
14-09-2010 21:13
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
rulo Sin conexión
Ultra Nerd Mod
By demons driven!
*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 4.333
Agradecimientos dados: 51
Agradecimientos: 67 en 37 posts
Registro en: Apr 2009
BlogSpot
Mensaje: #27
RE: 20000 factorial
Ja! que vivo,a ver si te sale la versión NO-RECURSIVA =P
(Re que es una hiper boludez eso =P).

Cita:Absolve me, save my reign
Have you forgotten me?
15-09-2010 00:39
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
gonnza Sin conexión
User Verde

*********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 17.356
Agradecimientos dados: 900
Agradecimientos: 889 en 356 posts
Registro en: Mar 2010
BlogSpot Google+ YouTube
Mensaje: #28
RE: 20000 factorial
Acabo de probar en Haskell, con el Winhugs, escribiendo el siguiente codigo


factorial 0 = 1
factorial n = n * factorial (n-1)



y probe evaluando. Estos son los resultados:

Cita:Main> factorial 20000
ERROR - C stack overflow

Cita:Main> factorial 18000
ERROR - C stack overflow

Cita:Main> factorial 15000
ERROR - C stack overflow

Cita:Main> factorial 14400
ERROR - C stack overflow

Cita:Main> factorial 14377
ERROR - C stack overflow

Cita:Main> factorial 14376
RESPUESTA
Spoiler: Mostrar
184182836637714302109914716673563264303588190103009212461025109052932725752274494946062579024984230543564311688682947061523756959834656106593709815801​380213255932057222392917692695896638871860742606823802764950039395258019771140106536677028605054002325659727285663572329668808856951255119149420832112​379527462393630663286632026543823153201974959449409231175543162922268832777058592975986982308623226665085188331003930750961932785110765759997385636003​136720268484374932766937779059675399318422800412165011363578437035049410572851559297251957807987337323140879977271756040705767322635798982940442474492​859052914366568770999488140938199251956931215610307822883050185156080063040619085944115042987764941948050619997206877685448570954800728399270891025158​053291457482645582728532469201682422744401935873625018774369692451170125925690991119252544587499611719031161892527339038274737986366156653329376145876​987616056968970435829753801311092486572670932043323239332411893953362721570087996573737952918060585160490381830013046779247215529563420503671187105173​244527396277270135147953369437506596198790173971656251122053830023269959996344860500803200803755763557157048032960936569925122464523049102358457076856​636275733810444509159858025702705694411164872235223621115129912554773855702415862899079680069719253690665199997364819252189244441666775868482317002377​925625902917973878520357537397288161551526473693026256589643316373052903928608700152031852474952606765731386312749242945714668878432613313580593810562​692550169837180023209125494522599890080641855951391029880646345535027190165392049936682761076620390606544321647340058740762557077295512034899605598429​349723488881557566916061046206085379776995094058689772846625320528766602126333538998479828039598006588703955813774588646761311332834845570950498444936​401318860055744475146644515500427441029072651150231935108835875374972132501933538863480638591844821207884560805853362182021721968964821730874596882644​561430541038977563269066854499113006736434546288065541394506075088007175390751226423167364199390893217864143137022077605701757680078498934184286731341​455434304296791313518993992655215767173739143428284638613429828669821873524454113961076542063846212864160254272231108576276703421198684305981334654741​417852308519470642766052073097629865645083360961962341337666995874067168871867710787923875059252873507740947083877868354910890858340125708935946137623​512332533125289302023650469820203865426864851726031897010063524389485615597775312733452603026850698080778297110651348539795182917572402365747900031641​188748665333831006804655699607806216153599355717232243213665178456027994346523208031944907086837039013687473750644152378311777848542910944801894446383​081222516510203172129142028416022911369954901860783548286072311303591825628856309016695110167684751623605169536720113572781973114472108734256753460180​797320535714166304786080110774861258314513965526205374399446523312167161490559118100267675320272204437671431165171944715909910572113656858882249137805​854751967460037503326150777742217196628928857616253223393085154003202151922281437570340546437620997660127327519118922709663102924737363980103310128750​127433714583411858792685329620366949750423109940399212457234049442330093677360060996320509183691931279558273854173822113241156823001404727493059414472​994345106802941843564029268647247569391700846079667036161779892635586702853554897850133220696562619671893949095760752104444670158928227833932271781152​462110473924219413268898956395117329989680135687121397170030944775785104273978206639536459095914968958243469733554829830485932268147389530446821675922​858237990391065723800704101493062833971407653946573575352229869970425039516913446377327253777912906377698056664617376188508297992734872574997935639918​270185558178593281386857787340870917194631554414777340444549984521072850355502253781667635877400559967452028915632950067924653488964371750665881457258​735907516607732202563016363659640098304516523738955793547705297211964848400851435820705196878130465887039776171779830429359415922390478897736672449747​127345679562043894138383073082826924696348890977131476709162566278032267368622679827421047939221941478259185130903889786146421792808371152514599557444​659073761477496166482961332562915222686955488119304720340974004982628176047598379179286223397225094924728775051351903914586558488334300120560546653286​857729437425058150055554168146339698489025529735281225382874982023124863252159399038747271694674368113909627541593661058391808919256696843275568171029​022957587036012915070704166959273866654836936616993929392175752398507568322947233580834653912843304309391382758604209283845690986128399330384339153151​347012937315324789992242443345139542328031908697751351601251281165190157907569361911513113126436263955379330654588185694682464366426188066300331767547​744567527476514838574209618976144971508284342016049415584596527056080016000098906700728247660088193631429751002959202700259419067730362898469362200733​465922620655546448814412658905557738926597457647559002645848846591646274938330824334922417324083834861054686767929609941282501376204610912370775850862​225509716689933437747059734607422584176015524128817938207574652815058548613706119208425905719126301279790627159558752408045627672395821257857102040507​118857767279652108555070396952252675361726561994386810498504655769066229021158345804864784755783380972995119926209407727394072522707896586664994092244​163002938624806491342569737810955136311056020129963200729438142009600898195822057527320181680103245892952554916158835480321983445778259711881985246416​655018811932364444028093039349793750269999291860095027687263569781026711816594114871038304220763420678547225025015283010213188366676513884175851628615​336970026272160938845573386659482436617148949298166133739931751908537628071827135828230347595769313485466373219814741198173908257340867750576447518748​170830877901427105038991641697537915066200635780184284128739787044899516634802889214949185902946235920341263492441411166469226718169788880704766842897​327497287655334987482708141855405789646754426928501928255655345709689910704162095643116368191313007990250961572450043169710098729810553121252648205761​473784755966267745023478970902869988013224784049374705859390285923906867155300284641213793086193696594946032876865942094769289940520764543712980511396​102071270976986980854685514346252509853784631863848208597792681749354645035839856474056873640812568622381291633397985816230386328373417370222749165468​254380681493754235015738514175453255467701656211636511883350685109036839345849724676045476516454203869808618969647300194821264907376966512447905206000​303634604183509109831315479953094733218475282897838130413045303989630511197758069562480847955843412234810758572667932090757819556199293426776891810950​575008443256214963795489217153731239461022072029639777155217192071316046378605353353403812481470284471956010221252395388396127116944443644635015586899​329890683425821947069448183435740968154299709350033635469700908951784333989756639855441442088382916311911643010606309318552285957859750586575075075497​941725418608471280541152025676344402196329025965221855135101192015021045615729783684058731097822441193717705018029126894446898412892489157848824809122​247007832299230951408375248384747656293648623324843773568030547013080429905896646967185223771067700853512876584477605659638163728864259946188134874561​837022225476653526587209452316600986716937653895761326345620642269623587040923230588653757721754716574222727895339856263250635445087862703164308120896​464433249566986606165340406020739080567648439980911848213275848114376709625807432182132576441332142261878357469167082882997160996068747568356108443005​207693612115929736335960494947694859927469161115134570895192696303295244470481542543339395173654181591783268024838077912045406264059768668414639429215​867576866286095500551866954295476473426781486021495635608653554111238842249032156890087959967089842887420579056514792163539717979843275004524064224538​087270425040107816117186032912135102471096595010734691160608601332168769681718344798130959544282861825448018110504796945351437860213666852516359432438​120929665247006947989297838343708951444308078546336758756222448105876632700699853811518455463393516022444395795435929035862611415466545455362801999752​364321319709122498201397821835931517689995167008640796697243719523483399414056347582059962989306281611326118426497308806946033030564149340040352968142​814946650662512296691062213964694246687356879350067555197899835382521950764133481664450167985365447067961439841936293764419200680867575660352253323835​004026969689446119056028298982208593067756727783429749650940745292410212250197871361840924969683526612261229811924544648002997336027954240238078390692​220474306226646933123612767481290628276729223865406975443642525358302019522591438320763614101657812706224126398789321463394635610617439804621427286688​391490949039837852264665940857832438640972705312109704634142087665703254358590322414229525229314328721002122951461838562523288696922637422570888444908​933141387645754353268288492075911787845145083662875412233800762325966138990717051871024133414330490209306473453187080357469319904573964387473318253019​497427039921300389124978701157513565930694617003737512184913375444716995175862290716036096496188193471156962723275353504245607099343581121218353437374​687867804216674474707191394162911512057843356682762572216915152902870434970650864717465727542733273594732974825607198480041979581831635246757475060692​360884555607755935721219622507114239663863595818991312434945651836434598929755624089320695272844889538265469726946618557735073211133408038750125982272​716905360544064036763075089411893043801605711720448899344367262969418095591504775362594827604102533421973827407221861803837568110247248141745681948113​610240718098308232200722397161818704904362806759384555489538112380741679944558575502552317087571094771002385592995101484720738048009672720696556567231​734690243617806812947701118286236732299652583506163662863047733048078061815602497772703528183951813588791837615290565363716320469088329473711510196615​110369831039420089200235593492889110882981940284414268174727932678084522588507909587665006331350701456876063150463113032660152424757771721348932277346​233306657486846177705263854371083603995812857306865159550624056153001030511350820043683806598411861117086347223969349966728649393175545112529090257879​343824864510334753084709095941570828753598474899514575246545880932629833585260429390273545703383127248304118928320220264280892179123452891079135400172​571662925416858419901690899332148015218702872571516470164985731806800420548577948943160559894312385320275294309319037965521409163783368371773565012527​475362698766600871007677517157311011531637924382498386624183217997995651539714938671049943753844009679304829804956917657654354348205985456495271128969​258380414366777297345728356811734469369788800177884787821907450849367191395107887129829135896629685686183535544731491896041852298120429445006744199863​887819290290083756013590443489604701217031400488225974808073739482752638419124744176288178817859123919516621565047304737457141746307377808292805507134​613936123061636755731717033155181491045459830870313434467935607275271882889082908422884085248041108822407813805451478014773714653727186874613333087112​733068950074660283783006892379756799814825523514037841656289202773464077497958577231888488298114399431962981259681815736586992732122782582276849002611​416990513149423558449417276539851153080343140647954174736184276757644764367599348845619616711464592601242224660629417440177076521715822683847633572448​811399979993094499513994543024991010733786903210227386899432840093269653858401394317584445010110340510601228082256253022565446787385997878665203881930​738179658474983734048955800480215778906113108867368298699562483790574749812597761569971244004789451416487793830707892604337314852643333280429229944930​092800443226941756029409845635701664597037118577169452216947941206410968123672124861338864807539119034860088737049114859584046742564813694012128972712​589185074563702838981854332595397464626797252877850616530672061074582824660821893497827251123868354562291645308603461554813920648530283247335483966148​113124348100509426048153143624950133974378849066062752583323818916934857869228566143344884652877389757455341881748759319469187374734759921044865098855​057290882357270164908251360789233473538159400676577528281547197501461017840388662704220808187372881326225121387431554663420458863161621016731646862681​944217800148887418295229741128524827366758010018847237375310149839848085031203737855244398242050449185761159837273625211571392380080546669329491424168​554667532349520221253638420402673773096621646393427116703535542774528828001792806925278368908394220001395914999019493748350151281488515905058404207056​441135726771382214732128836835549660689945767528323496965479683579800414740802067693890115959391483326829407286625705925481888558423552662260908027999​641282538461574899831794687217972858744157065160202797029100206197875063035198782019480445137688338459439275911045059531086200526858671641754227795083​237037813797105351081561415634896868253251106058872231066464377873900044780009567426844456025157655048410366077734942101612633834368155771810071777147​592055269151094003382484696783588898659696915872770246736722817993820971717076679419391544314242638448658660225016057454912182451751005382816264191357​764486797570890878034370380664588857628629483237743466282689992087397653512646587441925301022086109952796580427660018667407729892040424239881668106414​369837233109207133105328177226748210461371344633795618373451395333011839779816571571408852009782647272927432907502607275885910050246543882493226833485​155080499619317743620101784020694653423992890092542022686284427812732767097097624255566345421481499103785493191373744934129027488724953530953523389577​000634233494111190184057062204780772897242742841971607864573806134196587678622789572653643504046961184672483889798528474206972723281749824613308678428​273080237211420150501743046945156858586102063104652864351626720320807442566789311482316223309057733164550677891482337547276451308114220429974975180175​832039764972884811598252178174852471772515327020448093428543046601151824357245865878889651543388104082302941032994677845668411686356128656932821812500​222437139502822406716071218490009648730985908824313462118066584935445266428593721220763490874643579280871409985091024972089992406005590819668638928302​314561846429911401078535192828007102197713946754771543123290585838695857944415352299694192103190828141390169169188833830749580912937072628169409095415​645688598511017418893210648859958856086235474270427689629043622781055616961650743481854150949072741217372695870817512787430290238958378092680712773619​162906044032219739792180618493860315230814299069896474950257355996686607436305693452949189761985613244722624940548080404370903359310955643914409393078​476205828053702349571272561572231109930612607825478793885561894318017258705219757847421410435147060721244284739777158418293801654744722037885395468891​284852033274143078065880791130168545359924528938342042887515545874567409223059551442820240944940436237943086599030076123813193029203802877855875526234​803423487956077101750509346662395482834241266800663415629824452353159075095416467751102520095203856348305069737341504512322578867538437088626596789592​008838711827614210993190382632732048861155303195914852743986422361370603681928037328169330118662099615689953078353924725451637822917638375624942422365​866385776184155517766106563924244384455503564813645052293310721902291810743448114345170805927099919350574368658838186072699377214411079566521904555452​207177192897338658313674842815022216725739161409829988671093599646920581014508380413500686022986669196767145625008959860784862905334910557005191213778​394355931142835472319692380607189484604193111752216307253446548735240669228408131214371397919637021620131308378616947785168405431778556503073794732477​149499532892752863294946047715687550283355791167443911473654209365568579364179734525435898601893516088528397712183873996933664375259268758855691966487​850039812269440882286123384705780927239519331928267776155958509339572518180011825836084278307308027123288980012645704370688431629500070271087661910686​348896490208809696740786131975746560936660904466183917723601700845458593317473768806301823910285184891507457195070644449883742081471096316054441238494​573123089907537120734987140508850308439371691276287890529006958704549083554503412304801874700581326712558284237936131510979069279799216583875066663929​434737702522548094086149299755468763977923668610631630727233700301519464090490403783695013111902328320573314956749139065470638952659362353286688527194​932157330448205881660054453179844146712103005814067438404319531395893156064925536672278243464754268595832528157350222500801369683988436028755153723304​075017159988255519676509534964221105848261134414380018842881055087915497620634131395114080984938631845185710029549999222833631316961938486287858164262​572553395355004282231354953134397024079937329562306726257837865647402366759292423835629810731658019193549147645329004865130655303842250517537309188587​094419704035633984785195326960554205512546906711534399233259494161570518236596750653593276425741205178535186238102931014221398195061767674246779206725​555263511930708861708941230309899562762161423636795287764515508326091839963261120922866645384185913698199292924730783971226605365542144411119584051588​555601034932401921546964742946469572420022234746651981537555638716988046007800881378520180169310423871367225882750345228218802237423545733752006306298​264429310218858051491558860873370409854883265650133268217608693934787799339661959071686035378690131119011512444732713577540145345658936465049146799991​052617152745932105501231145418376608731294009241237206556174504738563814215873509470034906376615007027544954851667457959893298906123590681344059457861​884202497871285070722653655425786500570710913588624469825249503632664262699331815821878878133078757182403256143799278376673170621592400786229772758827​597180609187787349575407173926394620465804173789893761986842600781292853282840189485625436042761190470510303244689271250659042945000645183496378790666​243080905269043142880949685989049527193359937229537355787472777705150860141388670700088958147783016790787015969468955894280225139064526606679397021528​018508404884777808488301450238753836799981426177000834625227627830153040519166993328472754594656011303979932520545765550587095693083000807643416200328​847824482393575691673562175416785043112889495566227313004743617220459871992594175903974013518085817275449784389103089406564082796998493671302942793657​289246862439825296493168805571913960146071135458374789106797411883785398918836481959877676884060976896826512117793864614733689782305443330128390374673​074002639257133918124954140035112040072394743095430133150515305033685976431065241368120822486524762299588192749023960531923930328032632591657604543470​962295501434445128405528015930734095633225734637261565729270371005631713880780447912125707771856286684742231868450397927682713681029839864902565811899​232799091811487112761799122433602771432541360915235103086079026282827400651947498826679280473105948308439519770962472399760123486146077739499356702542​614838563982657826208409685209523665242525786131392983679777388948977336290416644270345902856261128507466320195619233109390022410857510562146069308727​569703410449420642405242604616814588098467415503460132336959849321623878059425276469287931380116894854862166630821845757343977012143678207053963669503​213220022838572986043642280771560732611818742597478747381501534740064619966291400860654288759342392455873079677521145268187029777708241362099819842989​185354044027778881269781475240812091020302187422754144438415736045780687854429407661427207527257139752863915422440607465140999200482425492945430027752​696367772621651776068015537341112552851530386586025616138573267164563898691969695784003649354583709602772592280639637899705448307283122397590503913014​587564811708479877613434637769169819200041896099103185032325751107714170652279931457727203956038681768116533533722836730444500877747882861786198111321​430552810527444515487353880387996054877977979919941530273508968798921945654714293731164465452103664764953468913946743609790903034827909642766792055957​295148674062991684101721465520160218019970144483284206392349615739692783694677354029875961423601435696659007915145172027953566360388495178724740140460​473094176350984604147470398729536301159366549368889931945018576551872725591932848115674000232718295724136531147366872633021063584596125668699750440768​150029158241366530373486279196630350497668730741006855493420369757769523227935667840422685124991590725684163042727237154859051697913408932350442036787​014360506236376648347352572869708584562115215169045015182371660171997628095549692757390200717651518616969258848204234037481085221649350229503057334842​920107295808554940001122560751347164169999927347564495646627167379718225632720203469817140689077196182141359918499390513904382764400139842312277433109​479367515536381523640552821410189732733188442110190026961382486421757465692058304125942084735416344428436650062094844052168866778875864963057082428584​646422319860483633401680633334299430693612650647457874619742239355536796198979754530855111410866701837622562480912242152907753537627023073806338218518​750527328536342861863745836362985555586878920778741603343203793811948792952103440223070002263437645879051805404123325224904707110206684059375578911503​978302459177653209753057518207709910438675033263528458667510566708729716311150820151640449775366847092849093144521070641814166708490330357092411179323​428910682539685048345499146279853658828394077447028180101364391367746368466944924271605646121067315310518758333526879145735140462490040909586357915321​760365299552552817051792859245753687052800709960162325744129736614308715583946750066700186928982318727362504440520951987918618599554364297961817092619​473667354145411941976596445400256142803984261046163888378914810166102535289488907297442512089248170612349851750181429943449918796178718766717408204606​487648936811399742850861426260377418461128351951048793828844213763893082436494601648160271839446764701615716123367119663494526418916483760659506175019​652147790926636965247694309717090062168510559105951101111399718814414167074022149608834711358454167091158902439784812865310379986786901369626529634594​072785596028918633210219683458560405104216058587216999129621541982010533861164668688117300826672096077244163714359462072350270022957507276254729323890​231498211681491727509340555130692387301655081837494324043588333845864291964641986852115963958146421146906220679530836568199157828038373864111248844399​134851138359668972186728071898564662248760403826528439368232010484487658995220692265984229271667332223715398506272576272994882758473583587539842042389​958625148934897692475589057360910972111002563984439888406352395545109415230061887651983330794850882328837007147048130013862771204437592994379882910585​981885638453359967569191708194389367817938647329861784269984990389176897757958120756502304859294023756366204363017589222203058527738333085509668224479​653474356279912654884411584473435609965804965214812541091206200414073961570057528510944457973993810658369782588473610116879371722526153743482533796432​250281575915762739371246162014609802941227752680473228433630376441323267386405418679313154444024464282533474892503629342414130608656935901586943716485​167940182026336201301930362539499814509206867183027697899117010038867507716171001146607840397438738458143398964009640211693068132282511138986020995654​007443605056186036384943603587010883803816150182585822691961513019261488543306755582345583385183092276073521094807642361030691342433858535600671845039​022519548725596785460390898047387337250568216861362395049026992122472134555444890735942143113808804104595433207295433969034061822902714015873585588100​818348134320803391741323432958347479801196304867854189649826635774134690107149516865155131481113634849599583440680411254298478341261803666317388023744​972235612020202396348282753321212069221776578648152657188369556593873419013698451629688144646529502271686892103312032648901966216036803700352729667515​479935483511664265240931137678985495670950280875864663245031909225269302476731655510351575243472530050298822344258591216005042562224339282680068233651​513082895895204448826086087448481954005174001603659379444655034473619040218953848762220310434080953629697727997743778384057778983734964262074406018213​797163831796786208998676511342362095469932955222400968989239357736297438380845205933271147808537241308456088915453087840222975485043474962992412388888​705250803058835549008832285767698754905461354929140414173787001101622986063791845857317107295740400694051365001654787413220680820793281203203063535452​916002504354997770146258354172278746975527364126013860051751273516864118304571304681449636149109116795160639694613189327357771678847792968087414858323​750623727081297579726437459236145273967275243509085134486264444612573002500586725591058356628815389380723454676565859021094985139796515141242731838842​851420964149389142833331842490146359175496888812482428163988007405755486004975947420772318283339039266411556413762014956969176118692847285021441195332​922842454044171066128969893551544425807663976594287376898142673849928420906282388354561356924769370875439946589219658337779209700656489527192140549490​164801473314033687389350247008608059646243519996792679256107888224819135795907072377273889813343225062476932779473755218772810226614868747027950158282​590651394278303410596972795099330302927559364452962400044514668280814825809681571567122947628526663712504740915074176221105728438321640039546959369041​156704729454852291714254478554566722239382903201866612197875574034288648816763066997507504097106033676930422784352282784115321934128809144807348160953​683368097399964190949346180248883352614503764835942391954948210473290158670905341105281269879359511775811135564942399849465165533794756477498710888339​442632134333444892227825411633912983802004688306260274542206059789637977424644731464848630451429845656897680889332316510017017114709678237241390471096​526335807072595805529438800081130560697395608451690367380853012062255760476449083423301081867539441200050605908471533956377361016564806430728358756040​151956123405039299345877832303370790687299242447742909485031726745959822737084934008772842917754144190739451475030031899488564827377805374334231644851​677003750565223041917164707369768004843914867672602428215295467224425408590749098554871881540692854357646740549792130132621643325762895923047075722060​194463806978419424302662053799931221163547759338504226401304277838582666466258487308386777896997568242104478305239782158035864294848062691290901198219​856369477878204937412408263722068284393673922089765600252562787835831900277553384725669715833597945001180772479263785434867026086885478132794486377464​967081888938658207073032993407049822566840564221548883811617599531258602986063948515257210686968873882773936304259053382523162049297852622119895281151​887484639982704451113393433697545739610188666915857246567697730725490718964313859199797364415065435875352685030342467728418211095239775740474453729938​593511864798792877430080594597978782531563853641183044301565572921155998734847039032474544857216359873404197598452178240500700984738826751888113568236​282733103862416680078573991869638954527907524503229234086330270766516651959923660089135362095415322572323926430643853133254038603346816071409987833947​003347939236265192071275311021122828448363842541447172790999017477771745426404843453476380294758663753236461794845298668134710565125135865398595101487​418493016761009161553633764111673472947394715198766265900028337134693259992142622166221315509207423135808157444194679956019306491009150258259905962316​197598606040940110785975958670717584427642186748341315007348398329626537397494658560659819005953243787130951643689607485846122661176978028800201506480​880330644403442739447783299026046530160098314187132528644869619005936133256023019228318694230039332784940256905419571294008608831206167409473588295162​714278477349759048412012375641684782438480643740807443373697887371781332460338052391883422834640814283251503418886727001405124646098133062896139621812​950075022216360882240360090230949358458399035375583855738335247528746586663561744358822957537955947089875170470488856481353239901753214833756949684456​529810159517638573294913345324086285592212643499733849730620176653491495473110660017619707206410209725495770012711726182114963363503567847577211092639​927126617042335218162250371504261833536705204120953595436417983216078867801577953905476359669195327043095445558168197875165609715049568044183669025691​615357594016222110456382506626260656285944782873840485275607542855878302543479383607617392431076448338117152152117916787812516378602940787035869974532​090892198969367896126782527631778283185264459680730529834950904137226224220167868901845884709013300503208860398103898532304706034061880637015905624766​188745813913331906105825062097365186667770136551487255210951448026588120247041128472714555715995411818783898932621396593164111763592046948415543914478​476783424556385656061737543068087535656249775872998162457351786724844938916971233280221954587968757901242544166803426358961965189536857193001354634280​160196622952322227706600249888252083611174936025842201998276805221666566361886251322667963921688645783954329153702367723275897230892115387372919650367​141046855342672091801982998428795634851379373560640462431514661106345917904895463784408875119703455842279165635906775776730572031814727789368411669363​800149618021794996309754844057996213430068069575261401948924771594674919401412350518954074610373154248491381658582426890879664525771269055649921458666​525999134116263230630440553649733931231484622742145449487316752437198543212828740427055248410045180019729349124520568175698182493721280807100248997875​879317976503094343568998317548877632345646045122132904840769375893550065412358001555784609742673571991453481995008753645433402666613592968441566420629​787948764668886205338053964660012128696326334939879698964598053826088754764793342361031710754384861105313122622892830950690841904593842049596330771216​709964162587444774635283668827645172465578900034227731848711312378445698160641319456967205164657955086548367672143204686992642875937579917078735246030​877556218890833414194168381501919550600250718482104536077069307548791755435299008660766198702766834858272831610549001079307338800340478549145945309918​297141971753567377085408820268684018786188343850777900428075534593195368772132077496330566131768941038309887301171837053881781939232473221245998761293​691747966491967950691914238295847677316376100849986506595584700119297109952675560669871773630530354362938812069253903755479613517048736871456854936079​179655411909279964223943492191266057074669690590704251805440687688049800706725574583927905268859696761438819026741848585981479369257027429309699419795​629852918802168232385608697143616128080921291754760901626331969463644227703750434371235025974097621056689252325592606402146805428102163679721002390091​452136526489243460513567162994025437440447260788386246357193386402376279179783833927441157690140968458950877689780320891152708041687425061440811266260​018446975397810701107866927337896987159491885932379097221928724237062447371525860746140515454809015376876835846832412683910755727296635288623269095662​476537330626638877972321055974393989087997377399279902615976271452842844554716383957324123619248214507535390230187842373231683086736427316211689363349​234542346929014367540993758809092117245603399519672512250957662606911876614882061176699500122792091120052667527054625048345013766808611451079605201826​263692297440865829554306563402961018332874980215953172687493375571541563113068553999736407727062234278689675582429027905389093202466324688930809028711​789391596658518028674418084898608837679048687406746416046549461006401788925499769942748697251545209777076350235002726441586701447507937315774963190878​188117910436545345566691727030394590746150524738803956343872733273517742330571537790073512155497452776861693019833540640157525856738677267218742986822​449949013580642908615725405601756812730774459329552174361053024266093360905063901103606059676122773576311958180201134420225885575415791529807035325160​325594819265607809639783314232733090135612421853579135378346377182490773667905149067295460912520285085221104607652760443080643047392797800660681009885​870880785009672546311451435688683956858839303522113331346838573712632173524124374503577500904350485936395937601256982062668569296615222446822102855271​401321016053677370711284908443044765072605890956678960503154841924816919558738625049867878552887372425161769248067507394388211894786108819624249898945​391993823150722757129205719194789696172446092291657945907149707743482499114738858142219742131730450639777327708862337473256851600671139359060958709047​984136466550517997397039812462841252908273374420842360663832109833578763717936341423450254422773299840961009808132042819591884752252261286816896587298​698780511739602586896088742014584401809013026572439386400619211541952262006472009064515081397460994051324393875727789427258355964914617163095868783279​863765039751433613937623978634336537870805116673418648100339901155035496877667470846398508322488233007268536678256212214398043466536833003182277689342​515570585188176962014268510987771007943512836116498548505657012313531662868632093894693094832517462888985367100415339742424793145435583979843457455528​208229503960281871470181660035050919673954265908403029437271820875963077458389872613892356149671006715125544082551908739847357299569374439508445899334​685506919613007881418787100461743106474130176491057788683867592321951406305062372121486814961058433615046940189382610018452676131464815153688864948202​394402501922507866229633134674425662224285953383636960974445615695928287306013540209207636665071122235917070201520669824279566771566235696016801157737​968917110794926338933264026511843131841394549391111866620031933937508931456944655210533835644248633251571902073155000495516169041607356886693184848980​222977058644179979505186435088794307668647462795030010067769745396558123989368027842661565276142143954855961885697912095875876529006047807035843567063​146523176963670607899684868127135063066709863677083805135509293295815405872596678802435822164437566554567586401858901082958813496759639992237169950161​921351244074917335521097517684994059164020412603465658527078559053553342812114763970633599754055850938728216802610965715546452659422581979230959936711​220041921901083502025836109720135348108426439068573713110922823312128934652717389091110671797283698851514764452490878526985798996154414443798952977956​739209426063516612152409768162740735338622865415198232776797664290947234530303076583847692199108055479197952861767657190334062941604822482503986967568​211758831619487966797525317038866758986214624751676858941960846771348871236682411496101981497142717021861093559254537919194562907750190502492016545464​164247850272015255106534742082805020830169808255575668143413199947821909984114000750986425902776861022249752846440042804078811076170581804464658813205​994924731642429918692720393721952617701903451603677915776457907032401921450907640458108176449359640584373950609918217686067943416059350474114885813156​059461155276401665797629189285670994151486564276295315556644237728512665252864131371683406918533785117171916756647155952818988945532823191302054205223​458441908795612145391435479478769251494586639991851048863232624797530158941306992155579860577926829105351118866451608355752998056297192182228322689020​535798887634109650875436331555461448198314550807867191745549715767413704598709574649811741868985912234216940180068414493585103530072097598569084596589​993620413198527493350167505560341048742520163580067190893674927220811141976783941097417130940267012264694492074963763340397640176530111460650967731402​725182595475657955199171880200392500756710678916052855684320937223893623606592996215620584372349108585360033166449076770923810239632906942584717452473​575562143584653865367936449904761210643615041832462561489335199322027556629706382779121546221310990545180332468052418687770768460374949527602746611956​419863827727630233309369604619128224039168255045756259734799964426903996942431189761396829231075372542197307803078898509413713519966246048583218419688​664558745959345904008773924331329546825283731317107178284212046563793827877918155607831556900093026279986527809091121182935227153900703569633724204295​673204072057907213484567951817390562923683998416470915756446755126484284847555656503840211992631463159101378483317709034639786768191297076765794678988​150211897478508740877544439625977321363755064301790015911367158770426944265543204253300283374387671850869453740857315929313479857147449933656362831537​119845950441345702709960067474325191007030289691447070365948756434325836208278644228769120006280577099428287062415194328712706163386220125276218513106​718655981133821957980961879269997973047882373214884607985201707491674764941002831473381943442877294048516060069005505569435755315451986247918388226961​139155486582111328855058879912924591310130809001248293786241398321304127764419329545592346898907426400117663898727467155134603252680242104090495563875​455600967715895861515566064320294447335046414677137340002788864129044008411653809549743838920611357308914800343279490497803587023462452335498423986661​170488491776423308554419169348903460780394129259660065961050105356082544070146036029907144503552124018693488533888330190317823284422526881232498487101​715312248038121846983896880444625422051906899246715078453493064311055420275495442716804750549373320405088506012810205605924517390241680319881687371871​772447586310481209016577036861288362379316489191528454908953705060215621821876136524729068289642400275038105430258676978483617176539664997057597837005​171740463867186354169901495459342440500391845454278957373556339011314382073805494644995258439647807212958530126001880161098613868903156769959264554660​455937864333877411715873439563305129455906793738415484723656915951432063028408909274133557185772981286273841853820936761975338855890345185882920955998​039880173413782167846580229714510412807126982136729927116389407687067015047340303052267612644069390343210334837154698870779870396825715307674904312308​368443573998752917385762938142312427961091296094131835053699489991945207829825710017264369659296247018446806007244720449583108382117350410779223809480​683043983973047484890707707556184026104507919056871973404571921382998547120886371983792894103147340323623235206963481399598343474955932925421604808687​788175135745881410010731532001485714544493791948908383802568986871640884382164904887013555673397325689737540103168435222791107234660689708427426824764​007495841752901519253438954147085367619935820817377045726514654819630350116178014575070690919288240096651805865198287705808080445272890720775915903369​993327335299800989017078833254420289554360378487779335626953784269174635223240382236974245746798785277056491202527587156477607678717252121128180697260​456219831463695611219955636791069295527958154805657972395122172826472492542340325400547000493620022527769284578300866944936305123075560493782254710802​243510493467188597101567750287844511402954649979188607148517007037810850606308221418347901120364344638083230499777103150017712449635335175665423710746​913022856241485041625132191425335020194594795608000716640773349524300018197742130522626020317382260608777759844106625615268586453561672924343490418916​388170030293071553127322961211696625610471639222423726865104222638650723900861368767502537037556895759992481739540699722861795191675956355407455806267​466935006247566374114087610366690456520073720041993501754953639843498346764366993376285201952596526239978274010692221491701111210794319684159188487171​032802444205215169132983643882154251690664780963386646434299938072566329442877635549165374183047644058297531230374559861914120485350742678708488849950​300462959976944154134262971465516623313364747155851421887702797044513192739432840219059608047563938028315619568182775098993563711058358917555905954666​256750631966642379084423327539105030327958670677466335382713260070621849020337507778533267809173206049306849160644658524881534917570339771067181511020​195478620868764303139922257008762208267925271296053698478470207309331717910510555292194865104132606104964132409288256138863929991074808796499832731951​004849392711468491465739835051934662903445283920003169588457834820194615192724456891608104462847394833014217720149176482230014385422356981799054262003​470801160829580780139377643628129790706097453830047801677435973050618712748989692339833443921718416185170239966454101527930438809394129303076929855947​126879218483894457836955080017682790410246217663895073557573973217817708082554147182854351297063635887353042492509497725698038631018293984799333505479​729077378918535815168158403088858345694156512716708849209476698530447059950743640286367394489989803619648674499811275988103602711120918808307389565671​927055276870433079552472790244465082095363775174479062899705638756632598361254258081033003681322338390180772148678018724894181877605721404638565306211​010904253844218574425173738510427513849457047092438021701084034741098787222352877118330182173012558892262944182295535192816398735620323785408382664815​046361105759591386388660335569455270067943097734691960344834311501040262690002527646778571427987581290979013822406284508535438288492634815673735846760​413650336868734197693621639609201344251701661658018112569710357081099068311155084720608142703415596981045840034416254484350172719264773201220056235791​553661573246952846949287683045475783854209289694761942855865971101009492511384213602463787716467393189110010518703543648764265100699097625642116399751​066425409597516668857019025199627709341566966616091159534965995274915884172722257791266128098262606592375655077537917708101609759477380361368303557319​986742463750127541575015444628701163851673520633360525310861446913388570183598937910794492758680812040909217114553073799219206712404644548025197174321​293117405705162176224549214771563375591234045811471460660379291489521193511206479282345701193502143804958770345981300530768095771908417548612730521617​749813808575959721281292274796355349311463270805016368108119001223888102898251191698309247003420118052983254135110302696459260656229761516742138146881​154304000148028911262949569782842741723614299613138765978211683770844643601218790245236192740474542077712687545248135404030645090901910764967654432595​924662529134493566597903120319465101500832078046605677986355114439591950839851690430606722598007862470106790421333038369795268246642831457621212730426​916366020536606367759169633294516254474836871259060207311909292187893695291119157142898829249006976228396504069984719960349237680970105829870329109271​416482322178295847542993837262049370596449118386910490111645638580449584775232828060474982849198147032339714795008939468816256517884997183452514289742​671172705027288683725319296896940333476134794205915053143486513439855151402705472969127535576117365894909009256211733602089660265717925685443350010480​777726809535685148089190325708037319505537424958776760774733902461383141130953966072933233833237988683898678786199205819594624787894836772676097494005​725512654478369773021866353917043149313154793093224742660923276287787074522598147113462613857233831495907727198846757879736612047612115436085983778268​467493278857516279662450863185425201450851402369729165041657133397814131064880168694505393206196180024496543926705039185569890182569370962212047165132​804286399185074647534201008238522270536914789469878465241046615433203615822669289183247446743207862287948765364137783225210836868442754829372679971547​371781620260529905304444863684452303681147005903804533978074209444743272040661204230952739479080276232242425822497211374660599231060927682587631641823​264182531516769564708547964227556019790314645809486636397006350681062207821833061363422918557930475450217843771478311137536129473939589569602189188271​494899711734371949049183210863652476315134652682017039775988852218313325100705020962486711196733680285848515335128704885086901906479294601513188290567​083259099115652254684246295033868337815041329637136347443983382018717841043303706258351715382448284567041423262145753228860193066590518552364791343440​538726493843087276140421731045103901672842999052827963328270510039972130894989973499606910415542775620791888844491680017543474297485383515970190082484​731728383983998918216554754299475343654310657998809611230337369519198997551058563451438581504950850881843618550129287599015871112946212038259176264621​092471751340987514137159862146229576125753341627698114444597978748547535056394884266336605291330512972190592667075818265041805998183504698455591730451​740927640842158108261993657214170510264227003256562517718918527584983352995520107466861349868978222802201005225186835221256629920286653107033558520071​129271045016968062051169174615276829927056346227520706889475015343804675462526356936743503510269944802706299940087940906425360801853771859173207930705​056486643428907209442860172992706430526669071975005579271781946912842887200442959522767420348288717418707993257653118842125641944219181820983000265339​142051578680572660548560207282253932027021382336247995641837739188888180152814761621911636028964032879771910141345058818608225380555527619877125330842​100151661393760624809182726006639400477943145283424576488785149047618993194004214816350112937162081370779685736220709475871163740446486551140605478917​262051466901174116788634461718118256151187250476136543491581142622363922317471952247656579810800238989955544445093903650796726371873289051577368339801​057670200366151821845861170557449434557797177914723822915913393557919388209576465751561987267010953337842432670012383992951409556579527708775109839842​866120972549081248732636593552512324559214614005618945506324384267116221454496995947364651315943637517166225694006190831034731863798815345203619580311​534283897620160653049526733296027243960283944482755496728926074051613929484340151682226215994213012630944588070405597928795485374944165169794716373409​888656984310072528041971473230779413059245566947507047004774769405935986157989080247785255989044375228976534284471459533851423166415738282345581237981​672115842181656082852191134297311012428381786081842260090614650383726746122716664412865530447477445346127240761541045694558480129721192053250868889686​118362146412066700732668417070003209021922312030913883244268600488709445699121184532323075664791796122513138280589304961098939548192463125549320663822​485356988847710955882084481665825308898746658941232196053608037122146232523299285616868460457126888432268131118722672111356045547568225227303909742262​352376377668562656783589146810572815158175421771323462423919572504182194719594246145349112703736365725334517253691963209956808852490823219134964670097​705615201383958765236461219244137397736605049045012274072093760608461935459291226967803142881974727065435688188703445185400670967515146483553187005871​434122563789830233249695617006138782111545487514611932199392092480824643853854799865534204295887408238105014598304398044923069043298582969428152962797​521188600536453489954991540715602754588127431016146325922329205153174718578831603128423691340936994072050282271629760942650511611055204447809867620257​435364988942310521397590903733031977712013706242138712279440363486878603927129944957249582224265211613418097546797525325825506365794052430494573203611​301940995756136927899153491188932627915924708315129688935245376014604000500835924847812070886646399925909433391692887384357414993601463393743513055188​776911886328936013979989370232516396566118933940505656468855559051694500502484609913827457942335121583649747281564973485926650902513098957587112426764​003521019160964207735717329450535222798315077783362045424903672901043515551504460590316284181291395663228950399780237868820843523033471782540952464101​973448581836026710748615104355348666694633481890161850142262386099837039080157487247875927818797200219178031664213315468784911792752827219440266004875​092005559992540453319650010898163496777158332080813582979588440746705965491736348356752637631357726796704375250070708196934580464902405772343619447615​447150843445670988029376055261829732513847613808464727563411902064325211873119468953210987428533053716652862990891213422734372249887580170483363044383​611452634291328510139784113893900514193429637804924740867280927285685548795937975895946605140959536504037649726745149424828166550407507152529770736882​882719048506718225591311935919635537328914060565288337797384216688538897506319152846318833595042327268071972560023843775305675855577934545217573111667​674036121246470069834603806694974681030011155489914024746344480415796445437028775847629298067657697152913710366246662943983116436060587679712616617452​384747657933593365907031240419076502601745476027969690844263092126059096016265806769232331399390101909169999495986915471764023031437734725534438915621​902630414893190043160523091927198114650842560306279580153452949722040132825376732695036825570879153987758726914994064980395059539917411719258465289752​042896859562793934418224830707306619122774813388980319681645485134047814674356339109832534207242107025792250153435830038119577841585252976339755550177​407837542869582602563839170484192930163758374395675653158310136056024890032971379911577061573170245138197702413301630271594229575854987790503317365373​397513127104548563993926930712931382928449281136843481994232420723191860980449358611991495063582083117561661348642607340781511793799883073891023189588​122822100285962392092774456658550979621022525760552341944013760747080731250649788687068940121558298281064790318637123499306100999580562649699474115422​845408022957013985226272173638288908281747850386428018409795389832104356428097821465626467006146419736862100451218885167675321066353438483659701357817​734303700474872533949435850942835398559485374794332416737000231538450767791421915298027179547294981382446385309698018143018363186728402944000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

Tardo unos 3 ó 4 segundos en realizarlo =P

Me sorprenden todos esos 0 al final, dudo que sea correcto el resultado..

[Imagen: v34BEFt.gif]
15-09-2010 22:18
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
No_Cigar Sin conexión
Secretario General
Sin estado :(
*******

Ing. Química
Facultad Regional Buenos Aires

Mensajes: 751
Agradecimientos dados: 3
Agradecimientos: 9 en 6 posts
Registro en: Feb 2010
Mensaje: #29
RE: 20000 factorial
(15-09-2010 22:18)gonnza escribió:  Acabo de probar en Haskell, con el Winhugs, escribiendo el siguiente codigo


factorial 0 = 1
factorial n = n * factorial (n-1)



y probe evaluando. Estos son los resultados:

Cita:Main> factorial 20000
ERROR - C stack overflow

Cita:Main> factorial 18000
ERROR - C stack overflow

Cita:Main> factorial 15000
ERROR - C stack overflow

Cita:Main> factorial 14400
ERROR - C stack overflow

Cita:Main> factorial 14377
ERROR - C stack overflow

Cita:Main> factorial 14376
RESPUESTA
Spoiler: Mostrar
184182836637714302109914716673563264303588190103009212461025109052932725752274494946062579024984230543564311688682947061523756959834656106593709815801​380213255932057222392917692695896638871860742606823802764950039395258019771140106536677028605054002325659727285663572329668808856951255119149420832112​379527462393630663286632026543823153201974959449409231175543162922268832777058592975986982308623226665085188331003930750961932785110765759997385636003​136720268484374932766937779059675399318422800412165011363578437035049410572851559297251957807987337323140879977271756040705767322635798982940442474492​859052914366568770999488140938199251956931215610307822883050185156080063040619085944115042987764941948050619997206877685448570954800728399270891025158​053291457482645582728532469201682422744401935873625018774369692451170125925690991119252544587499611719031161892527339038274737986366156653329376145876​987616056968970435829753801311092486572670932043323239332411893953362721570087996573737952918060585160490381830013046779247215529563420503671187105173​244527396277270135147953369437506596198790173971656251122053830023269959996344860500803200803755763557157048032960936569925122464523049102358457076856​636275733810444509159858025702705694411164872235223621115129912554773855702415862899079680069719253690665199997364819252189244441666775868482317002377​925625902917973878520357537397288161551526473693026256589643316373052903928608700152031852474952606765731386312749242945714668878432613313580593810562​692550169837180023209125494522599890080641855951391029880646345535027190165392049936682761076620390606544321647340058740762557077295512034899605598429​349723488881557566916061046206085379776995094058689772846625320528766602126333538998479828039598006588703955813774588646761311332834845570950498444936​401318860055744475146644515500427441029072651150231935108835875374972132501933538863480638591844821207884560805853362182021721968964821730874596882644​561430541038977563269066854499113006736434546288065541394506075088007175390751226423167364199390893217864143137022077605701757680078498934184286731341​455434304296791313518993992655215767173739143428284638613429828669821873524454113961076542063846212864160254272231108576276703421198684305981334654741​417852308519470642766052073097629865645083360961962341337666995874067168871867710787923875059252873507740947083877868354910890858340125708935946137623​512332533125289302023650469820203865426864851726031897010063524389485615597775312733452603026850698080778297110651348539795182917572402365747900031641​188748665333831006804655699607806216153599355717232243213665178456027994346523208031944907086837039013687473750644152378311777848542910944801894446383​081222516510203172129142028416022911369954901860783548286072311303591825628856309016695110167684751623605169536720113572781973114472108734256753460180​797320535714166304786080110774861258314513965526205374399446523312167161490559118100267675320272204437671431165171944715909910572113656858882249137805​854751967460037503326150777742217196628928857616253223393085154003202151922281437570340546437620997660127327519118922709663102924737363980103310128750​127433714583411858792685329620366949750423109940399212457234049442330093677360060996320509183691931279558273854173822113241156823001404727493059414472​994345106802941843564029268647247569391700846079667036161779892635586702853554897850133220696562619671893949095760752104444670158928227833932271781152​462110473924219413268898956395117329989680135687121397170030944775785104273978206639536459095914968958243469733554829830485932268147389530446821675922​858237990391065723800704101493062833971407653946573575352229869970425039516913446377327253777912906377698056664617376188508297992734872574997935639918​270185558178593281386857787340870917194631554414777340444549984521072850355502253781667635877400559967452028915632950067924653488964371750665881457258​735907516607732202563016363659640098304516523738955793547705297211964848400851435820705196878130465887039776171779830429359415922390478897736672449747​127345679562043894138383073082826924696348890977131476709162566278032267368622679827421047939221941478259185130903889786146421792808371152514599557444​659073761477496166482961332562915222686955488119304720340974004982628176047598379179286223397225094924728775051351903914586558488334300120560546653286​857729437425058150055554168146339698489025529735281225382874982023124863252159399038747271694674368113909627541593661058391808919256696843275568171029​022957587036012915070704166959273866654836936616993929392175752398507568322947233580834653912843304309391382758604209283845690986128399330384339153151​347012937315324789992242443345139542328031908697751351601251281165190157907569361911513113126436263955379330654588185694682464366426188066300331767547​744567527476514838574209618976144971508284342016049415584596527056080016000098906700728247660088193631429751002959202700259419067730362898469362200733​465922620655546448814412658905557738926597457647559002645848846591646274938330824334922417324083834861054686767929609941282501376204610912370775850862​225509716689933437747059734607422584176015524128817938207574652815058548613706119208425905719126301279790627159558752408045627672395821257857102040507​118857767279652108555070396952252675361726561994386810498504655769066229021158345804864784755783380972995119926209407727394072522707896586664994092244​163002938624806491342569737810955136311056020129963200729438142009600898195822057527320181680103245892952554916158835480321983445778259711881985246416​655018811932364444028093039349793750269999291860095027687263569781026711816594114871038304220763420678547225025015283010213188366676513884175851628615​336970026272160938845573386659482436617148949298166133739931751908537628071827135828230347595769313485466373219814741198173908257340867750576447518748​170830877901427105038991641697537915066200635780184284128739787044899516634802889214949185902946235920341263492441411166469226718169788880704766842897​327497287655334987482708141855405789646754426928501928255655345709689910704162095643116368191313007990250961572450043169710098729810553121252648205761​473784755966267745023478970902869988013224784049374705859390285923906867155300284641213793086193696594946032876865942094769289940520764543712980511396​102071270976986980854685514346252509853784631863848208597792681749354645035839856474056873640812568622381291633397985816230386328373417370222749165468​254380681493754235015738514175453255467701656211636511883350685109036839345849724676045476516454203869808618969647300194821264907376966512447905206000​303634604183509109831315479953094733218475282897838130413045303989630511197758069562480847955843412234810758572667932090757819556199293426776891810950​575008443256214963795489217153731239461022072029639777155217192071316046378605353353403812481470284471956010221252395388396127116944443644635015586899​329890683425821947069448183435740968154299709350033635469700908951784333989756639855441442088382916311911643010606309318552285957859750586575075075497​941725418608471280541152025676344402196329025965221855135101192015021045615729783684058731097822441193717705018029126894446898412892489157848824809122​247007832299230951408375248384747656293648623324843773568030547013080429905896646967185223771067700853512876584477605659638163728864259946188134874561​837022225476653526587209452316600986716937653895761326345620642269623587040923230588653757721754716574222727895339856263250635445087862703164308120896​464433249566986606165340406020739080567648439980911848213275848114376709625807432182132576441332142261878357469167082882997160996068747568356108443005​207693612115929736335960494947694859927469161115134570895192696303295244470481542543339395173654181591783268024838077912045406264059768668414639429215​867576866286095500551866954295476473426781486021495635608653554111238842249032156890087959967089842887420579056514792163539717979843275004524064224538​087270425040107816117186032912135102471096595010734691160608601332168769681718344798130959544282861825448018110504796945351437860213666852516359432438​120929665247006947989297838343708951444308078546336758756222448105876632700699853811518455463393516022444395795435929035862611415466545455362801999752​364321319709122498201397821835931517689995167008640796697243719523483399414056347582059962989306281611326118426497308806946033030564149340040352968142​814946650662512296691062213964694246687356879350067555197899835382521950764133481664450167985365447067961439841936293764419200680867575660352253323835​004026969689446119056028298982208593067756727783429749650940745292410212250197871361840924969683526612261229811924544648002997336027954240238078390692​220474306226646933123612767481290628276729223865406975443642525358302019522591438320763614101657812706224126398789321463394635610617439804621427286688​391490949039837852264665940857832438640972705312109704634142087665703254358590322414229525229314328721002122951461838562523288696922637422570888444908​933141387645754353268288492075911787845145083662875412233800762325966138990717051871024133414330490209306473453187080357469319904573964387473318253019​497427039921300389124978701157513565930694617003737512184913375444716995175862290716036096496188193471156962723275353504245607099343581121218353437374​687867804216674474707191394162911512057843356682762572216915152902870434970650864717465727542733273594732974825607198480041979581831635246757475060692​360884555607755935721219622507114239663863595818991312434945651836434598929755624089320695272844889538265469726946618557735073211133408038750125982272​716905360544064036763075089411893043801605711720448899344367262969418095591504775362594827604102533421973827407221861803837568110247248141745681948113​610240718098308232200722397161818704904362806759384555489538112380741679944558575502552317087571094771002385592995101484720738048009672720696556567231​734690243617806812947701118286236732299652583506163662863047733048078061815602497772703528183951813588791837615290565363716320469088329473711510196615​110369831039420089200235593492889110882981940284414268174727932678084522588507909587665006331350701456876063150463113032660152424757771721348932277346​233306657486846177705263854371083603995812857306865159550624056153001030511350820043683806598411861117086347223969349966728649393175545112529090257879​343824864510334753084709095941570828753598474899514575246545880932629833585260429390273545703383127248304118928320220264280892179123452891079135400172​571662925416858419901690899332148015218702872571516470164985731806800420548577948943160559894312385320275294309319037965521409163783368371773565012527​475362698766600871007677517157311011531637924382498386624183217997995651539714938671049943753844009679304829804956917657654354348205985456495271128969​258380414366777297345728356811734469369788800177884787821907450849367191395107887129829135896629685686183535544731491896041852298120429445006744199863​887819290290083756013590443489604701217031400488225974808073739482752638419124744176288178817859123919516621565047304737457141746307377808292805507134​613936123061636755731717033155181491045459830870313434467935607275271882889082908422884085248041108822407813805451478014773714653727186874613333087112​733068950074660283783006892379756799814825523514037841656289202773464077497958577231888488298114399431962981259681815736586992732122782582276849002611​416990513149423558449417276539851153080343140647954174736184276757644764367599348845619616711464592601242224660629417440177076521715822683847633572448​811399979993094499513994543024991010733786903210227386899432840093269653858401394317584445010110340510601228082256253022565446787385997878665203881930​738179658474983734048955800480215778906113108867368298699562483790574749812597761569971244004789451416487793830707892604337314852643333280429229944930​092800443226941756029409845635701664597037118577169452216947941206410968123672124861338864807539119034860088737049114859584046742564813694012128972712​589185074563702838981854332595397464626797252877850616530672061074582824660821893497827251123868354562291645308603461554813920648530283247335483966148​113124348100509426048153143624950133974378849066062752583323818916934857869228566143344884652877389757455341881748759319469187374734759921044865098855​057290882357270164908251360789233473538159400676577528281547197501461017840388662704220808187372881326225121387431554663420458863161621016731646862681​944217800148887418295229741128524827366758010018847237375310149839848085031203737855244398242050449185761159837273625211571392380080546669329491424168​554667532349520221253638420402673773096621646393427116703535542774528828001792806925278368908394220001395914999019493748350151281488515905058404207056​441135726771382214732128836835549660689945767528323496965479683579800414740802067693890115959391483326829407286625705925481888558423552662260908027999​641282538461574899831794687217972858744157065160202797029100206197875063035198782019480445137688338459439275911045059531086200526858671641754227795083​237037813797105351081561415634896868253251106058872231066464377873900044780009567426844456025157655048410366077734942101612633834368155771810071777147​592055269151094003382484696783588898659696915872770246736722817993820971717076679419391544314242638448658660225016057454912182451751005382816264191357​764486797570890878034370380664588857628629483237743466282689992087397653512646587441925301022086109952796580427660018667407729892040424239881668106414​369837233109207133105328177226748210461371344633795618373451395333011839779816571571408852009782647272927432907502607275885910050246543882493226833485​155080499619317743620101784020694653423992890092542022686284427812732767097097624255566345421481499103785493191373744934129027488724953530953523389577​000634233494111190184057062204780772897242742841971607864573806134196587678622789572653643504046961184672483889798528474206972723281749824613308678428​273080237211420150501743046945156858586102063104652864351626720320807442566789311482316223309057733164550677891482337547276451308114220429974975180175​832039764972884811598252178174852471772515327020448093428543046601151824357245865878889651543388104082302941032994677845668411686356128656932821812500​222437139502822406716071218490009648730985908824313462118066584935445266428593721220763490874643579280871409985091024972089992406005590819668638928302​314561846429911401078535192828007102197713946754771543123290585838695857944415352299694192103190828141390169169188833830749580912937072628169409095415​645688598511017418893210648859958856086235474270427689629043622781055616961650743481854150949072741217372695870817512787430290238958378092680712773619​162906044032219739792180618493860315230814299069896474950257355996686607436305693452949189761985613244722624940548080404370903359310955643914409393078​476205828053702349571272561572231109930612607825478793885561894318017258705219757847421410435147060721244284739777158418293801654744722037885395468891​284852033274143078065880791130168545359924528938342042887515545874567409223059551442820240944940436237943086599030076123813193029203802877855875526234​803423487956077101750509346662395482834241266800663415629824452353159075095416467751102520095203856348305069737341504512322578867538437088626596789592​008838711827614210993190382632732048861155303195914852743986422361370603681928037328169330118662099615689953078353924725451637822917638375624942422365​866385776184155517766106563924244384455503564813645052293310721902291810743448114345170805927099919350574368658838186072699377214411079566521904555452​207177192897338658313674842815022216725739161409829988671093599646920581014508380413500686022986669196767145625008959860784862905334910557005191213778​394355931142835472319692380607189484604193111752216307253446548735240669228408131214371397919637021620131308378616947785168405431778556503073794732477​149499532892752863294946047715687550283355791167443911473654209365568579364179734525435898601893516088528397712183873996933664375259268758855691966487​850039812269440882286123384705780927239519331928267776155958509339572518180011825836084278307308027123288980012645704370688431629500070271087661910686​348896490208809696740786131975746560936660904466183917723601700845458593317473768806301823910285184891507457195070644449883742081471096316054441238494​573123089907537120734987140508850308439371691276287890529006958704549083554503412304801874700581326712558284237936131510979069279799216583875066663929​434737702522548094086149299755468763977923668610631630727233700301519464090490403783695013111902328320573314956749139065470638952659362353286688527194​932157330448205881660054453179844146712103005814067438404319531395893156064925536672278243464754268595832528157350222500801369683988436028755153723304​075017159988255519676509534964221105848261134414380018842881055087915497620634131395114080984938631845185710029549999222833631316961938486287858164262​572553395355004282231354953134397024079937329562306726257837865647402366759292423835629810731658019193549147645329004865130655303842250517537309188587​094419704035633984785195326960554205512546906711534399233259494161570518236596750653593276425741205178535186238102931014221398195061767674246779206725​555263511930708861708941230309899562762161423636795287764515508326091839963261120922866645384185913698199292924730783971226605365542144411119584051588​555601034932401921546964742946469572420022234746651981537555638716988046007800881378520180169310423871367225882750345228218802237423545733752006306298​264429310218858051491558860873370409854883265650133268217608693934787799339661959071686035378690131119011512444732713577540145345658936465049146799991​052617152745932105501231145418376608731294009241237206556174504738563814215873509470034906376615007027544954851667457959893298906123590681344059457861​884202497871285070722653655425786500570710913588624469825249503632664262699331815821878878133078757182403256143799278376673170621592400786229772758827​597180609187787349575407173926394620465804173789893761986842600781292853282840189485625436042761190470510303244689271250659042945000645183496378790666​243080905269043142880949685989049527193359937229537355787472777705150860141388670700088958147783016790787015969468955894280225139064526606679397021528​018508404884777808488301450238753836799981426177000834625227627830153040519166993328472754594656011303979932520545765550587095693083000807643416200328​847824482393575691673562175416785043112889495566227313004743617220459871992594175903974013518085817275449784389103089406564082796998493671302942793657​289246862439825296493168805571913960146071135458374789106797411883785398918836481959877676884060976896826512117793864614733689782305443330128390374673​074002639257133918124954140035112040072394743095430133150515305033685976431065241368120822486524762299588192749023960531923930328032632591657604543470​962295501434445128405528015930734095633225734637261565729270371005631713880780447912125707771856286684742231868450397927682713681029839864902565811899​232799091811487112761799122433602771432541360915235103086079026282827400651947498826679280473105948308439519770962472399760123486146077739499356702542​614838563982657826208409685209523665242525786131392983679777388948977336290416644270345902856261128507466320195619233109390022410857510562146069308727​569703410449420642405242604616814588098467415503460132336959849321623878059425276469287931380116894854862166630821845757343977012143678207053963669503​213220022838572986043642280771560732611818742597478747381501534740064619966291400860654288759342392455873079677521145268187029777708241362099819842989​185354044027778881269781475240812091020302187422754144438415736045780687854429407661427207527257139752863915422440607465140999200482425492945430027752​696367772621651776068015537341112552851530386586025616138573267164563898691969695784003649354583709602772592280639637899705448307283122397590503913014​587564811708479877613434637769169819200041896099103185032325751107714170652279931457727203956038681768116533533722836730444500877747882861786198111321​430552810527444515487353880387996054877977979919941530273508968798921945654714293731164465452103664764953468913946743609790903034827909642766792055957​295148674062991684101721465520160218019970144483284206392349615739692783694677354029875961423601435696659007915145172027953566360388495178724740140460​473094176350984604147470398729536301159366549368889931945018576551872725591932848115674000232718295724136531147366872633021063584596125668699750440768​150029158241366530373486279196630350497668730741006855493420369757769523227935667840422685124991590725684163042727237154859051697913408932350442036787​014360506236376648347352572869708584562115215169045015182371660171997628095549692757390200717651518616969258848204234037481085221649350229503057334842​920107295808554940001122560751347164169999927347564495646627167379718225632720203469817140689077196182141359918499390513904382764400139842312277433109​479367515536381523640552821410189732733188442110190026961382486421757465692058304125942084735416344428436650062094844052168866778875864963057082428584​646422319860483633401680633334299430693612650647457874619742239355536796198979754530855111410866701837622562480912242152907753537627023073806338218518​750527328536342861863745836362985555586878920778741603343203793811948792952103440223070002263437645879051805404123325224904707110206684059375578911503​978302459177653209753057518207709910438675033263528458667510566708729716311150820151640449775366847092849093144521070641814166708490330357092411179323​428910682539685048345499146279853658828394077447028180101364391367746368466944924271605646121067315310518758333526879145735140462490040909586357915321​760365299552552817051792859245753687052800709960162325744129736614308715583946750066700186928982318727362504440520951987918618599554364297961817092619​473667354145411941976596445400256142803984261046163888378914810166102535289488907297442512089248170612349851750181429943449918796178718766717408204606​487648936811399742850861426260377418461128351951048793828844213763893082436494601648160271839446764701615716123367119663494526418916483760659506175019​652147790926636965247694309717090062168510559105951101111399718814414167074022149608834711358454167091158902439784812865310379986786901369626529634594​072785596028918633210219683458560405104216058587216999129621541982010533861164668688117300826672096077244163714359462072350270022957507276254729323890​231498211681491727509340555130692387301655081837494324043588333845864291964641986852115963958146421146906220679530836568199157828038373864111248844399​134851138359668972186728071898564662248760403826528439368232010484487658995220692265984229271667332223715398506272576272994882758473583587539842042389​958625148934897692475589057360910972111002563984439888406352395545109415230061887651983330794850882328837007147048130013862771204437592994379882910585​981885638453359967569191708194389367817938647329861784269984990389176897757958120756502304859294023756366204363017589222203058527738333085509668224479​653474356279912654884411584473435609965804965214812541091206200414073961570057528510944457973993810658369782588473610116879371722526153743482533796432​250281575915762739371246162014609802941227752680473228433630376441323267386405418679313154444024464282533474892503629342414130608656935901586943716485​167940182026336201301930362539499814509206867183027697899117010038867507716171001146607840397438738458143398964009640211693068132282511138986020995654​007443605056186036384943603587010883803816150182585822691961513019261488543306755582345583385183092276073521094807642361030691342433858535600671845039​022519548725596785460390898047387337250568216861362395049026992122472134555444890735942143113808804104595433207295433969034061822902714015873585588100​818348134320803391741323432958347479801196304867854189649826635774134690107149516865155131481113634849599583440680411254298478341261803666317388023744​972235612020202396348282753321212069221776578648152657188369556593873419013698451629688144646529502271686892103312032648901966216036803700352729667515​479935483511664265240931137678985495670950280875864663245031909225269302476731655510351575243472530050298822344258591216005042562224339282680068233651​513082895895204448826086087448481954005174001603659379444655034473619040218953848762220310434080953629697727997743778384057778983734964262074406018213​797163831796786208998676511342362095469932955222400968989239357736297438380845205933271147808537241308456088915453087840222975485043474962992412388888​705250803058835549008832285767698754905461354929140414173787001101622986063791845857317107295740400694051365001654787413220680820793281203203063535452​916002504354997770146258354172278746975527364126013860051751273516864118304571304681449636149109116795160639694613189327357771678847792968087414858323​750623727081297579726437459236145273967275243509085134486264444612573002500586725591058356628815389380723454676565859021094985139796515141242731838842​851420964149389142833331842490146359175496888812482428163988007405755486004975947420772318283339039266411556413762014956969176118692847285021441195332​922842454044171066128969893551544425807663976594287376898142673849928420906282388354561356924769370875439946589219658337779209700656489527192140549490​164801473314033687389350247008608059646243519996792679256107888224819135795907072377273889813343225062476932779473755218772810226614868747027950158282​590651394278303410596972795099330302927559364452962400044514668280814825809681571567122947628526663712504740915074176221105728438321640039546959369041​156704729454852291714254478554566722239382903201866612197875574034288648816763066997507504097106033676930422784352282784115321934128809144807348160953​683368097399964190949346180248883352614503764835942391954948210473290158670905341105281269879359511775811135564942399849465165533794756477498710888339​442632134333444892227825411633912983802004688306260274542206059789637977424644731464848630451429845656897680889332316510017017114709678237241390471096​526335807072595805529438800081130560697395608451690367380853012062255760476449083423301081867539441200050605908471533956377361016564806430728358756040​151956123405039299345877832303370790687299242447742909485031726745959822737084934008772842917754144190739451475030031899488564827377805374334231644851​677003750565223041917164707369768004843914867672602428215295467224425408590749098554871881540692854357646740549792130132621643325762895923047075722060​194463806978419424302662053799931221163547759338504226401304277838582666466258487308386777896997568242104478305239782158035864294848062691290901198219​856369477878204937412408263722068284393673922089765600252562787835831900277553384725669715833597945001180772479263785434867026086885478132794486377464​967081888938658207073032993407049822566840564221548883811617599531258602986063948515257210686968873882773936304259053382523162049297852622119895281151​887484639982704451113393433697545739610188666915857246567697730725490718964313859199797364415065435875352685030342467728418211095239775740474453729938​593511864798792877430080594597978782531563853641183044301565572921155998734847039032474544857216359873404197598452178240500700984738826751888113568236​282733103862416680078573991869638954527907524503229234086330270766516651959923660089135362095415322572323926430643853133254038603346816071409987833947​003347939236265192071275311021122828448363842541447172790999017477771745426404843453476380294758663753236461794845298668134710565125135865398595101487​418493016761009161553633764111673472947394715198766265900028337134693259992142622166221315509207423135808157444194679956019306491009150258259905962316​197598606040940110785975958670717584427642186748341315007348398329626537397494658560659819005953243787130951643689607485846122661176978028800201506480​880330644403442739447783299026046530160098314187132528644869619005936133256023019228318694230039332784940256905419571294008608831206167409473588295162​714278477349759048412012375641684782438480643740807443373697887371781332460338052391883422834640814283251503418886727001405124646098133062896139621812​950075022216360882240360090230949358458399035375583855738335247528746586663561744358822957537955947089875170470488856481353239901753214833756949684456​529810159517638573294913345324086285592212643499733849730620176653491495473110660017619707206410209725495770012711726182114963363503567847577211092639​927126617042335218162250371504261833536705204120953595436417983216078867801577953905476359669195327043095445558168197875165609715049568044183669025691​615357594016222110456382506626260656285944782873840485275607542855878302543479383607617392431076448338117152152117916787812516378602940787035869974532​090892198969367896126782527631778283185264459680730529834950904137226224220167868901845884709013300503208860398103898532304706034061880637015905624766​188745813913331906105825062097365186667770136551487255210951448026588120247041128472714555715995411818783898932621396593164111763592046948415543914478​476783424556385656061737543068087535656249775872998162457351786724844938916971233280221954587968757901242544166803426358961965189536857193001354634280​160196622952322227706600249888252083611174936025842201998276805221666566361886251322667963921688645783954329153702367723275897230892115387372919650367​141046855342672091801982998428795634851379373560640462431514661106345917904895463784408875119703455842279165635906775776730572031814727789368411669363​800149618021794996309754844057996213430068069575261401948924771594674919401412350518954074610373154248491381658582426890879664525771269055649921458666​525999134116263230630440553649733931231484622742145449487316752437198543212828740427055248410045180019729349124520568175698182493721280807100248997875​879317976503094343568998317548877632345646045122132904840769375893550065412358001555784609742673571991453481995008753645433402666613592968441566420629​787948764668886205338053964660012128696326334939879698964598053826088754764793342361031710754384861105313122622892830950690841904593842049596330771216​709964162587444774635283668827645172465578900034227731848711312378445698160641319456967205164657955086548367672143204686992642875937579917078735246030​877556218890833414194168381501919550600250718482104536077069307548791755435299008660766198702766834858272831610549001079307338800340478549145945309918​297141971753567377085408820268684018786188343850777900428075534593195368772132077496330566131768941038309887301171837053881781939232473221245998761293​691747966491967950691914238295847677316376100849986506595584700119297109952675560669871773630530354362938812069253903755479613517048736871456854936079​179655411909279964223943492191266057074669690590704251805440687688049800706725574583927905268859696761438819026741848585981479369257027429309699419795​629852918802168232385608697143616128080921291754760901626331969463644227703750434371235025974097621056689252325592606402146805428102163679721002390091​452136526489243460513567162994025437440447260788386246357193386402376279179783833927441157690140968458950877689780320891152708041687425061440811266260​018446975397810701107866927337896987159491885932379097221928724237062447371525860746140515454809015376876835846832412683910755727296635288623269095662​476537330626638877972321055974393989087997377399279902615976271452842844554716383957324123619248214507535390230187842373231683086736427316211689363349​234542346929014367540993758809092117245603399519672512250957662606911876614882061176699500122792091120052667527054625048345013766808611451079605201826​263692297440865829554306563402961018332874980215953172687493375571541563113068553999736407727062234278689675582429027905389093202466324688930809028711​789391596658518028674418084898608837679048687406746416046549461006401788925499769942748697251545209777076350235002726441586701447507937315774963190878​188117910436545345566691727030394590746150524738803956343872733273517742330571537790073512155497452776861693019833540640157525856738677267218742986822​449949013580642908615725405601756812730774459329552174361053024266093360905063901103606059676122773576311958180201134420225885575415791529807035325160​325594819265607809639783314232733090135612421853579135378346377182490773667905149067295460912520285085221104607652760443080643047392797800660681009885​870880785009672546311451435688683956858839303522113331346838573712632173524124374503577500904350485936395937601256982062668569296615222446822102855271​401321016053677370711284908443044765072605890956678960503154841924816919558738625049867878552887372425161769248067507394388211894786108819624249898945​391993823150722757129205719194789696172446092291657945907149707743482499114738858142219742131730450639777327708862337473256851600671139359060958709047​984136466550517997397039812462841252908273374420842360663832109833578763717936341423450254422773299840961009808132042819591884752252261286816896587298​698780511739602586896088742014584401809013026572439386400619211541952262006472009064515081397460994051324393875727789427258355964914617163095868783279​863765039751433613937623978634336537870805116673418648100339901155035496877667470846398508322488233007268536678256212214398043466536833003182277689342​515570585188176962014268510987771007943512836116498548505657012313531662868632093894693094832517462888985367100415339742424793145435583979843457455528​208229503960281871470181660035050919673954265908403029437271820875963077458389872613892356149671006715125544082551908739847357299569374439508445899334​685506919613007881418787100461743106474130176491057788683867592321951406305062372121486814961058433615046940189382610018452676131464815153688864948202​394402501922507866229633134674425662224285953383636960974445615695928287306013540209207636665071122235917070201520669824279566771566235696016801157737​968917110794926338933264026511843131841394549391111866620031933937508931456944655210533835644248633251571902073155000495516169041607356886693184848980​222977058644179979505186435088794307668647462795030010067769745396558123989368027842661565276142143954855961885697912095875876529006047807035843567063​146523176963670607899684868127135063066709863677083805135509293295815405872596678802435822164437566554567586401858901082958813496759639992237169950161​921351244074917335521097517684994059164020412603465658527078559053553342812114763970633599754055850938728216802610965715546452659422581979230959936711​220041921901083502025836109720135348108426439068573713110922823312128934652717389091110671797283698851514764452490878526985798996154414443798952977956​739209426063516612152409768162740735338622865415198232776797664290947234530303076583847692199108055479197952861767657190334062941604822482503986967568​211758831619487966797525317038866758986214624751676858941960846771348871236682411496101981497142717021861093559254537919194562907750190502492016545464​164247850272015255106534742082805020830169808255575668143413199947821909984114000750986425902776861022249752846440042804078811076170581804464658813205​994924731642429918692720393721952617701903451603677915776457907032401921450907640458108176449359640584373950609918217686067943416059350474114885813156​059461155276401665797629189285670994151486564276295315556644237728512665252864131371683406918533785117171916756647155952818988945532823191302054205223​458441908795612145391435479478769251494586639991851048863232624797530158941306992155579860577926829105351118866451608355752998056297192182228322689020​535798887634109650875436331555461448198314550807867191745549715767413704598709574649811741868985912234216940180068414493585103530072097598569084596589​993620413198527493350167505560341048742520163580067190893674927220811141976783941097417130940267012264694492074963763340397640176530111460650967731402​725182595475657955199171880200392500756710678916052855684320937223893623606592996215620584372349108585360033166449076770923810239632906942584717452473​575562143584653865367936449904761210643615041832462561489335199322027556629706382779121546221310990545180332468052418687770768460374949527602746611956​419863827727630233309369604619128224039168255045756259734799964426903996942431189761396829231075372542197307803078898509413713519966246048583218419688​664558745959345904008773924331329546825283731317107178284212046563793827877918155607831556900093026279986527809091121182935227153900703569633724204295​673204072057907213484567951817390562923683998416470915756446755126484284847555656503840211992631463159101378483317709034639786768191297076765794678988​150211897478508740877544439625977321363755064301790015911367158770426944265543204253300283374387671850869453740857315929313479857147449933656362831537​119845950441345702709960067474325191007030289691447070365948756434325836208278644228769120006280577099428287062415194328712706163386220125276218513106​718655981133821957980961879269997973047882373214884607985201707491674764941002831473381943442877294048516060069005505569435755315451986247918388226961​139155486582111328855058879912924591310130809001248293786241398321304127764419329545592346898907426400117663898727467155134603252680242104090495563875​455600967715895861515566064320294447335046414677137340002788864129044008411653809549743838920611357308914800343279490497803587023462452335498423986661​170488491776423308554419169348903460780394129259660065961050105356082544070146036029907144503552124018693488533888330190317823284422526881232498487101​715312248038121846983896880444625422051906899246715078453493064311055420275495442716804750549373320405088506012810205605924517390241680319881687371871​772447586310481209016577036861288362379316489191528454908953705060215621821876136524729068289642400275038105430258676978483617176539664997057597837005​171740463867186354169901495459342440500391845454278957373556339011314382073805494644995258439647807212958530126001880161098613868903156769959264554660​455937864333877411715873439563305129455906793738415484723656915951432063028408909274133557185772981286273841853820936761975338855890345185882920955998​039880173413782167846580229714510412807126982136729927116389407687067015047340303052267612644069390343210334837154698870779870396825715307674904312308​368443573998752917385762938142312427961091296094131835053699489991945207829825710017264369659296247018446806007244720449583108382117350410779223809480​683043983973047484890707707556184026104507919056871973404571921382998547120886371983792894103147340323623235206963481399598343474955932925421604808687​788175135745881410010731532001485714544493791948908383802568986871640884382164904887013555673397325689737540103168435222791107234660689708427426824764​007495841752901519253438954147085367619935820817377045726514654819630350116178014575070690919288240096651805865198287705808080445272890720775915903369​993327335299800989017078833254420289554360378487779335626953784269174635223240382236974245746798785277056491202527587156477607678717252121128180697260​456219831463695611219955636791069295527958154805657972395122172826472492542340325400547000493620022527769284578300866944936305123075560493782254710802​243510493467188597101567750287844511402954649979188607148517007037810850606308221418347901120364344638083230499777103150017712449635335175665423710746​913022856241485041625132191425335020194594795608000716640773349524300018197742130522626020317382260608777759844106625615268586453561672924343490418916​388170030293071553127322961211696625610471639222423726865104222638650723900861368767502537037556895759992481739540699722861795191675956355407455806267​466935006247566374114087610366690456520073720041993501754953639843498346764366993376285201952596526239978274010692221491701111210794319684159188487171​032802444205215169132983643882154251690664780963386646434299938072566329442877635549165374183047644058297531230374559861914120485350742678708488849950​300462959976944154134262971465516623313364747155851421887702797044513192739432840219059608047563938028315619568182775098993563711058358917555905954666​256750631966642379084423327539105030327958670677466335382713260070621849020337507778533267809173206049306849160644658524881534917570339771067181511020​195478620868764303139922257008762208267925271296053698478470207309331717910510555292194865104132606104964132409288256138863929991074808796499832731951​004849392711468491465739835051934662903445283920003169588457834820194615192724456891608104462847394833014217720149176482230014385422356981799054262003​470801160829580780139377643628129790706097453830047801677435973050618712748989692339833443921718416185170239966454101527930438809394129303076929855947​126879218483894457836955080017682790410246217663895073557573973217817708082554147182854351297063635887353042492509497725698038631018293984799333505479​729077378918535815168158403088858345694156512716708849209476698530447059950743640286367394489989803619648674499811275988103602711120918808307389565671​927055276870433079552472790244465082095363775174479062899705638756632598361254258081033003681322338390180772148678018724894181877605721404638565306211​010904253844218574425173738510427513849457047092438021701084034741098787222352877118330182173012558892262944182295535192816398735620323785408382664815​046361105759591386388660335569455270067943097734691960344834311501040262690002527646778571427987581290979013822406284508535438288492634815673735846760​413650336868734197693621639609201344251701661658018112569710357081099068311155084720608142703415596981045840034416254484350172719264773201220056235791​553661573246952846949287683045475783854209289694761942855865971101009492511384213602463787716467393189110010518703543648764265100699097625642116399751​066425409597516668857019025199627709341566966616091159534965995274915884172722257791266128098262606592375655077537917708101609759477380361368303557319​986742463750127541575015444628701163851673520633360525310861446913388570183598937910794492758680812040909217114553073799219206712404644548025197174321​293117405705162176224549214771563375591234045811471460660379291489521193511206479282345701193502143804958770345981300530768095771908417548612730521617​749813808575959721281292274796355349311463270805016368108119001223888102898251191698309247003420118052983254135110302696459260656229761516742138146881​154304000148028911262949569782842741723614299613138765978211683770844643601218790245236192740474542077712687545248135404030645090901910764967654432595​924662529134493566597903120319465101500832078046605677986355114439591950839851690430606722598007862470106790421333038369795268246642831457621212730426​916366020536606367759169633294516254474836871259060207311909292187893695291119157142898829249006976228396504069984719960349237680970105829870329109271​416482322178295847542993837262049370596449118386910490111645638580449584775232828060474982849198147032339714795008939468816256517884997183452514289742​671172705027288683725319296896940333476134794205915053143486513439855151402705472969127535576117365894909009256211733602089660265717925685443350010480​777726809535685148089190325708037319505537424958776760774733902461383141130953966072933233833237988683898678786199205819594624787894836772676097494005​725512654478369773021866353917043149313154793093224742660923276287787074522598147113462613857233831495907727198846757879736612047612115436085983778268​467493278857516279662450863185425201450851402369729165041657133397814131064880168694505393206196180024496543926705039185569890182569370962212047165132​804286399185074647534201008238522270536914789469878465241046615433203615822669289183247446743207862287948765364137783225210836868442754829372679971547​371781620260529905304444863684452303681147005903804533978074209444743272040661204230952739479080276232242425822497211374660599231060927682587631641823​264182531516769564708547964227556019790314645809486636397006350681062207821833061363422918557930475450217843771478311137536129473939589569602189188271​494899711734371949049183210863652476315134652682017039775988852218313325100705020962486711196733680285848515335128704885086901906479294601513188290567​083259099115652254684246295033868337815041329637136347443983382018717841043303706258351715382448284567041423262145753228860193066590518552364791343440​538726493843087276140421731045103901672842999052827963328270510039972130894989973499606910415542775620791888844491680017543474297485383515970190082484​731728383983998918216554754299475343654310657998809611230337369519198997551058563451438581504950850881843618550129287599015871112946212038259176264621​092471751340987514137159862146229576125753341627698114444597978748547535056394884266336605291330512972190592667075818265041805998183504698455591730451​740927640842158108261993657214170510264227003256562517718918527584983352995520107466861349868978222802201005225186835221256629920286653107033558520071​129271045016968062051169174615276829927056346227520706889475015343804675462526356936743503510269944802706299940087940906425360801853771859173207930705​056486643428907209442860172992706430526669071975005579271781946912842887200442959522767420348288717418707993257653118842125641944219181820983000265339​142051578680572660548560207282253932027021382336247995641837739188888180152814761621911636028964032879771910141345058818608225380555527619877125330842​100151661393760624809182726006639400477943145283424576488785149047618993194004214816350112937162081370779685736220709475871163740446486551140605478917​262051466901174116788634461718118256151187250476136543491581142622363922317471952247656579810800238989955544445093903650796726371873289051577368339801​057670200366151821845861170557449434557797177914723822915913393557919388209576465751561987267010953337842432670012383992951409556579527708775109839842​866120972549081248732636593552512324559214614005618945506324384267116221454496995947364651315943637517166225694006190831034731863798815345203619580311​534283897620160653049526733296027243960283944482755496728926074051613929484340151682226215994213012630944588070405597928795485374944165169794716373409​888656984310072528041971473230779413059245566947507047004774769405935986157989080247785255989044375228976534284471459533851423166415738282345581237981​672115842181656082852191134297311012428381786081842260090614650383726746122716664412865530447477445346127240761541045694558480129721192053250868889686​118362146412066700732668417070003209021922312030913883244268600488709445699121184532323075664791796122513138280589304961098939548192463125549320663822​485356988847710955882084481665825308898746658941232196053608037122146232523299285616868460457126888432268131118722672111356045547568225227303909742262​352376377668562656783589146810572815158175421771323462423919572504182194719594246145349112703736365725334517253691963209956808852490823219134964670097​705615201383958765236461219244137397736605049045012274072093760608461935459291226967803142881974727065435688188703445185400670967515146483553187005871​434122563789830233249695617006138782111545487514611932199392092480824643853854799865534204295887408238105014598304398044923069043298582969428152962797​521188600536453489954991540715602754588127431016146325922329205153174718578831603128423691340936994072050282271629760942650511611055204447809867620257​435364988942310521397590903733031977712013706242138712279440363486878603927129944957249582224265211613418097546797525325825506365794052430494573203611​301940995756136927899153491188932627915924708315129688935245376014604000500835924847812070886646399925909433391692887384357414993601463393743513055188​776911886328936013979989370232516396566118933940505656468855559051694500502484609913827457942335121583649747281564973485926650902513098957587112426764​003521019160964207735717329450535222798315077783362045424903672901043515551504460590316284181291395663228950399780237868820843523033471782540952464101​973448581836026710748615104355348666694633481890161850142262386099837039080157487247875927818797200219178031664213315468784911792752827219440266004875​092005559992540453319650010898163496777158332080813582979588440746705965491736348356752637631357726796704375250070708196934580464902405772343619447615​447150843445670988029376055261829732513847613808464727563411902064325211873119468953210987428533053716652862990891213422734372249887580170483363044383​611452634291328510139784113893900514193429637804924740867280927285685548795937975895946605140959536504037649726745149424828166550407507152529770736882​882719048506718225591311935919635537328914060565288337797384216688538897506319152846318833595042327268071972560023843775305675855577934545217573111667​674036121246470069834603806694974681030011155489914024746344480415796445437028775847629298067657697152913710366246662943983116436060587679712616617452​384747657933593365907031240419076502601745476027969690844263092126059096016265806769232331399390101909169999495986915471764023031437734725534438915621​902630414893190043160523091927198114650842560306279580153452949722040132825376732695036825570879153987758726914994064980395059539917411719258465289752​042896859562793934418224830707306619122774813388980319681645485134047814674356339109832534207242107025792250153435830038119577841585252976339755550177​407837542869582602563839170484192930163758374395675653158310136056024890032971379911577061573170245138197702413301630271594229575854987790503317365373​397513127104548563993926930712931382928449281136843481994232420723191860980449358611991495063582083117561661348642607340781511793799883073891023189588​122822100285962392092774456658550979621022525760552341944013760747080731250649788687068940121558298281064790318637123499306100999580562649699474115422​845408022957013985226272173638288908281747850386428018409795389832104356428097821465626467006146419736862100451218885167675321066353438483659701357817​734303700474872533949435850942835398559485374794332416737000231538450767791421915298027179547294981382446385309698018143018363186728402944000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000​0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

Tardo unos 3 ó 4 segundos en realizarlo =P

Me sorprenden todos esos 0 al final, dudo que sea correcto el resultado..

no tendrían por que sorprenderte. de hecho yo esperaria que asi fuera.. en el producto que realiza no te olvides que son todos enteros y multiplica por 10 x20 x30 ... x100 todo eso te va a ir agregando ceros al final....
16-09-2010 10:05
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Vallo Sin conexión
Mejor Firma 2011
HAHAHAHAH

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 2.745
Agradecimientos dados: 154
Agradecimientos: 125 en 79 posts
Registro en: Sep 2009
Mensaje: #30
RE: 20000 factorial
claro, es lógico que haya muchos 0s al final
16-09-2010 11:40
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: