C/C++如何存储一个long long的long long次方的数
如题,我将会获得两个数字n和k,其中n和k都是long long范围之内的正数。我需要存储n的k次方(记为r)来进行进一步的运算。进一步的运算是:将r各个位上的数字加起来求和,如果结果不是个位数那就继续求和,直到结果是一个个位数。例如输入128,第一步求和的结果是1+2+8=11,不是个位数,那么就继续1+1=2,所以输出2。
这个进一步运算是很简单,但如何存储如此巨大的一个数字(long long的long long次方)实在是让我无法下手
希望大家来指点一下如何存储这样的数呢? C++大数运算
这么大的数据几乎瞬间就好了
#include <iostream>
#include <boost/multiprecision/cpp_int.hpp>
int main(void)
{
boost::multiprecision::cpp_int num("12345678909876543211234567890");
std::cout << boost::multiprecision::pow(num, 1024) << std::endl;
return 0;
}
51444266232246858987033586719369460844447148266529045510141318403109134267465144221761500112888299947136129079006018024748981403825275770510309927682488123617676645048465165988238312926975068151981218550250556043105445950819359048695342201966317803092183737154955941782491981565871888583336415530201982609634311954087576072802597006857504279418962988274679124527399429516630656688474014816463750104705217152683877418621181170124716835711353272777599248370769796700276520709003360278136005927007844127761740746323718419662827348138756776030989941787353786359699411146078566298795212859474184327028159933500779344618802689549123190422951435095920682476154988181836859238850844538836510451231304711499454270887752077371290584653345953726694787881476530803697217072223775428646454073927910502267432235094022068460743659364765836597697771395334502175223299684961757340843789103022712020240584360049723860484755124335088354041214703178866497773827933482057289364337193791221540047953195886028334933377509016428141696260784988987519285454757249843346151625583389281564662692118667749766141609308089590128787776833313783220215948056296241081908735529276118113435852678855049504029847566366306092661539416972477477207196494940151311152124449568396187635035911774229989154421689814667717639970058252488001252073040472915555115661777447884976253671569990192907213968548820608562784866287802860306753165035758147433825802394342418182547953160096854772371022074083154634507780812999467172153399711150665490598916737643259081944632892570225010438999452515045599038733089282179001646899984354010347527172567404025441868528383304866831631427865236673385549748642744121979896807565720254546667696704005800940684810530201690025339625083098615314667368702001440806573360438353558649330170540874087779373173011202650303463740590686981533934564100702273626616973069038830869524763526950279938982051783620847096342067929647679882688185846501424670922189381938137146639824065717631253609577510664543189249506304279437177080410196958971835650633005194570503562338463048324817571612126837578851558704103459337051660298401695675309365611803018477139019908607245546933327539422553106272962867081444122327657266637316674800384447980155168381512518168782080616646015628642271009735788171584102096195778241879913603531935341853714117768837822871554853012450114707100771455165230339143097199463226354322352985178331811410866478369762761647914236826504423979506279168385936597980687581839921723326038624199389952521986627893178291242041225115936644106618367752629321416994866827065182467274219206053475592956186025468670766023298686757382729796574590597526133865106920942400529761210168804402408127622461090597227987993117320295416042844598112701679103193330957143711739468182707329065614988902705783453110968798721265491387894931603609590033014631459214432593240292868394885303749562967207862253768716478551490541355712977061719888609439286509007048145155572974765466785973285835810187268373711159793908697398288641605566945027909422902190149506272634475136160521741589073657510893501522646545200937647494437114468457547979369412452618533623272761302939649600332010270487810096195868432486396733854918513824072204359917992858216456902785056526992068178666570481712994350135004900892536817540373222061032342213718029246409870242603843212154543636899728571287494987871112965175613083240444009775052863267913732947558082711905532806950621707387678893068401153542050978200719120199229704096036017698413176465596290868213261084860423766851420665736151354205008998385682068934112688435231438106412412076817538684553468089334970497127143038143360560397870639010999345411964359193593706120747986388436865856711152329012752203551947506410895136754710764028409132688487947599004563325037462858714213892499206300700269407017147468739106431055115908042686290338008542994428752516886752205258531711743065916752214994538976847912347237330377164734857999224641372880254829640019116509660984317079036690953071260050719158498972420477085342582780339985440297947052387793281768826804375064056863961306641446134907192774022462562861626669659213188895136761545423680177245536936748578573150927990026971257491210471508719990578425087966421010489935955702473925166595214909560809926451447275933290244456334882841351647741668825917181776502372500145459724890636115473478472508750353741467718312096590314069892982629483200618216455389972950140542740587464115590065617625756043245692758743572194420717639737362247824312333539671122811400741041466519541162368813673635217642451237668177328494370641917129901695765097817698890075776015542480305382511618788753954462971549597066359710288403485591750647074613576992169076228370007731307200183821779277173983126634674869212961210655012252640987039283477798455129747870085073411458816528438139647962454619538339112483930212024603915182802970846464035724808189407605901737386068009005464257259463294601561783074696125409231749601201631324510568080213489096630666562588311530653497066300379620686271379641009514273225766912901664983252507661448127880707437284304000989574765338551250851131108023525587323156211146006726839643805655468341627650620091684582299528090285506097724311550926593864923900423627173516276369699937485672166421414780936202716061613992100065585849255590258314825511456533097308415640360491737558394258149404226101136721030143838082419484855665595418687045076233503517767086479936860392697124192953297923500736306726035645814800931614275942306345561289310815867752582467825117442763869592979705080150748801243250813203102917574663338489842095642027519835030828113258551603317932280123427382105467780793478691064057008212557005309085351091020965651672909804369561797513681443397307508341319094899539258402694819155321701862064762453463438818872529631761541826669727350994168156986271064259488890669987340293247307294122564526191152872609731874887402287402716568545991656712855531731467158412778577813071743935146630588486463466695159845810880437518219847788162066351432632986524505214569834993618417257654692898685914902363864387710501964068566085960963592810285555333374306656479135264027623077225496462690657746861080253251276804284356718380774714102539347780495289505774593786803470501805033748051942944647560663198901965927209104998095075723187442141286036549276744571951408693107208694451515330939134661528029541021417254328499644733379021243051858925828014996520249564751953386943206124193084717745401726083733029983018139647114730784318516081978109747487153153313076156843006824641625583794050532041663205198602954876772449504849496241705391654878357555527766408278722155789954296729615089603597454791454442395377473615728276726614000220099218811200584461698993332086080357333074674318333976636094151444133931749975265937434190873644666491612136190031889984201850476488486135038295249068428853128178556771453486592548545138024272853879912947051158104005103007945040740095505246050426248751177578881935411312129778985949091714066941652696929188367013972108317011315379487191593972468349263413647572901077696157308017228202080014813533861708914880078242950365410712863542796207921422018953276543157782132693211274697697323801035743351483666836733759760823965540711560874632122866307472960736828627400911197015645659065967785572234902327385951053801847448889790154400847790916835630126266229969257967953268293036711865296055388382196932739472123462758241265722530454419779824211287457882666813255466264778764616921630917333797473709491910927040855644788559733882207110832879203217015864906608611455766335748242188011349880644196983068863545959619170074524317699389571959465737928499352964604947350976989084132717938305593943973868237784982568457773248394754171731620721887784870622624749973465464502099477381937976725960648615535018991018443958241146658957419368413987868170132065033502977145016504876379565768837283508323601434251019150801549965806707976794946075329872100990958746645802326031729851777587211042771850135675330864944681931052029181459067004417370924628858833744904580994227523653022383070715567808328555569209524538967462011244373502471170171741169075666968595985978042277638606585602154110420631154573919790802064465280486696920316629298598132677138812362076851369713757487942178479469341978844429025504474343568181491850529182589235401556444796143987870581629930802068986308291391903761725184143390256296478651999930382296007342093368629331376280910822057631267310025284368997321417127783109931611213678186913125852061067684441514202096701797465049774203314951113997590153852964544194466521173254404095182085664136971861710980527246716371873712075595491878320703561021962181213123326896062050172382511021218371627969054634978491251615007458217322038010735295596775443218113687108340112665545433764458383598700562412519006488680877259710626675544328748444630766644280867470639034542477241195383290477736238013644680347739848942364109580893978948110370321862182163201938929163150190436123425942595275816378886936800152087578801657782397375890743949059573174947175828033179389664662921847530114402750847630664752171192656439918776758805453669402999506789978122672490464105808853457073635968775635366850618968571696300267273015833527558547820770149738339724238143729305054619189776939477389948619818826651604968090439305080543631934146346003050653931385860762784014580257442083754452871617065048532952416618012994892446809782468871292070970835349012876025551088967007849241500400334831510614210324686966499528173148720098505503379207555436735024441284126426350051689618615214751265227650739737990637218057738687327496042408798569146619472100546093714853972486597684209391261558423390204216968750965272784178859087958776512909080393627771125887501113979496447224674426020827810692730269768377630446383047506041896689848671003424117820892266746972333466355653011954568884025725212672186217284409414367283665805983736645164534606962750203245876870685833117944709851171612035337336078607237111795429862935816775169054496622588209926834939864415067630961475685494017023694281049643087279816914032216444137500734363317869671841783445073576677025352920469536071178372337956520092314041504335678145875615987022038026322799615142546847803808711262549714453778934750071357542431414213529671235991505647242770129687461304455408673686033619754137430029092909018864701640098695665947585266939999751805585747143416719869891670190034393321049235156703200070864931118246222435013027964921895571177060844996389023993143695263073286663779860647430347024083303433894607362084287760854805459723744306883393394296998054312973518219563075701492179209146814168298467955061951577815184188627244629057222208008060228733726828820832580636458277807579405004158573615908040735821778755886534718890940427912655804226391002780301578535042302040876908739691399384795409144235031025151567730927373113453208765001621887494385081076933338322300327725027157333816646301391906455135020176411813117962665187782588499084051984320602251313793517823595369685081659867024111605100209519829749913400086789720617422074456191784329798476508839604578909312322525463663720621838897550510719580821432841472563556880361488413261300329476191070541012345023679427405520774877089641740898365167444348866429143527477736933756172164683784873013518991194981247775616637631976690771275317504703979982951639443925788855209684752150492365118253952118705327940739007212731256074245760761419178820121536448951002265552550370487213855167688980098056417146437566180700297734763936807841276162382450972751013577372810903071633626125317298325174174763379883993062612663234436442725408543822937393286910466273343995079460358941122931269433454961405537796168123358398266212528477904200181306178930666233258892475263232222739962658482570538618321118240675435288258776975264863349549889604387887177045357801438435083276938235881057059948907390577085741834565695155783830407813218586962425285816930366877491010998810076397353167376127852258138076572536829902029469563270201508402809932387608292617317861668503511032669180722941745042861363955788922893988514858842173692027090449838491553352537895513801517878446396621834492761679437280330172033214170924129860321851896930489924111004896078607347081221155398898941845989762413608564696683806181982629937446858102737157849505279817603850488005896406916700949495402974020267166128773901213043601972460995421168384075730296702383766390432625087392361823136563962291877542921064515516263784308539073954276405985776787360980823642723218305580644320161323973666890315104661632323690778125024460803968534577281211285847002913875361065167399068115370081153800479090357674769075907839900604937512438550218086634652340554010565978907928874732288824779010250319052690554718495275327055347338804220183552860793603279804038139322631006909639969285948970464805759064090432859466759526391563598115013576889646264245955456958122837313100297619404468455431835204831642437689807037641127898865634143301985484761971325492352785013492760963509618799687412960337332300668012194457983235246827476722898504265322745668790946781250955522604892942297941159112330181124500212238724923380298321247357289382699794469390760986037244812666759560473472127719534984935467992189325592690974699345933696872931401400239249817363484209905969931125806040011072694023655241278959052785408807672862822292413267217366258117375727828870631623401820921116583105976219751451298402645109697368971182473740711647915342736525680009163029539356920748646952855195277193041649246692825217051371466617000006275614031769233722550799983965797530412836656463022292746633338450723850111089826940835506467589581759501119158641443209184675582939018348955453430912168103760600422648212574300258072074382516011975072585964774904723439683435351209759921478879569445157840515324588118733384634686534033008983091104096388261918534588759008535260534126007660027902174637926142150020940858386513406875927386131519613577368943991625842255323322676830433363172308526746888094924767233149288281168224855300661590998629902838126627667419303809892997882739500272245969221102684902942974939166879507553394822578991173568614732076448709349507646504945379165389593434217694466579120268851442152302635608301183008299968457771325738560063236225465983288801773009143931223749891669055220778879363791144673466697984062595238320089373499279545211320000092896785014599385200907610169480108223396398379516454775279788561091266521107195343425722990988983051520947397036903328957639874904007698953042643043466072963842839220241509242000740583284387559477975796550026962229081508365238455193505091021737617508360269572399743126556839168094580754476951857576792244823817140487538635745713074265769260704442493330527119090575247367918240764782912716977712194266256185570142968439471306413321035413693397672719783382968959901667494738558366938459051537769783370542189356787502652685183534890849131746167243907285943150195304206232354078990028573373641220494631142109530613329240705729436892574039855863233889975453784655217531428008587900018338306272515831815940807070718241931896002373656335556262157358770041420527086286440960563482429476653925851029341326372574597567219422391292024852436078425722819353601500245535897186624214893996528289587230859270404152615095511768328107580083373156684181192233015082410373638890358319887048709534959348797923176755614274835915932634955594270820674382855783458560422865492636543390589631778993144872553618234026614001828789567506034791190100857429878667462614011654492097785852488363907817087375488472193272565255689240725981877118798012135748384636570580042730165441898653668751862692892550891590843359421159594711464254346200023560845933774246205705104753338508172127280229485490516805737391870563120690575898369413505442240307418324484690830342356258744849759191108482077239727835568622032417356239621617897322522832008576128900800879096283081157459027219279145107085192416731313101959854816322921802705516157306936770691106475831408224549467676536909636234790687326452276477271190352095517074082229124144942240038011798125181829871135606395343000031587368093426861264428107289220612836412675558003096135880943448833429079456960529766340850198412744534240588772874777827744472710216178206168195579223562741117081499743830502010846160863720672422762368177032445545665637721965335465952902217359615564047858747522677207451230757891482043098778163225184892238088076754197888212347530331996456696481287308617297725553727570040310748877962600740829686496935180564995540255270849588995212972394273078870260492198093067903518230403690889631360689297025030603414137840877604295473974254117288874176550481023106057516847894653690499822960974169700474924881344567745135636817006497742393938141756987129126795043235198290061583599003462233778402188436109247704616927329496280188882645325789765676888029893587532590996041401655586190541714324171385012928495932892464708634268346064262366511168707449409355387939328053375927964002493994393542423797537101022686593721081589118775182897587401793784748193092527562781490327624578019371501372037464819275122800598147862993034801704306300927692581609797666419964823101859988709188249324975944516115252094771794105852697493504703035451804075886685717827152864460597939343830890524236831470191265762321209311760005592924959986415012207866357397696711849169951481955479560988927984446274722621144666166017691621591086577734431203752527324794355151314725973417869013843212668493723101921506140641630339387387198671731483706868994395054464769728863545778011677892151725219479104367205898299266365938337254405415223148473190039202587992788724317538040860248789206495896263531947204422700272678523019160496503993111661676132679447492764195898872357228342933362442376822236227892758152947402261896518918306461467008466536023151108346172182440471238749511087571218440266246804875494982624373260872079806640445375326303337694035062109134552849690190523161246304753958123147157041552454016759615475811567894695095083587448689768981896106910505399601479689870354039188359216466209799571424258881262665260714509167505617631188175904416683107145594763385735420474303189730824983629763488924831885847789687274766637726932600772036323513279309093611312328172440902470651158391521736919009245790652628270440997808533922141594599742565430852762456511539962605068202514075406146788422708121936179557386232815157982156127637658042594379253180916410250425443119470855653274514706916602801860033869691553387143017939270367166724757219430542176452622430123880630658820769306185785907099605331775549072021036812236344071418237693146590046127767259205942709840437523336900617702726684330755960213963143260536137654751313545475717563332161216930429659507288151566536834243217506137184119949840985565751761913471384997879941095362966853281281016851293949974633338148461194694599099478623503456118488444605372084993320503969637036760712321226474339984074046873622959517873484657636904228027384942780840045579566253041897976168889693925406600988059005865542622879644399063608678931091170443716756183599108320516377289109073392004856121885659062540460840278921318133330884651353851492330048898648052858977270819695551856679692985740170286905224143110801724914503681542580802446739629782200644925940541628070773249839396103471049802041542626583026036984395934484250458447465394248036504833790105872473613629037867280518746981221447410417077598048751144049919597304671937315656898323333591969172268177630328292941384379382916915507356196051569202546571637747147055580119864105026403746149970010854581181890449129540046065282166094649695722623290314520231092049778747850294670693710990760317592267916575605787686158747254366101718056298318161912971242395373708545544204407288711887824948985059433069051655632404929386865260679962618852374277881298762379478686595736548910829985624362867677449265570088825676608155723678856881032481480939127083685631764390345463327074629173270494915622532897684143283881850807318568997124854336775201979933419870671836043784985666902612295480625944696303550153058473776068578590891042001792906347274173308677128005805161962069731452528824853326393873972679563268896128788682856512872756173023423785119086982234351523624653720403009327026200730138003708130242625272869864480103296521579076333145899417661516009558342565076000752926122883261689916947640339335605686421798474510262232259911866579772711495146423271750430608342774289577204458158081726439640698504916465173832568667996267335356364019417754923834976909129797466277476184374380035347037720386300143714107218135101267168021762188134636607030247421917846727417829612562851346520405070302533386877286449171425510148325443827324274299930533457653523101484303929523412389059042922679993740465531110663825373896447762222859468063606247635933150619847992572719333309628251842547216427025126378069053381619636563053845955030052150657538900640638431696013881091284502397910326154134438674636901091712484329114509394215293553955532770149297879919216537720463274851722214892576930826293109511216972131489319878090507001238586063528465338394579768831679448825036634945083727394539272486782783935191313401523159316632565232430722336784578874959286131182968747248177382833010943470345934223184035793539278235516186515542987418611180238159458742690637477318346782613181530668948819692569034482695784689492437005937986136491709302659763942840957045803033863005061523524743867650293426329945454781355977576713615496995173054983301604513789412496997257250693879022421586428204954184675948545568652406733310619467853531302352909236503868298658540151205484011421973795243368447683754131946667232228704934040411181607878243949063561319447311423067084826577049905509436117278697839738352734212859464404825935816759088662116564246855152285904745270196385979501036164673487376080474072964246028593560429543667471798838856864508901475418865799011373957004282254884982081558709732744810968560094201066649880653745847250361246638563955755924828300297211116741046193874696000516740509273246191007872296783826325097953631339682740140748453530590781595594517522691110212366939553726005376615994316485828858572055868539445156318786155864735903600389841435810542828426921430148770537767869493909313801331731834629546500703442371646303569101802494208217084069475250114557925545760370109554444969433159797100964557647111532484376233818161187721424455103088438542399966963551774999971660184682450431356333618950646073645569875633257368881964681898372813830445426224338376081415626354089148713939408626523214970229861557103792153278538535217024512718924963266723665878492466005635463486177077373028705163218027906251421513428598405998203466422182073330806137114734735491857184973449346994704697927808422333347799015858506221565160353496179768307500326403811485178112216342470833836829242345970684736898969619839209248243413186810166374062330056621667930745928225481373981667118148254309863984188746860390687378090172382532030521454347571076157261309940980925897983858696093661131260791260493112725363366323899479616902836689340779970013606235698363724781157598514600789700870435681722811282228806942329243286271581558990071534041372276483428279638097390501398784398081759286481052232801151647795159525960191246761398769366274706567138876441054659615708214739542330544826804374111259293250869482470941419508214168171346682920109281697531701029106656070769727733383154246538579769483405557636528171482255220233253333467250619624486524734204155160554055263399697703582918342731256754380529208529533218982617292088582175072971202663840081839945977828303898673666307551921744595435328120822858140521836911409384252152378105748624434870096330219793246376139674284451560446127099173790294709869548423336822286180726249701700954956818784214453874781753135525881314593023291145139384900887008480611832148832457300534790743294814516248981940861591709406336824636647627021417293523848526356144753786118987640292165171225757873056537897258627262219467980050954612304383417632786084743287612665178595195103485387695755768169292260357881216716580064310248611830194793000954734938169539420990893855612197567800945940014609695653675220073649957641899894657480860675711949859646850511340785898153195516875305527958787749713063150477140195247891660068075485907291602726623498680612746067564994782297072319992930997031245873933679761766174945855929866366808233464147491633994266134293605125283825404191288063811924045177316193336090006109924023134808746729250227706766708560913863285532519507816771700848483506734733888987897206053682589871455703013281059636314226696099726330076377560015190801132991584112407994521749436123644580044512804984622233457460035067481678309335458091987360357123107502487383962422567644647677622461577776526511609528133348229586034299552706711657755190461371030126551998269264654739702364018540680048325900275374652992613414524236349370773377772753420969975115237307993305671674594251261844273307836576085575113348196481675284847395918940410263088985610398483543070135058550972831899637933152165197204573328100125424484560522768324451089088632006612473448912971402406888127596349328285319663622584181173775282499324211621254743311600554543690732648978024191092140740872625279171709639785901726355553421541302853276478029687639832228049491174535358903850380925273043652670178280380704579999615368667959429049123678670629916645652370630576311826462861487487973393464641853023896432749566006239865489534828994572031074183281388418212525861755115860754440618495070193006818735006408310098525293789368960811065051676228682069254396816016565409694806899899479495010937020105109253460556009020583324122424281371248509528274441576406212816071382459642825129712736124195111829192786120628222569389080710167819592634912816084536923001186008434032635490254438109263683282382785133851876199718519355087600110877617088444894255917579631851858147193908007499966468097071121792147787953956154165018481879742626379113994197953981670197830344190540279843609556051070040541047487091347208933999237087154678729897593093553855515933585051807546235567214971889731781439608152111329108685898807616957059359785832786925219899935508158284839968179511467431016914184410204269000410832916944615723885410306086064694440884104502842322209006540003868472104112664040834072147770365059345247314274827403514179301754222445183738952895674379183566799118173907261292931849395204133599012987888432931159828572316555792638981816323826612741221759569770521864733504329363593406611472241554020666609566015310949690018574969260474860939838327360411297488793370292610985742959509181679430432821393231539535447310905697828789636616833953879023321239313987203612985460473153105163282730574501174278195357819329060488416616085790438302319611810540166720655762294872410029741644651980188448719624191621500929422050189231410510503539101490897878876107381471382564399947306035941574272449526741521615515925229209048519818084397649327041699622541521874043693515443020314852290397918319063553850499973409173263308584896559885448005290021374919453365046521918019519272657385473339302422404915919098651888202834716284719350787382321527594789831909364308589660115465896292539086148666635752819331681254577404039833310491545598541732828328629952029390671891187605948717543542011039175014681169954993627105006010668303164535107897867648103123326996271561375019717825156622679614872964875774491334042567752021286403701226387986241821386075277747200808426993578789778954322281671597970550313550033960049196229509465660346933168639704995736409695641115815354233554962885915118572290271755745655217983001015593040036574851864391229231514352577378145051555056197303151968967231515416269842422610943524912184592024301340730040037233500192579972469687888473103343458388193834662538980247409228776011005590279784506864533394986244624876882106027267624780232274664231526410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
人造人 发表于 2019-5-8 23:03
C++大数运算
这么大的数据几乎瞬间就好了
唔,还有这种东西,第一次知道。谢谢啦
页:
[1]