Compare commits
3 Commits
1f04221288
...
27bf55960a
Author | SHA1 | Date |
---|---|---|
|
27bf55960a | |
|
4e51c57775 | |
|
00979e49cf |
|
@ -0,0 +1,141 @@
|
|||
221132133212311232212242114141432412314342344414511125222353555313224255144252512523312445214535353432244331111334213433323123231313121233312
|
||||
112212122221212221323211422324232212343312251322531451424155421523333223554153341151413325324333253423134212341243431224144312132322221323221
|
||||
213313213322123132231341233221443443232132311221233553234412331241455332545534513324434532554435513521433123414411413332112232121311231333313
|
||||
122111322123111123342223221344432441335345141551542425425323413343112243315451213441254551322425234511553143114414112321444431323332221131311
|
||||
321211111212212332431213423112424233322543152513453155251312552321345542153421344235521424434323522543254212232311242124343311213232313122321
|
||||
322123133221121212344241441112431241254234511433135241544144142451251221455341154114125414423454441551133123443333241142124141122321122112111
|
||||
123311112232214444142223314414421343411243122531123115311142221552433342324343524443355534321225125453122445223233441132323142134213112323321
|
||||
333221311221222332233211423323431443452223414535345514513523452455363552452646464223322124133135454453142341114322144233234433341122332223223
|
||||
122212132211311131211311441422143155122512433323345543466366455336563642233222334226546222422553531344421412353311241312334224111322333123323
|
||||
321233231131111321411243114422141523552423515544341563266535264525334422235652233425226566424521131545111553254142242134314342343144322123211
|
||||
323212213142142423112441133423512142525542134141425223236344455535646256546256242425523555456555532422251511342425533441143123221431323133332
|
||||
212112312442111222241343142523144552432312122135246436664646553456454433552225254343326555543553543213134542525532223143412132212444421213223
|
||||
321211211241124211412342411411233152253114443525544225524634455536664462454325465464454433435624665424451311515523242134123224432222243313311
|
||||
131333122213242331134143535143554345454411343565626562452463456645344623266565625336656545522642655244235144314124213234431114441132124132322
|
||||
131312123321133113442331124114512351232556662642445566554562335632566323564355652332462546232642436346552153551321125542331144322412231141112
|
||||
212333221311221443134123554454531543126654422265242653422665532252626634646643664534433326562653363433564445333443232345254341314122432241213
|
||||
223132432344411434251542222114532535542555566626634526343255622622524353365566432563536656225524322332546442122452215352525133423212333232123
|
||||
223441413243113433554115323311433352324324556246232542242522256443755653567344442353622255363623645334355543232424453452215313223224231122243
|
||||
333444232422123141212323551311344253363463433432245264422622773367675554757474475755366235532333225325324533235434211244523125231142141422332
|
||||
211432132423314455152434342234532542454644424624634665653476335636546347563676544577337343542236432225226535626234225112411124214111312122241
|
||||
114213313132411513221552241515354334266554255426343235453363357477637353643436754665535577223346322525534356553533232511343125444421414233431
|
||||
112414224141222225354131521253432354642344334636467667457755544357436544453633776435756465344434444426422263523335334535352244234431111121131
|
||||
242224121434441313555321445133266233526222336565754535744754647363336365445345663364644665467364436242324545525265235322343423335533323321411
|
||||
134323142234224355443552555263552564332333252244477676335465655336563674466535374436474463333364322556422353662536224324151522125312421141221
|
||||
231443224113522352134253526625546664346232256636553464357563557343475534476347456356737556757455474632452533552566326121242145345544124242113
|
||||
242121244233435241152524254436645532225633266743633374565557577455643443377764337647733354743554555544324532424544623344245254534215123214441
|
||||
334224211324514255334534544656335353362345476556764633665557676557443775655477646347673357376663446673464243635222466444145325422431544341234
|
||||
324434342342343123444546432562436635634337675453454746544577546644735463654477547375566766545567453665566222323462244334513252425344513134443
|
||||
311414334114311313455155424564643323445645743575774674435433335766886745454865466737667667476366743555543665445656635424422523312515322114131
|
||||
422412335432454455315526656222225266274546547734445547367656866757587576766766658785677557555465445767553325552464223362612435444315542142144
|
||||
333442123352112433522423464526653652547743343347547457374775865774574856757644757888846546457743337366347673424434266534464331542524525523432
|
||||
444322153141141242336623623236446463335767536773337763444647574574875778855546584787856667433666534335666377346343235355454214252434231312441
|
||||
141334341542541143443565262434345544763674335563755668877846755785688845657777454488847854857364473466357747662454462352456513334312153412244
|
||||
123124553134311442126262556523245745445437435337666458478754664544457564864485665757758644788456653777445666675365635562465555451535333144321
|
||||
233224433352345124626553254344243337563434764345584584566667785658644574785766766455845877488677654446436753663445355524653345242144224421331
|
||||
211325121323214542223235634662646657633356633356866565774557474646784564468476788666745548557866566665354776673535333225424233313234452222112
|
||||
241321251234144134563466566425376643634554664787455546684448785877547668857746845748577477675884773555757373543554223355633332255252245213234
|
||||
321513253111551465665332442323475577633745665886467445457847745646755647468775584867647588567555886677563667664533336644545425544415545445431
|
||||
341553125534544436563226436274657334674644587567565866874646577448785586546675778644756646848658775437755546546755342253342663341544421121413
|
||||
431125343151331344325423553336346473764435757585487886846777755685778957556566565885454465584775656857677355543563434565555364341142254511224
|
||||
325544334354542235665246344355344765376365866654668554586755598558758597597799999654856884575467878567767573366373654334334565652212522352452
|
||||
322553445332446556454336453755333566356744667568868854477846877777598999577765995779674788564546756656556354777766533242443332666314254431413
|
||||
213332441515534535325645623777735366374767558876765668464857757995688675666596959866675544584477585577664466437467653663254664665554312553452
|
||||
452455341321156655446455443333663576648884877754768777467556597896679555886869566668875945478867764845656364344364444353236235253234222545355
|
||||
544124352122322564642223447454466754477556856856677457987875765596758659897997685579856678468474587554467564776656663663465463336263325114555
|
||||
444435511353262255444422345465456476684768754774675666757955986567899786777688778679758595685664566666486837735533746373632632266355324541234
|
||||
111115545433656543553663457455544355577484687474886775765956765588878757669676576566568878577488656448586644447763765755442446355243454232411
|
||||
242425155325562635365337563465757567887854757784569977599677689765898679659589979698589758586677556557678586763535745547246225663436125342343
|
||||
251333143215336246346244656567753377488885446587797778957677877895697769757598785887695668775858777885645784546435755534432234262463541112142
|
||||
452441311522626255666535644557733355685575767868776795859755768886787795575986965876556999966986744447775466756363646453522266355426531325422
|
||||
411414331353436555345763374665563675868676465589959669685769675958678798896668999985859989865975885477868854684377365545332336346553253435234
|
||||
345545223452366642552346533764555578758454648778965769679978585666776887687969667995755698669568686467748677875774753467454523566243641111245
|
||||
311133345456535342232357574576334647778765765856965888988789869799696678767798898779596968878955968666744778468643736356653223565442241111344
|
||||
213312545464436556644544676374554758576458548699558588678699876787979888777979666698758759969656957755678847485556435534664266624333625214511
|
||||
452341221343445546626567355365474567868655858689865969997597867886667898878979696686958556888566989656755585768476657474435353363526563322145
|
||||
313521153532664625323577475777644756756885877759757658785978787796697987966778779798988665657588869556875565558475333356763535362335633334525
|
||||
434532544242425342547566756446758584547555868759867676896968669676898889879768986698696865975999875645466478774443766663336325262543423225533
|
||||
515445212524253355267466544657575586568854988995577565676998798688996896987798988698866765859878678975445766657576735777457362463535356544113
|
||||
223244245643324566533764763653777767456846675598955896799997777899777899777699988999796888566997979686476474656864443354455654664236326544123
|
||||
453244145262536455556645445435788758676447888578889996888686998986886896778688768696879778868559686865446778478873543354377726565345642635413
|
||||
241443166422353334467646457354556886575547699888586788667797698768889886869899787696879967957788995885844588747787644576434645562423222523541
|
||||
315514425545525643446455775675657578578697589986999897777987677976787999978779968688886769778659696688768744658446465446466554656236462635345
|
||||
254524262543664365735363555544788464778555969996876896776679887888897898877778899897876679797855986978547545748465654737356366663225655334242
|
||||
223411566666255524735656554438447648447658796968659688896876698889997999999778877667987699788856995865944875548684677647476534225445323343244
|
||||
344424325243356323464366773638775645778796867669877687879766779798899897988798786688798987998788987677988884786586443663337736464624244655241
|
||||
541221453563264662764736464554566856644999556759976979979786869998987779898778787798799876769686775758897587588666864367764753624534525311115
|
||||
111422523442464633645344556376474657445588765556987969988876788898888987987797777687668697966786898855976488767767633363363665544556462543425
|
||||
331521425234325366775664774388848675447675895568878669889699697987799887998779888768677778978777657557574555474588753574356564242255255252131
|
||||
421345443235254654463735647355887668766966699667679776676768779989898997977989878779886887778696579578766765667554566564567465352626664252314
|
||||
434412236664255645735677334385654748544959767997866677669696887887799777987777777989976799868998685865784657747685575443345466333644434545144
|
||||
223311566244625335344765446374455555667965575558599786997897878887778879797988878779679696898755977786987578745567576475353446266246323431325
|
||||
314554663254444225564355774355648844784657755567598979987668798789797878799999877977697789678879756765784754855545764553747337365655432333213
|
||||
214241462244536666534454733558548666665585697959578889776896797888989977898878799787698779767798966688876784884756756753636774263552635525421
|
||||
553233335323242443677657457487857488487697588878688878697688997999779978797799798889988668787557786955577865567745547576647634552223542663412
|
||||
544351422322646555465665643444554587548899666759576997889878697787789777788797989997679667996568589699568568764564634653555436623343325441431
|
||||
523533524462455443343446653544488755567798888689859768877899998879897999977978977968888796867965898776564847645468534567433774624335236345242
|
||||
124441166644356567665754675364788654888576575667769978689687979798799797887889797789696688988976795697684845885856573775354464432342236314352
|
||||
234421163646444322643536334464887868687797555557798676978997899998979888779979798876897967988898989786776666484455544436356446626542356542121
|
||||
212353225632455544357554576775466484565886685899776676678767999887988999977887786697876897877586669859884576568856734465534364235245665625141
|
||||
333524254566355353744477347456748466848486895578685898877666778699797799897798787966979678786787596577644845565687673555436765345562243453131
|
||||
532453436656423432367774656354888887764868676575687789996779777667998887799999869766768798997969798875566577558768775655345754455532545545525
|
||||
141414236635343346374764777677776578674467888555568789868788786777799999987977799796797996886875888797955757544578367476353752326465646614241
|
||||
122335243622234566336666556548487477846645885989777976796688788999996666766969896876997976898998868655756575448874473574356666632462232242241
|
||||
554443366643565466246576465773565747848566566689959696969666999888878869787666697677878879566677566566777468566566464663556353554432236353334
|
||||
411511556322344646247744635753576484644847796998775677696799976888779789669679876767698675797986678856655864685674377735457443262355522114411
|
||||
455443235465652464456734435566885646855554775575776865567766676867866697778969778798698665758969589998854665665863674535555562455356434331422
|
||||
121245312663356425265447676537355445447748788997795986857888968668979966869776788869897666777878675865687447557666577553476524236545435431523
|
||||
512152555326265363623746775744667444475767559996967689576796688789788787879988697868685755779565966765757885784477366564536344235353624134424
|
||||
234424515426254554354664367354677686568446586555688896856667869779788876967686878696769859988857655784858668676457774453754524532454643345254
|
||||
545153543365463242335355675774577444644646677989889587665666797699787969697889688796567787697695667644845768745677354636634334523532261321323
|
||||
112113214343443336542743344467635685855677655767688676965976569788887887689768897979595796675876787674574555475655676774345662243334525523535
|
||||
131325424436226645262465655375647864767768785455987575577665556879766869769786669679957978776788766487675586557557545347433455432363254225552
|
||||
123515344352423236626335756775543758855685564456895697698655879987879687686677897577985559597658747676888876873447337545642465334623611151155
|
||||
341124122166456665242355657353333456477675655859887958586757878679679878855589596778979659795775478577478875744537764376354544362542412131211
|
||||
114222523344463642452533657747445545458764677555588687686867675796598776586695659959777976765788445657744765367556557677636245356653455133513
|
||||
352255321212456234335456445433436355766847454767499597859958665989877785778869757886688885658684656587884587346443565337452654623566313342544
|
||||
242415551213546266624526444745344364774688458487464587997759695967666576789769587999596756654647577488556745554545467737253366242452234113454
|
||||
443131554335646424535333365475733655766854485764574678799569967769985889868959665889867858768474465754755767344464377675625453656664432453143
|
||||
533252112413422535665233565734673564456787684576754556969556566687897999887985898667889798687556885754765746665474667373562525235265152251251
|
||||
352511515133254633366436347336546733464778674684456584769656956696966959878589866888576564684457558468674373376677544466366655253442214122235
|
||||
314153534535235666336266244443347774766854844887485554466857989767598999885555958958758875588858856758485446374645757246532524526435533325224
|
||||
322435142422434426235362534357757336535774676778667547455686567856968786955566996778777775645865586786567336457667535636533666323451232535311
|
||||
142254412124133652356265523754353474753538654476488677564875487959888685857759899566747787465584748664374454757474444563243553243423535521553
|
||||
341424443342331354552224633536464356374543874867774457745477455468968677888678877466857447545754564566547475754647655253552626663453443332533
|
||||
224424534541344325526464566266437476736775448557556474484485646874745446886586458878464468444757747444755346735763642232336644233345355251431
|
||||
443112135411124246546345626223664637655433435655675864775786755766548866748764844644777786448864477366336545336763466345466446252522214251141
|
||||
133325315324231452264622633266664754546545775647575487555666574444848475766785585686876485574755764733647757364543526232444454351245443254213
|
||||
314131521225133215364666245353645737777744635736688644455487744588665485877488464574456674887784437574454377665723643366363453325532551531141
|
||||
324344535551353354553523624554353575536465645357576768567567865556677665776487885665554776865744355453567434335566633325246333544411531123444
|
||||
213111233544114452424345662455353743574535645456777888774866577758747788577855585656878458667773777553433533333626253335565412314222341343224
|
||||
234443353422121552122655663324522656544546663775375585567866746466768887767485747746785747734475357336365645762522224532653414421514122321234
|
||||
222123414512121142344523262624466255665443665546537347565766588857857885764466645677487876473355577537755433622563325264646541314211551313413
|
||||
444243143445353251221553562665255246563755544553756556663656886858874547544886678474545675454455436574556436326464632326635425255351145111442
|
||||
232212445333144123443545454454645235545654377634647635435566686757868658746845647465354645534537575455376533462364254663521131451114424242131
|
||||
241434334451455421433323323664436433223565344634365356646575664447775668584446657764445344474337675643335234556645243626355115323144142231123
|
||||
244443434514425512352325326265246226352465536436365536674474445433774744367776553356634463346366747646662662253542642263552351153443414324432
|
||||
433233323232153553345112336433335563253456447444544743757677473663745665574346746434646363364636435377523422334644432652553414551222512114421
|
||||
232322331233121424554252526264646466663336437465665756375455533373776465466433333446363764464637456522444454562433243334253355123315224312143
|
||||
133313322332122441412111333654626643563564446544633464546367536547673537674334375565455775565444677245352453444263325413215252111352113324244
|
||||
414434143343221114253331425436524563645433546467735774443733736573737434734363656553377447345646432263435434236365421152114552334511334444311
|
||||
243223222431114215255542113356245526225262563443554664376773466467645336666377534536743756674533646256425462462562423131154445521142414113334
|
||||
243434312424124113343141224334356622524233533343233663656343464335636757636754553764467776346562324463424443665241522124345534452221111321334
|
||||
211414234122141132234253312111264245236344663655222237443544436737775344354755766473566567445662364655366235652213415435534211412142244114434
|
||||
332224132332241152441323151335226464345324526555542555257443367365764333434753674467735364332336446466244323452231223133434231442123434313442
|
||||
111214424144312345132212351425232545434436266463422643446342764447664675777457735742532253635532266633363425225433112221545532441213323124221
|
||||
111442321412343431253224134241152223633622336344425445625535634256563777457372643426455424633524545262543244133534551554434324111123311211113
|
||||
233313311143343143351431455251345111352234564443566663536246242462356525465634354423344225554636663262633335352323213242341221142244131323421
|
||||
111121243444434421131134112523111542115455644535633444325664652666625635523322255264625564252255665243425424225133352415144121222223442423132
|
||||
131321313144343423121433433145141525552365534452555456242343665525432352356624326235446254365452344244322243551113251432153344222334143141113
|
||||
311113131433233332234114315415142312242514432264564632332532262334445245556434425656244562464362642622553325351433232435314233213122331231121
|
||||
131311334423133434213414435222453532244233224636525564222254526456533636366634426563534323553336226114251341512421333242421244332313241132321
|
||||
322211312341442332424212355325125152245543412546266662223634434552555354443546246246645254234425223445424144225225221513332423242121322231211
|
||||
122211313233314122422143224214253441114334215451265434536455345256364565264365436434634323265521353523542253242112315342212223214433223312231
|
||||
122222312224143314231134444525315141331224534322121665562342636234255324243362255634253654525144354453214243144424251324233141114312312332311
|
||||
113321233111343212344241143344444125353442224245214151164446344566336426664262465536233552535341211413411251344223131122124134144223331221132
|
||||
223223121222331122413122432214121535353511552152521441344232245253236453244353345534224211555145311345444311331534224432441422111132123131331
|
||||
113321131313314243244322112423211123543333431242251531321351351221462565253244145552322223115433314234552323555241141111431314131333313121211
|
||||
312323323221121344212442341132423323411341444542554342354351555354555452232354212452354235435223335421544531342322132422433423212322213312121
|
||||
332321113311133314331343333442424143355521452552312223212432512325123114511223513412511334525513424325151424444413131433131142312131123321221
|
||||
133213311222132133222241111144212411415135124431343111354114512341524254542254152431531154243344351253254314222444442131423241113233312322233
|
||||
122233332221321332334332421112231241231454155421253323413131135544412332231134255525322253113541241522413343332322132232122322331232132222321
|
|
@ -0,0 +1,742 @@
|
|||
sp{x<3224:A,a>1743:A,m<3854:A,R}
|
||||
qzq{m>2723:R,xm}
|
||||
gzj{x>2762:A,a<541:br,R}
|
||||
chj{s>2340:hx,x>2551:vbb,s>1050:gf,jdz}
|
||||
jhf{m<2021:ht,s<2175:zjp,x<3626:nkb,mzl}
|
||||
lb{a>3686:A,s<1789:R,R}
|
||||
zpg{m>2216:R,m>1278:R,R}
|
||||
ptv{m<289:A,a<1547:A,x>2091:A,A}
|
||||
qsx{m>3295:A,x<651:A,x>1078:gj,vsr}
|
||||
bcx{a<597:R,x<3112:A,s>2486:R,A}
|
||||
rbm{s<3766:R,A}
|
||||
jx{m>2597:A,m<1086:A,a<2643:A,A}
|
||||
jxq{s<487:R,s<689:R,R}
|
||||
kk{a>3590:txm,x>3449:kzx,dxf}
|
||||
vrt{x<2361:nfd,s>2509:zbx,s>1548:nk,vvx}
|
||||
kcd{a<1577:R,x>502:R,R}
|
||||
fjm{m>2560:R,m>1928:R,a<2849:R,A}
|
||||
msb{s>2580:R,x>3839:A,A}
|
||||
zhs{m>326:A,s>2498:A,x>163:A,R}
|
||||
zj{m<231:R,a>1349:A,R}
|
||||
zjp{x<3517:rfz,s<1052:rgd,x>3741:bqr,nrd}
|
||||
ghp{x<1955:A,x>2826:R,s>3066:A,A}
|
||||
ksm{m>1502:R,m>882:A,a<606:A,A}
|
||||
zsg{x>3633:A,A}
|
||||
fdr{x<2575:A,R}
|
||||
xg{m>2572:A,a<59:R,A}
|
||||
vq{s<411:R,a<2945:A,R}
|
||||
gkr{s>3186:A,x>3478:nfb,s>2590:dv,R}
|
||||
jj{m>351:R,x<2330:R,A}
|
||||
fr{s>1144:R,s>1127:A,R}
|
||||
rt{a>3344:R,R}
|
||||
ln{m>3309:A,A}
|
||||
ch{s<3179:R,a>2826:R,rd}
|
||||
jmb{a>3549:R,R}
|
||||
lhp{s<2235:A,m>2701:R,m>2626:A,R}
|
||||
tt{a<3326:R,a>3698:A,A}
|
||||
sl{x<782:nbh,s>994:lkq,hnx}
|
||||
xsp{m<832:A,A}
|
||||
bcb{m<1059:R,A}
|
||||
jzk{a<392:A,A}
|
||||
qr{x>1414:A,s<2146:A,A}
|
||||
lzl{a<394:A,R}
|
||||
df{s>590:R,s<332:xzt,R}
|
||||
vls{m<1602:qlt,m<2715:lht,s<2608:tvf,fdd}
|
||||
xxp{s<3569:nqg,a<777:R,x<756:mjr,A}
|
||||
qpx{x<1460:A,A}
|
||||
qn{s>1487:A,m<675:R,x>3304:R,A}
|
||||
lqf{s>2544:R,m<2472:gz,R}
|
||||
bs{m>3019:R,m>2339:R,R}
|
||||
tkg{s<2861:R,R}
|
||||
sr{a>534:R,a>185:rrq,A}
|
||||
pr{x<2906:tl,A}
|
||||
zk{a<2476:qgr,s<2925:fns,s<3101:xkg,ch}
|
||||
kf{x<3638:A,R}
|
||||
xcr{m>2307:R,x<3357:R,a<2010:A,A}
|
||||
rkq{a<688:mjx,a<959:A,R}
|
||||
bh{m<947:zr,s>1275:fl,R}
|
||||
lm{m>2643:qqn,a>3231:A,pkf}
|
||||
tr{s>2521:R,R}
|
||||
lfs{s>769:fkb,s>712:A,A}
|
||||
xz{a>3913:A,a<3873:R,A}
|
||||
mjx{s>1084:A,x>2705:A,s<923:R,R}
|
||||
xlb{x>3614:dqp,m>2061:A,cdv}
|
||||
zqq{s>1046:hm,sr}
|
||||
xfr{m<3014:qnv,fgl}
|
||||
dbt{a<956:R,s<2691:R,s<2752:R,R}
|
||||
fhh{x<1734:txc,a>2962:mdk,cg}
|
||||
gq{a>146:A,s<3234:R,x<3295:A,R}
|
||||
qf{x<3200:R,x<3230:R,s>3278:R,A}
|
||||
cdt{x>3462:gzv,a<562:R,x>3217:gg,R}
|
||||
xzt{a<2851:R,x>1470:A,m>3329:R,A}
|
||||
sj{a<1691:A,x<3862:A,a<1866:A,R}
|
||||
hsm{x<1953:A,A}
|
||||
xqb{a>2533:A,R}
|
||||
qb{x>778:gpg,s>3739:fn,kcd}
|
||||
xzr{x>2124:A,R}
|
||||
tnx{a<3540:R,m>951:R,R}
|
||||
xmh{m<1107:R,a>639:R,R}
|
||||
gf{a>3197:vg,pmt}
|
||||
kbz{m<2517:js,x>2496:pcn,x>2425:hf,dgj}
|
||||
qkp{m<3678:A,R}
|
||||
trb{a>1335:A,m<2394:A,A}
|
||||
rcm{a<2390:xgz,s<1270:tfn,m<2577:xlb,xld}
|
||||
kq{x<2984:A,m<601:A,R}
|
||||
bc{a>646:R,A}
|
||||
sjl{x>3105:R,A}
|
||||
gpg{m<3530:qln,qrc}
|
||||
lxs{x>3313:R,s<3288:A,kv}
|
||||
mv{x>1402:A,s<2939:A,m>959:xqb,tz}
|
||||
lfd{m>2983:R,s<2543:A,m<2873:R,R}
|
||||
tgn{s>3028:A,s<2954:A,m>3355:A,R}
|
||||
tf{x>869:fhh,x<448:vs,x>684:hsr,xv}
|
||||
qnk{s<2742:xhz,mv}
|
||||
qt{x>3036:vm,a>3434:R,A}
|
||||
mgl{x>431:A,m>2631:R,A}
|
||||
bzb{s<3312:A,s<3720:hb,cb}
|
||||
rbt{x>1240:A,x<1041:A,s<2792:A,A}
|
||||
lj{x<3081:A,x>3573:fv,R}
|
||||
cp{a<3760:A,x<104:R,a<3871:A,R}
|
||||
sn{a<610:zpg,A}
|
||||
sd{a<3746:A,R}
|
||||
zmg{m<1681:R,s<3671:R,R}
|
||||
ghl{s>1536:R,x<3612:A,s>1287:R,R}
|
||||
mq{a<563:A,s<347:R,x<149:R,A}
|
||||
dsx{s>841:zls,nx}
|
||||
vs{a<3376:jk,hcs}
|
||||
fv{a<3819:A,a>3888:R,s<2966:R,A}
|
||||
rd{s<3246:R,R}
|
||||
nk{x<2560:nrz,ssz}
|
||||
mdk{x<2220:R,R}
|
||||
pf{s<2767:R,R}
|
||||
pmv{m>2273:A,m>1913:R,A}
|
||||
mc{m>402:qj,s<3604:R,x<507:A,A}
|
||||
zkp{a<1671:A,A}
|
||||
jdz{m<1778:tf,ttt}
|
||||
lht{s>2762:sx,m<2034:R,fm}
|
||||
jp{m<2417:R,x>3602:R,A}
|
||||
hg{x<3816:A,a<3754:R,m<636:R,A}
|
||||
ts{x<1201:A,s<299:A,R}
|
||||
hdg{a<884:A,R}
|
||||
sth{x>898:R,x>517:A,a<447:R,A}
|
||||
vc{x>833:A,R}
|
||||
ds{a<1515:R,R}
|
||||
pmt{s<1724:jm,m>2587:cl,qrz}
|
||||
qc{x<733:A,R}
|
||||
ssz{s>1944:hsp,A}
|
||||
td{m<2680:A,A}
|
||||
ql{m>1880:lpl,s>1345:R,pm}
|
||||
kh{x<1677:rrd,s<777:vlz,A}
|
||||
njl{m>2017:A,a<624:A,R}
|
||||
xxx{x<3667:rc,s>1145:hg,a<3727:R,rm}
|
||||
nxs{m>3620:R,m<3459:R,A}
|
||||
gj{m>3010:R,s<3438:R,x>1282:A,R}
|
||||
xvg{a<3524:A,s<418:A,m<2681:A,R}
|
||||
mjr{s>3683:A,a<1639:A,x>341:A,A}
|
||||
mbr{m>3538:R,x<897:R,s>2681:R,R}
|
||||
mmg{a<3144:A,A}
|
||||
kn{m>1078:A,s<1887:R,R}
|
||||
ht{m<936:nl,x<3389:vjj,cd}
|
||||
tn{m<1847:tj,s<3696:nbt,s>3815:svc,rbm}
|
||||
ncf{a<332:A,xmh}
|
||||
lc{x<293:A,s<1777:A,a>3569:R,R}
|
||||
gqt{s<638:R,A}
|
||||
gtk{x<1867:lb,A}
|
||||
txf{s>1100:fr,R}
|
||||
hkn{s>3748:czr,m<2175:xxp,zx}
|
||||
zpx{m<3448:A,a<3506:A,A}
|
||||
dlj{x>3324:A,m>2976:A,R}
|
||||
vm{a<3394:R,a<3772:R,R}
|
||||
gcp{m<3549:R,s<3753:A,m<3801:A,sth}
|
||||
lck{x<1530:rcj,th}
|
||||
vp{m<2446:A,pb}
|
||||
rxs{m>2148:xfr,x>2413:bnd,m<925:mn,bpd}
|
||||
rr{m>2769:A,A}
|
||||
lp{a<3631:dd,A}
|
||||
jl{m<2480:A,R}
|
||||
ttp{a<1440:A,R}
|
||||
bvr{m<1376:R,a<2606:A,x>312:A,A}
|
||||
nfd{s>2564:rh,s<1039:mcj,m<2531:qd,bf}
|
||||
cd{x<3668:R,x>3840:ttp,x>3765:cf,A}
|
||||
ctk{x<362:R,a>1685:A,x>543:R,A}
|
||||
lx{x>944:rmb,a<856:ncf,x<341:rgt,jkc}
|
||||
xn{a<528:R,s<698:R,x>2513:A,R}
|
||||
ld{a>3069:R,a>2737:R,A}
|
||||
lf{x>636:R,m>1627:bs,A}
|
||||
btr{m>2761:czv,s<2146:A,lhp}
|
||||
sc{s<3669:A,x>3260:A,a>1921:R,R}
|
||||
fgl{a<1538:jkd,x>2095:R,m>3384:A,zq}
|
||||
tvf{a>646:R,lq}
|
||||
dxf{s>1265:pgb,s>591:jdh,lm}
|
||||
pg{a>2684:kcs,ln}
|
||||
nl{s<1687:A,s<2645:tfk,zkp}
|
||||
mhx{x>3495:R,A}
|
||||
djk{m>3229:R,R}
|
||||
vpf{s>467:tnx,A}
|
||||
hxc{a<1252:R,a<1437:R,A}
|
||||
hn{x<1490:rz,x<2950:dtk,lr}
|
||||
jm{s>1371:vp,s<1194:txf,a>2796:rg,hl}
|
||||
zqk{s<732:A,a>3079:R,R}
|
||||
hj{x<3237:R,A}
|
||||
mlj{a<1660:R,A}
|
||||
hsp{a>505:R,a>190:A,a>109:R,R}
|
||||
fng{s<411:qc,dbq}
|
||||
htk{s>2864:pzb,s<2590:lx,x>908:kp,vdr}
|
||||
ck{x>1172:A,a>809:R,R}
|
||||
dxd{s>2128:R,R}
|
||||
vvx{s>798:rkq,s<425:sn,x<2568:qmb,ff}
|
||||
bn{x>3635:R,A}
|
||||
qgr{m<3073:A,R}
|
||||
lxp{x>789:R,a>968:cgj,a<346:gm,R}
|
||||
lhd{a>1548:phc,a<1397:gc,s>649:A,ls}
|
||||
qhj{m<3630:A,s<2526:A,x<3209:A,R}
|
||||
zz{a<832:R,a>852:A,A}
|
||||
dm{m>685:A,x<398:A,m<325:R,A}
|
||||
xtb{m<59:R,R}
|
||||
mxt{a<959:A,s>448:A,A}
|
||||
zf{s<1534:A,a<2456:A,m>870:R,R}
|
||||
kcs{a<2970:R,A}
|
||||
nbt{s<3490:A,s<3621:R,jmb}
|
||||
xf{m>1414:R,a>758:R,A}
|
||||
trh{s>1864:fjm,A}
|
||||
gg{m<1992:A,A}
|
||||
lq{a>634:A,R}
|
||||
mmb{a>956:A,A}
|
||||
nbh{s>1081:jmk,a>1242:jkl,s>435:tnz,rb}
|
||||
rcj{m<2679:R,a>3271:tkg,mbr}
|
||||
rl{s>2985:R,A}
|
||||
tnz{x<505:R,A}
|
||||
kv{m>2334:R,x>3309:R,R}
|
||||
in{a>2167:chj,hn}
|
||||
dr{s>809:A,A}
|
||||
nj{a<3614:dk,m<1828:bh,dn}
|
||||
dqp{x>3865:A,a<2461:R,A}
|
||||
brn{s<898:gd,m>2816:A,a>3580:R,R}
|
||||
hhq{a<2868:stl,R}
|
||||
hjc{a<231:R,s>2817:A,s<2334:R,R}
|
||||
zb{a>3194:A,A}
|
||||
hx{s>3290:cbx,a<3076:ccz,jh}
|
||||
bf{x<1862:bfx,x>2056:lzl,m<3362:rdq,hsm}
|
||||
trr{s<2831:R,m<1406:R,m>2129:A,A}
|
||||
vb{x>3196:A,m>3164:A,R}
|
||||
dv{m>2200:R,a<91:R,s<2940:A,R}
|
||||
zkl{x<2284:A,s<1097:R,R}
|
||||
gpj{x>1371:A,R}
|
||||
cst{s<2470:R,s>2812:A,a<643:A,A}
|
||||
bvc{s<1676:R,a>1007:A,s>1915:R,A}
|
||||
rg{s<1279:A,a>3062:mmg,m>2345:lxk,A}
|
||||
nzl{a>3748:xx,x>3703:R,kcr}
|
||||
tj{a<3652:pc,zc}
|
||||
kz{m>2638:A,R}
|
||||
tm{x<3457:jvm,x<3680:dt,lqf}
|
||||
jb{m>2515:njp,a>649:xzq,A}
|
||||
scr{m>765:R,m>326:R,s>1957:zp,cnx}
|
||||
jg{s>164:R,x<938:R,R}
|
||||
vst{m>1299:vn,A}
|
||||
vn{a>3343:R,s>2614:A,m>1576:A,A}
|
||||
phn{s>1416:mmv,x>1736:R,A}
|
||||
qrz{s>2030:qr,a<2576:xb,gmv}
|
||||
cx{x<662:R,a>2695:A,a<2609:A,R}
|
||||
pcn{x>2550:R,x>2521:R,s>3302:A,R}
|
||||
kcr{a<3651:R,A}
|
||||
cdh{x<3746:xsp,xj}
|
||||
ml{a<1180:A,m<1386:R,s<2716:R,R}
|
||||
qp{s>2644:krm,m<328:A,s<2515:R,rxh}
|
||||
gd{m<2876:R,s>766:R,x<1002:R,R}
|
||||
jkl{x>315:R,A}
|
||||
kxf{a>1649:msb,s<2716:R,x>3763:A,hxc}
|
||||
qdj{m<3458:A,R}
|
||||
xc{a<1445:A,s<266:A,s<432:A,A}
|
||||
pgb{x>3259:A,A}
|
||||
js{m<1511:R,a<647:R,m<2107:R,A}
|
||||
pc{a<3528:A,a<3599:R,A}
|
||||
sf{s<1122:hr,R}
|
||||
tnd{m>1346:lzm,a>253:cdh,bzb}
|
||||
pz{a>275:dgc,x>3327:fq,x<3304:lvf,lxs}
|
||||
zh{s>2600:R,s<2473:A,x>3528:A,R}
|
||||
rgt{s<2437:R,a<1721:R,m>700:A,zhs}
|
||||
qg{m>2511:shq,bn}
|
||||
hh{x>1614:A,x>724:R,R}
|
||||
xj{m>719:R,x>3904:A,R}
|
||||
dlf{m>425:zgc,s<2770:A,zj}
|
||||
zd{x>3507:ng,a<235:gkr,jzk}
|
||||
lvf{x>3283:gq,x>3271:scf,s>3336:zmg,R}
|
||||
bq{s<1389:ngv,x>3685:sz,a<2449:scr,nnp}
|
||||
stl{s<3570:R,a>2493:R,m>1923:R,R}
|
||||
jkd{x>2287:A,s>2347:R,R}
|
||||
rrd{a<3633:R,s<866:A,R}
|
||||
qdz{a<797:pt,x>3479:tzv,x<3219:nzq,pcl}
|
||||
cnx{m<154:R,R}
|
||||
vdr{m>821:ml,x<535:dlf,x<709:fdl,lxp}
|
||||
zbx{x<2640:kbz,gzj}
|
||||
ccz{m<2225:qnk,zk}
|
||||
rhl{m>442:xzr,m>160:ptv,x<2137:R,xtb}
|
||||
xx{s>1208:R,s>494:A,m>2651:R,A}
|
||||
vqd{m<1086:A,R}
|
||||
ft{x>3082:qf,A}
|
||||
vfx{x>3029:A,a<354:R,s<1613:A,R}
|
||||
vlz{x>1977:A,m<3547:R,A}
|
||||
xb{x<1540:db,a<2432:kn,A}
|
||||
vg{s>1485:pch,nj}
|
||||
cps{a>347:A,s>1568:R,R}
|
||||
ph{x>3890:R,x<3840:A,A}
|
||||
nkb{a<1522:vb,s>3017:qm,a>1866:xr,sbk}
|
||||
czv{a>2319:R,a<2240:A,m<2945:R,R}
|
||||
rz{s<2233:sl,m<1762:htk,cqg}
|
||||
jqh{m<2732:R,s<698:R,R}
|
||||
cl{s<1943:pg,m>3067:jc,a>2554:zbf,btr}
|
||||
qj{s>3571:R,s>3203:R,s>3040:R,A}
|
||||
bnd{x>2730:ds,vzf}
|
||||
dk{s>1261:qpx,hh}
|
||||
jdh{s>885:zb,m<1833:A,a>3267:R,zqk}
|
||||
zmd{x<1887:R,s>2777:R,A}
|
||||
zr{x<1015:R,A}
|
||||
mzz{a<2762:R,m<1597:R,A}
|
||||
mt{x>2830:R,A}
|
||||
fm{s>2355:A,a<640:A,A}
|
||||
cgj{a>1400:A,A}
|
||||
kkv{m>2421:R,m<1271:A,x>1461:A,R}
|
||||
jnm{s>3324:tb,xf}
|
||||
mmv{s<2291:A,m>589:R,R}
|
||||
nzq{x<3080:R,x<3161:A,x>3193:pk,R}
|
||||
qqn{a<3324:A,m>3316:A,s<353:R,A}
|
||||
zg{m>3397:A,s<2871:hzq,R}
|
||||
bx{s>2715:rbt,R}
|
||||
rb{s<200:A,x<338:mq,a<445:A,hdg}
|
||||
pzb{m<1052:mc,jnm}
|
||||
pjj{s<3810:fdr,s<3840:A,x<2865:R,lqm}
|
||||
vbb{x<3142:dsx,a>2939:kk,bd}
|
||||
grs{a<1727:R,R}
|
||||
xkk{s<839:sjl,x<3094:vfx,A}
|
||||
gbn{s>374:A,R}
|
||||
jd{m<1657:R,A}
|
||||
vh{a>1414:grs,tv}
|
||||
cfk{s>2792:R,R}
|
||||
xkg{m>3401:qkp,rl}
|
||||
qq{x>2570:A,s>1833:R,A}
|
||||
rdr{x<3603:A,A}
|
||||
vkp{x<2182:A,s>389:A,a<2301:R,R}
|
||||
fjt{a>1688:jj,x>2307:A,s<2361:zkl,R}
|
||||
gm{m>354:R,a<186:A,A}
|
||||
prx{s>1512:A,s>1435:A,A}
|
||||
gql{a<2017:A,x<1851:A,x>2090:A,R}
|
||||
qnv{s<2438:A,mlj}
|
||||
jc{s<2139:cfc,x>1303:R,jhn}
|
||||
gvv{a>557:ck,zhj}
|
||||
shq{a>2621:R,x<3568:A,m<3296:A,R}
|
||||
hsr{x<777:fng,pvk}
|
||||
cdv{m>1882:A,a<2476:A,A}
|
||||
xgz{s>1149:jl,mhx}
|
||||
zls{m>2280:tqt,pr}
|
||||
nb{s<3894:R,m<3347:R,a<1324:R,A}
|
||||
cf{x<3811:A,a<1522:R,a<1937:R,A}
|
||||
hzq{a<3667:A,A}
|
||||
cbx{a>3297:tn,cz}
|
||||
krm{s<2733:A,R}
|
||||
cc{s<663:fp,R}
|
||||
phc{x<1414:A,m<2002:R,R}
|
||||
kj{a>2731:R,R}
|
||||
vnf{m<1410:ft,tjk}
|
||||
mzl{s>3266:xd,kxf}
|
||||
gh{s>1682:R,m<694:A,A}
|
||||
nfb{m<2177:R,s<2536:A,a<136:A,A}
|
||||
hl{x<1454:jpc,vkz}
|
||||
dtt{a<3598:R,m<3110:A,R}
|
||||
hf{s<3174:A,A}
|
||||
mf{s>2274:R,A}
|
||||
tfs{x>1223:dbt,a>841:A,R}
|
||||
sz{s<1802:zf,s>2097:R,R}
|
||||
hnx{x<1072:rf,x<1295:scx,a<1163:fh,lhd}
|
||||
cqg{s<3299:vh,m<2775:hkn,a>1114:qb,rsq}
|
||||
qln{a>1673:A,R}
|
||||
pxc{a>2657:R,a>2381:A,A}
|
||||
krh{s<291:R,m<2436:A,A}
|
||||
dt{x>3600:srr,s>2701:R,s>2405:zh,mf}
|
||||
tp{x<2421:A,a<498:R,a<740:R,R}
|
||||
fl{m>1485:R,a>3798:A,A}
|
||||
fdd{s<2907:R,a>639:R,tgn}
|
||||
pk{s>3341:A,A}
|
||||
xr{m<2706:xcr,m<3181:lfd,a>2002:qhj,A}
|
||||
vtx{s>2820:R,m>1639:A,R}
|
||||
hvk{m>1133:ph,R}
|
||||
nr{m<2779:A,m<3519:R,R}
|
||||
ff{s>646:A,a<407:A,R}
|
||||
xzq{x<3589:A,R}
|
||||
fh{x>1421:kkv,a<445:A,s>409:A,gpj}
|
||||
vgk{s>907:R,m>1141:R,s<452:A,qx}
|
||||
sx{a<650:A,s>2903:A,A}
|
||||
xhz{x>1449:tmc,m>935:mzz,a<2771:A,vc}
|
||||
th{m>2597:R,R}
|
||||
nx{x<2811:np,a<2883:jx,x>2968:qt,gl}
|
||||
zgc{x<233:A,s>2710:A,s>2651:A,R}
|
||||
cfc{x>1027:A,A}
|
||||
pvk{m>968:A,x<822:A,m<356:vq,ld}
|
||||
ls{x<1420:A,A}
|
||||
fn{a<1688:nb,s>3909:A,A}
|
||||
qx{m<1058:R,m>1087:A,s<691:R,R}
|
||||
tfn{s<568:krh,a<2462:jp,x>3504:dnh,R}
|
||||
nv{m<2414:ll,m<3178:R,s<1651:A,R}
|
||||
txm{a>3840:rdr,x<3493:sf,m<1870:xxx,nzl}
|
||||
fs{m>370:A,x>656:A,A}
|
||||
lzb{x<3553:A,a<260:A,R}
|
||||
scx{m<2306:R,mxt}
|
||||
pm{x>1758:A,R}
|
||||
rs{m<837:rt,a<3366:A,kf}
|
||||
vt{m<1064:A,s<373:R,m<1360:R,R}
|
||||
jst{a>676:qdz,s>3154:cj,a>616:vls,tm}
|
||||
gz{s<2338:A,s<2438:R,A}
|
||||
jvm{a<572:A,x>3220:R,bcx}
|
||||
mhq{m<1439:A,s>2440:R,R}
|
||||
fns{s<2559:zn,a<2754:kms,R}
|
||||
jk{x<171:htv,m>942:bvr,hcb}
|
||||
zbf{a>2970:A,R}
|
||||
cz{x<1546:lf,s<3744:hhq,s>3856:tk,pjj}
|
||||
rf{s>369:xrr,jg}
|
||||
vbm{m<2344:sd,x<1876:zg,a>3666:lj,zpx}
|
||||
xv{a<2788:cdl,x<566:gbn,vpf}
|
||||
zp{m>201:A,m<128:R,x<3340:R,A}
|
||||
lqm{m>1799:A,x>3463:A,s<3848:R,R}
|
||||
jpc{x>531:A,x>317:R,m<2632:A,R}
|
||||
lzm{a<231:R,s>3024:R,pmv}
|
||||
qlt{x<3440:cst,bc}
|
||||
lt{a>2699:rgx,s>370:bdc,s>149:qzq,xt}
|
||||
mxr{s<485:R,a>1675:R,a<1193:R,A}
|
||||
fds{m<2448:nz,m<3000:xkk,dr}
|
||||
ll{x<1132:A,x<1280:R,a<1573:A,R}
|
||||
kms{s<2765:A,x<2309:A,m<3173:A,A}
|
||||
gb{s<3891:R,R}
|
||||
dgc{a<411:A,a<452:jd,a>498:A,R}
|
||||
tb{s>3700:R,A}
|
||||
lr{a>879:jhf,s<2053:cht,a<524:nrf,jst}
|
||||
rmb{m>1101:mhq,x>1215:A,R}
|
||||
jkc{m<1158:qgh,A}
|
||||
tz{s>3126:R,m>419:A,A}
|
||||
sbk{x>3333:R,R}
|
||||
zhj{x>1246:R,s<1716:R,m<1604:R,R}
|
||||
vjj{x<3215:R,m>1566:dxd,x<3278:hj,A}
|
||||
hr{s>540:R,m<2033:R,s<282:R,A}
|
||||
cj{s<3589:fx,a>597:jb,cdt}
|
||||
gn{a<1595:R,x<3715:A,R}
|
||||
hcs{x>172:vt,s>635:A,cp}
|
||||
nqg{s>3402:A,R}
|
||||
vzf{a<1644:qq,R}
|
||||
tv{m<3244:A,R}
|
||||
dmq{a>3689:A,a<3475:A,s<1971:lc,A}
|
||||
nrf{x>3585:tnd,x<3263:vnf,x<3447:pz,zd}
|
||||
xld{s<1715:A,A}
|
||||
rdq{a<516:R,A}
|
||||
bqr{x<3847:R,R}
|
||||
rfz{s<1041:mxr,a>1573:R,a>1257:dlj,bvc}
|
||||
nzk{x<3557:A,R}
|
||||
jf{s<3564:A,x<974:R,s>3672:R,A}
|
||||
nz{s<1151:rqr,cps}
|
||||
pcl{s<2881:zz,A}
|
||||
rh{a>449:R,m<2584:R,xps}
|
||||
pb{a<2666:A,a<2952:R,A}
|
||||
nrd{s>1704:R,s>1330:prx,a<1711:A,zsg}
|
||||
qtd{s<612:ts,m<2565:lfs,m>3280:kh,brn}
|
||||
pkf{x<3271:R,a>3042:A,s>205:A,A}
|
||||
fkb{s>865:R,s>823:A,A}
|
||||
dtk{a>1109:rxs,vrt}
|
||||
gmv{s<1859:R,R}
|
||||
gl{m<1353:vmq,x>2904:nr,x<2843:jxq,xvg}
|
||||
nnp{s>1853:R,s>1577:gh,x<3502:qn,A}
|
||||
vv{x<2224:A,m<1830:R,A}
|
||||
vx{x<2424:vqd,s>2665:kq,tr}
|
||||
zn{s<2449:R,x>2073:A,R}
|
||||
tzv{a>840:vtx,m>2659:A,gqn}
|
||||
czr{m>2158:gb,R}
|
||||
pch{x>902:gtk,x<487:dmq,s>1811:cq,lp}
|
||||
fx{s>3350:ksm,x>3372:A,njl}
|
||||
dd{a>3392:A,a>3268:A,x<645:A,R}
|
||||
xps{x>1814:R,R}
|
||||
mcj{x>2067:R,A}
|
||||
jds{a>3112:R,A}
|
||||
rxh{a>3347:A,s>2592:R,m<507:A,R}
|
||||
bd{m<1603:bq,a>2541:sb,rcm}
|
||||
lpl{x<1753:R,a<1523:A,R}
|
||||
ng{s>2948:nzk,lzb}
|
||||
pt{m<2493:trr,m<3406:cfk,a>741:A,R}
|
||||
mn{x<1933:phn,x>2246:fjt,rhl}
|
||||
tl{x>2685:A,x>2615:A,R}
|
||||
bpd{s>2076:bk,m<1552:vgk,x<1995:ql,vv}
|
||||
fdl{x>616:fs,a>810:R,x<564:pf,xl}
|
||||
cg{a<2496:vkp,A}
|
||||
jhn{m>3393:R,m<3279:R,A}
|
||||
sb{a<2675:qg,s>1560:trh,a<2768:djq,bb}
|
||||
tqt{s<1353:A,R}
|
||||
scf{a<158:R,R}
|
||||
vkz{a>2439:R,A}
|
||||
hm{a>431:ghl,R}
|
||||
rqg{m>2575:R,x>556:A,a>2512:A,A}
|
||||
htv{m<997:R,m<1506:R,s>542:R,R}
|
||||
hcb{m>466:A,a<2797:A,m>284:R,R}
|
||||
rc{x>3561:R,a<3753:A,R}
|
||||
nrz{a<653:A,x>2483:R,mmb}
|
||||
rsq{s>3533:gcp,qsx}
|
||||
cdl{x<594:clm,a<2563:gqt,x<633:A,cx}
|
||||
ngv{s>869:pxc,s>544:bcb,x<3499:A,A}
|
||||
vbq{s>2895:ghp,a<3253:vx,m<696:qp,vst}
|
||||
db{a<2416:A,x>775:R,m>1331:A,A}
|
||||
rgd{m<3005:zfk,s>584:gn,m<3486:xc,kfj}
|
||||
nh{a>3582:R,m>1171:A,s>2047:A,A}
|
||||
kzx{m>2108:rr,x>3758:hvk,rs}
|
||||
xm{a<2478:R,s<286:R,m>2319:R,R}
|
||||
gc{m>1801:R,s<426:A,A}
|
||||
jmk{m<1508:dm,m<2671:A,a<1026:A,ctk}
|
||||
txc{x<1334:tt,A}
|
||||
tjk{x<3091:R,a<312:R,A}
|
||||
rgx{a<2981:R,s<685:A,jds}
|
||||
srr{s>2719:R,m>2597:R,x<3647:R,A}
|
||||
dn{a<3852:R,xz}
|
||||
zc{s>3736:R,x>2493:A,x>1496:R,A}
|
||||
qd{s>2041:R,x>1781:A,R}
|
||||
jh{a>3404:vbm,m<1726:vbq,lck}
|
||||
gqn{m<1677:R,x<3729:A,m<2060:A,A}
|
||||
zq{a>1828:A,A}
|
||||
bb{a<2825:R,s<1018:R,R}
|
||||
qmb{x<2466:tp,s>573:xn,R}
|
||||
fq{a<148:xg,m>1807:hjc,A}
|
||||
kp{m>841:bx,tfs}
|
||||
xl{x>592:A,s<2710:A,a<480:R,R}
|
||||
cht{x<3317:fds,zqq}
|
||||
rm{s>708:R,R}
|
||||
zx{m>2501:jf,a<954:R,m<2318:A,A}
|
||||
rqr{m<1218:A,m<1825:R,R}
|
||||
lkq{a<983:gvv,nv}
|
||||
xrr{x>961:A,x<901:R,R}
|
||||
qh{x>2768:A,a<3300:R,m<3254:A,A}
|
||||
vmq{a<3627:R,a<3872:R,a<3943:A,R}
|
||||
qm{m<3328:sc,s<3556:A,m>3589:sp,qdj}
|
||||
xd{m<2717:trb,m<3353:sj,nxs}
|
||||
qrc{x<1219:A,R}
|
||||
fp{m>2282:A,R}
|
||||
svc{x<1578:A,x<2619:A,s>3904:kz,dtt}
|
||||
bfx{a<463:A,a<685:R,m>3342:R,R}
|
||||
dgj{m>3248:R,a>373:A,x<2392:A,R}
|
||||
hb{m<468:R,s<3450:R,A}
|
||||
gzv{m<2066:A,x>3762:A,a<559:A,A}
|
||||
tfk{a>1442:R,x>3478:R,A}
|
||||
djq{m>2471:kj,R}
|
||||
zfk{m<2582:R,s<665:R,R}
|
||||
dnh{m>2463:R,m>2120:A,A}
|
||||
qgh{x<731:R,m<573:R,s<2388:A,R}
|
||||
dx{m<2824:cc,df}
|
||||
ttt{a>3204:qtd,x<893:lt,dx}
|
||||
kfj{m>3806:R,m<3668:R,s>340:A,R}
|
||||
rrq{s>458:A,x>3569:R,R}
|
||||
clm{s>410:A,s>167:R,A}
|
||||
xt{m<3146:A,R}
|
||||
vsr{s<3421:A,A}
|
||||
np{x<2718:R,m<2531:A,qh}
|
||||
lxk{x<888:R,a>2893:R,A}
|
||||
br{a<210:A,A}
|
||||
cb{m<843:R,a>120:A,x>3826:A,R}
|
||||
bdc{a>2355:rqg,a<2266:jqh,a>2320:td,mgl}
|
||||
njp{a<633:A,R}
|
||||
bk{a>1796:gql,m<1358:zmd,m>1825:A,A}
|
||||
tmc{x>3023:R,R}
|
||||
dbq{s<741:R,A}
|
||||
tk{s<3950:A,s<3970:mt,x<2569:R,R}
|
||||
cq{m>2542:djk,nh}
|
||||
|
||||
{x=797,m=1039,a=391,s=528}
|
||||
{x=2289,m=300,a=1584,s=196}
|
||||
{x=954,m=93,a=607,s=1988}
|
||||
{x=1432,m=395,a=965,s=639}
|
||||
{x=1251,m=3236,a=34,s=579}
|
||||
{x=124,m=32,a=2829,s=2331}
|
||||
{x=1322,m=36,a=848,s=1279}
|
||||
{x=144,m=3450,a=3,s=3497}
|
||||
{x=1490,m=2205,a=1062,s=43}
|
||||
{x=82,m=581,a=917,s=64}
|
||||
{x=426,m=360,a=406,s=2325}
|
||||
{x=903,m=1148,a=2024,s=1317}
|
||||
{x=1244,m=1284,a=503,s=959}
|
||||
{x=822,m=2553,a=132,s=229}
|
||||
{x=1712,m=2155,a=2103,s=1734}
|
||||
{x=498,m=1757,a=2591,s=1737}
|
||||
{x=2085,m=440,a=105,s=1625}
|
||||
{x=543,m=1928,a=217,s=24}
|
||||
{x=894,m=110,a=99,s=473}
|
||||
{x=377,m=1927,a=2263,s=3432}
|
||||
{x=178,m=9,a=3305,s=2256}
|
||||
{x=34,m=277,a=471,s=639}
|
||||
{x=403,m=154,a=1871,s=1139}
|
||||
{x=662,m=1151,a=37,s=526}
|
||||
{x=1550,m=2909,a=481,s=1614}
|
||||
{x=272,m=1674,a=67,s=2356}
|
||||
{x=152,m=211,a=1420,s=1256}
|
||||
{x=1113,m=1378,a=113,s=1930}
|
||||
{x=2040,m=2575,a=1092,s=531}
|
||||
{x=693,m=772,a=73,s=843}
|
||||
{x=1,m=1347,a=834,s=4}
|
||||
{x=1270,m=1653,a=1823,s=1582}
|
||||
{x=304,m=385,a=243,s=2712}
|
||||
{x=1619,m=650,a=771,s=596}
|
||||
{x=2324,m=873,a=67,s=43}
|
||||
{x=1210,m=487,a=917,s=1167}
|
||||
{x=1272,m=173,a=1613,s=731}
|
||||
{x=188,m=1010,a=184,s=1612}
|
||||
{x=1315,m=2730,a=28,s=2682}
|
||||
{x=1899,m=966,a=312,s=138}
|
||||
{x=458,m=1260,a=1333,s=1023}
|
||||
{x=399,m=2098,a=122,s=103}
|
||||
{x=290,m=232,a=333,s=2521}
|
||||
{x=853,m=624,a=189,s=760}
|
||||
{x=271,m=652,a=1882,s=90}
|
||||
{x=75,m=389,a=524,s=758}
|
||||
{x=800,m=416,a=706,s=717}
|
||||
{x=1188,m=307,a=51,s=33}
|
||||
{x=1201,m=888,a=3423,s=650}
|
||||
{x=2964,m=978,a=2323,s=75}
|
||||
{x=949,m=536,a=758,s=2114}
|
||||
{x=1226,m=3552,a=790,s=13}
|
||||
{x=100,m=48,a=255,s=194}
|
||||
{x=1533,m=2176,a=1889,s=1173}
|
||||
{x=109,m=1433,a=345,s=176}
|
||||
{x=1772,m=81,a=1833,s=745}
|
||||
{x=482,m=277,a=815,s=341}
|
||||
{x=94,m=39,a=1093,s=67}
|
||||
{x=1761,m=2080,a=18,s=8}
|
||||
{x=514,m=554,a=1270,s=354}
|
||||
{x=604,m=378,a=47,s=879}
|
||||
{x=799,m=39,a=186,s=161}
|
||||
{x=448,m=2282,a=98,s=88}
|
||||
{x=133,m=363,a=179,s=622}
|
||||
{x=253,m=34,a=823,s=52}
|
||||
{x=144,m=1413,a=267,s=3729}
|
||||
{x=619,m=1895,a=611,s=170}
|
||||
{x=2301,m=3461,a=2609,s=529}
|
||||
{x=397,m=69,a=2421,s=117}
|
||||
{x=15,m=1333,a=94,s=46}
|
||||
{x=569,m=1540,a=1609,s=685}
|
||||
{x=1975,m=887,a=3087,s=203}
|
||||
{x=1690,m=2970,a=1630,s=899}
|
||||
{x=2028,m=17,a=391,s=2716}
|
||||
{x=237,m=984,a=3185,s=1656}
|
||||
{x=1225,m=2146,a=845,s=1456}
|
||||
{x=1916,m=694,a=687,s=21}
|
||||
{x=1047,m=752,a=2041,s=1562}
|
||||
{x=2358,m=673,a=556,s=1234}
|
||||
{x=637,m=241,a=877,s=1078}
|
||||
{x=2434,m=109,a=132,s=2856}
|
||||
{x=1530,m=155,a=572,s=362}
|
||||
{x=779,m=172,a=1967,s=1212}
|
||||
{x=1209,m=1637,a=1105,s=93}
|
||||
{x=1511,m=744,a=2089,s=638}
|
||||
{x=1564,m=240,a=284,s=927}
|
||||
{x=78,m=261,a=565,s=934}
|
||||
{x=30,m=41,a=3435,s=15}
|
||||
{x=117,m=900,a=659,s=125}
|
||||
{x=844,m=2713,a=331,s=14}
|
||||
{x=880,m=31,a=222,s=442}
|
||||
{x=604,m=1172,a=908,s=855}
|
||||
{x=1332,m=2063,a=1210,s=454}
|
||||
{x=1277,m=32,a=2631,s=95}
|
||||
{x=444,m=460,a=23,s=1595}
|
||||
{x=1317,m=1377,a=448,s=284}
|
||||
{x=520,m=1540,a=196,s=1057}
|
||||
{x=2225,m=268,a=981,s=1980}
|
||||
{x=892,m=1,a=457,s=3123}
|
||||
{x=335,m=2375,a=1949,s=305}
|
||||
{x=789,m=374,a=201,s=596}
|
||||
{x=3058,m=1588,a=952,s=2199}
|
||||
{x=1773,m=56,a=110,s=2339}
|
||||
{x=1009,m=602,a=616,s=1043}
|
||||
{x=66,m=442,a=161,s=108}
|
||||
{x=249,m=1400,a=3486,s=559}
|
||||
{x=44,m=341,a=214,s=1060}
|
||||
{x=3973,m=353,a=953,s=817}
|
||||
{x=1456,m=2149,a=2871,s=2116}
|
||||
{x=2146,m=1018,a=940,s=1005}
|
||||
{x=373,m=884,a=1013,s=32}
|
||||
{x=99,m=949,a=2104,s=185}
|
||||
{x=615,m=96,a=821,s=1999}
|
||||
{x=331,m=652,a=56,s=1513}
|
||||
{x=885,m=1527,a=1236,s=1244}
|
||||
{x=813,m=1792,a=2002,s=587}
|
||||
{x=5,m=53,a=460,s=2283}
|
||||
{x=2284,m=1240,a=2377,s=138}
|
||||
{x=97,m=3384,a=2243,s=1333}
|
||||
{x=93,m=1292,a=250,s=766}
|
||||
{x=585,m=2922,a=1347,s=1963}
|
||||
{x=262,m=467,a=334,s=33}
|
||||
{x=586,m=247,a=1165,s=1294}
|
||||
{x=5,m=498,a=86,s=435}
|
||||
{x=2642,m=905,a=482,s=45}
|
||||
{x=453,m=859,a=402,s=2222}
|
||||
{x=697,m=1885,a=496,s=1298}
|
||||
{x=2760,m=911,a=1904,s=274}
|
||||
{x=7,m=685,a=139,s=127}
|
||||
{x=2233,m=115,a=981,s=286}
|
||||
{x=1077,m=1875,a=953,s=527}
|
||||
{x=704,m=2593,a=849,s=1436}
|
||||
{x=1707,m=871,a=840,s=2295}
|
||||
{x=76,m=938,a=329,s=640}
|
||||
{x=1976,m=878,a=1419,s=875}
|
||||
{x=7,m=1132,a=951,s=1005}
|
||||
{x=200,m=2098,a=1626,s=1339}
|
||||
{x=3487,m=1635,a=902,s=841}
|
||||
{x=1293,m=37,a=82,s=448}
|
||||
{x=1086,m=150,a=1785,s=422}
|
||||
{x=671,m=74,a=927,s=1992}
|
||||
{x=627,m=1033,a=1015,s=495}
|
||||
{x=1954,m=734,a=1775,s=410}
|
||||
{x=747,m=3196,a=2323,s=465}
|
||||
{x=6,m=1904,a=784,s=69}
|
||||
{x=2616,m=3470,a=1547,s=256}
|
||||
{x=1225,m=1221,a=85,s=612}
|
||||
{x=668,m=2019,a=47,s=854}
|
||||
{x=807,m=2700,a=1365,s=2155}
|
||||
{x=366,m=816,a=620,s=675}
|
||||
{x=460,m=1805,a=2487,s=1327}
|
||||
{x=125,m=1991,a=1890,s=13}
|
||||
{x=3074,m=1445,a=13,s=1301}
|
||||
{x=508,m=735,a=241,s=1462}
|
||||
{x=861,m=607,a=968,s=1766}
|
||||
{x=1280,m=618,a=221,s=1449}
|
||||
{x=2526,m=423,a=791,s=1207}
|
||||
{x=1951,m=1166,a=1301,s=856}
|
||||
{x=957,m=15,a=1388,s=1640}
|
||||
{x=1113,m=784,a=1565,s=2578}
|
||||
{x=118,m=2209,a=1819,s=2254}
|
||||
{x=1252,m=438,a=1822,s=1327}
|
||||
{x=1979,m=384,a=1869,s=1132}
|
||||
{x=19,m=461,a=888,s=447}
|
||||
{x=2,m=189,a=59,s=2047}
|
||||
{x=1302,m=587,a=2644,s=580}
|
||||
{x=1054,m=145,a=1146,s=222}
|
||||
{x=1199,m=2666,a=156,s=31}
|
||||
{x=1838,m=888,a=1461,s=549}
|
||||
{x=414,m=296,a=1849,s=362}
|
||||
{x=2567,m=2441,a=59,s=1317}
|
||||
{x=696,m=2054,a=1621,s=499}
|
||||
{x=1592,m=1069,a=880,s=3390}
|
||||
{x=177,m=1213,a=25,s=2376}
|
||||
{x=69,m=119,a=789,s=241}
|
||||
{x=1054,m=710,a=82,s=48}
|
||||
{x=112,m=1415,a=1363,s=920}
|
||||
{x=567,m=14,a=1106,s=142}
|
||||
{x=1596,m=230,a=1413,s=100}
|
||||
{x=731,m=2270,a=630,s=2538}
|
||||
{x=620,m=434,a=595,s=1779}
|
||||
{x=759,m=77,a=1502,s=211}
|
||||
{x=310,m=1377,a=1569,s=523}
|
||||
{x=2693,m=2324,a=2075,s=1136}
|
||||
{x=13,m=759,a=1326,s=468}
|
||||
{x=399,m=517,a=1395,s=538}
|
||||
{x=738,m=732,a=579,s=97}
|
||||
{x=1563,m=799,a=1145,s=326}
|
||||
{x=993,m=179,a=302,s=233}
|
||||
{x=1740,m=2864,a=1048,s=592}
|
||||
{x=854,m=1492,a=14,s=2628}
|
||||
{x=1535,m=2408,a=773,s=1822}
|
||||
{x=1170,m=328,a=645,s=303}
|
||||
{x=365,m=460,a=1308,s=1575}
|
||||
{x=1307,m=1140,a=181,s=989}
|
||||
{x=428,m=66,a=1759,s=261}
|
||||
{x=2199,m=528,a=2296,s=1949}
|
||||
{x=10,m=887,a=1,s=44}
|
||||
{x=300,m=1240,a=928,s=610}
|
||||
{x=1487,m=1772,a=140,s=817}
|
|
@ -0,0 +1,106 @@
|
|||
use std::io;
|
||||
|
||||
fn find_min_heat_loss(board: &Vec<Vec<u64>>, min_move: usize, max_move: usize) -> u64 {
|
||||
let mut horiz_min: Vec<Vec<u64>> = Vec::new();
|
||||
let mut vert_min: Vec<Vec<u64>> = Vec::new();
|
||||
|
||||
for _ in 0..board.len() {
|
||||
horiz_min.push(vec![u64::MAX; board[0].len()]);
|
||||
vert_min.push(vec![u64::MAX; board[0].len()]);
|
||||
}
|
||||
|
||||
horiz_min[board.len() - 1][board[0].len() - 1] = 0;
|
||||
vert_min[board.len() - 1][board[0].len() - 1] = 0;
|
||||
|
||||
loop {
|
||||
let mut stable = true;
|
||||
|
||||
// Propagate horizontal.
|
||||
for r in 0..board.len() {
|
||||
for c in 0..board[r].len() {
|
||||
let prev = horiz_min[r][c];
|
||||
|
||||
// Check Backwards.
|
||||
let mut sum_back = 0;
|
||||
let mut m = 1;
|
||||
while m <= max_move && c >= m {
|
||||
sum_back += board[r][c - m];
|
||||
if m >= min_move && vert_min[r][c - m] != u64::MAX {
|
||||
horiz_min[r][c] = horiz_min[r][c].min(vert_min[r][c - m] + sum_back);
|
||||
}
|
||||
|
||||
m += 1;
|
||||
}
|
||||
|
||||
// Check Forwards.
|
||||
let mut sum_forwards = 0;
|
||||
let mut m = 1;
|
||||
while m <= max_move && c + m < board[r].len() {
|
||||
sum_forwards += board[r][c + m];
|
||||
if m >= min_move && vert_min[r][c + m] != u64::MAX {
|
||||
horiz_min[r][c] = horiz_min[r][c].min(vert_min[r][c + m] + sum_forwards);
|
||||
}
|
||||
m += 1;
|
||||
}
|
||||
|
||||
if horiz_min[r][c] != prev {
|
||||
stable = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Propogate Vertical.
|
||||
for r in 0..board.len() {
|
||||
for c in 0..board[r].len() {
|
||||
let prev = vert_min[r][c];
|
||||
|
||||
// Check Backwards.
|
||||
let mut sum_back = 0;
|
||||
let mut m = 1;
|
||||
while m <= max_move && r >= m {
|
||||
sum_back += board[r - m][c];
|
||||
if m >= min_move && horiz_min[r - m][c] != u64::MAX {
|
||||
vert_min[r][c] = vert_min[r][c].min(horiz_min[r - m][c] + sum_back);
|
||||
}
|
||||
|
||||
m += 1;
|
||||
}
|
||||
|
||||
// Check Forwards.
|
||||
let mut sum_forwards = 0;
|
||||
let mut m = 1;
|
||||
while m <= max_move && r + m < board.len() {
|
||||
sum_forwards += board[r + m][c];
|
||||
if m >= min_move && horiz_min[r + m][c] != u64::MAX {
|
||||
vert_min[r][c] = vert_min[r][c].min(horiz_min[r + m][c] + sum_forwards);
|
||||
}
|
||||
m += 1;
|
||||
}
|
||||
|
||||
if vert_min[r][c] != prev {
|
||||
stable = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if stable {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
horiz_min[0][0].min(vert_min[0][0])
|
||||
}
|
||||
|
||||
pub fn min_heat_loss(min_move: usize, max_move: usize) -> u64 {
|
||||
let mut buffer = String::new();
|
||||
|
||||
while io::stdin().read_line(&mut buffer).unwrap() > 0 {}
|
||||
|
||||
let board = buffer
|
||||
.trim()
|
||||
.split('\n')
|
||||
.map(|s| s.chars().map(|c| (c as u64 - '0' as u64)).collect())
|
||||
.collect();
|
||||
|
||||
find_min_heat_loss(&board, min_move, max_move)
|
||||
}
|
|
@ -0,0 +1,209 @@
|
|||
use std::collections::HashMap;
|
||||
use std::io;
|
||||
|
||||
#[derive(Debug, Copy, Clone)]
|
||||
enum Test {
|
||||
Greater(char, u64),
|
||||
Less(char, u64),
|
||||
Default,
|
||||
}
|
||||
|
||||
#[derive(PartialEq, Debug)]
|
||||
enum Action<'a> {
|
||||
GoTo(&'a str),
|
||||
Accept,
|
||||
Reject,
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
struct Step<'a> {
|
||||
test: Test,
|
||||
action: Action<'a>,
|
||||
}
|
||||
|
||||
fn parse_test(test_str: &str) -> Test {
|
||||
if test_str.contains(">") {
|
||||
Test::Greater(
|
||||
test_str.chars().next().unwrap(),
|
||||
test_str[2..].parse().expect("Couldn't parse"),
|
||||
)
|
||||
} else {
|
||||
Test::Less(
|
||||
test_str.chars().next().unwrap(),
|
||||
test_str[2..].parse().expect("Couldn't parse"),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
fn parse_action<'a>(action_str: &'a str) -> Action<'a> {
|
||||
match action_str {
|
||||
"A" => Action::Accept,
|
||||
"R" => Action::Reject,
|
||||
_ => Action::GoTo(action_str),
|
||||
}
|
||||
}
|
||||
|
||||
fn parse_step<'a>(step_str: &'a str) -> Step<'a> {
|
||||
if step_str.contains(":") {
|
||||
let (test, action) = step_str.split_once(":").unwrap();
|
||||
Step {
|
||||
test: parse_test(test),
|
||||
action: parse_action(action),
|
||||
}
|
||||
} else {
|
||||
Step {
|
||||
test: Test::Default,
|
||||
action: parse_action(step_str),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fn parse_workflow(workflow_str: &str) -> (&str, Vec<Step>) {
|
||||
let brace = workflow_str.find("{").unwrap();
|
||||
let name = &workflow_str[..brace];
|
||||
|
||||
let steps = &workflow_str[brace + 1..workflow_str.len() - 1];
|
||||
|
||||
(name, steps.split(",").map(parse_step).collect())
|
||||
}
|
||||
|
||||
fn parse_inputs(input_str: &str) -> HashMap<char, u64> {
|
||||
let mut inputs = HashMap::new();
|
||||
for input in input_str[1..input_str.len() - 1].split(',') {
|
||||
let c = input.chars().next().unwrap();
|
||||
let n = input[2..].parse().expect("Couldn't parse");
|
||||
inputs.insert(c, n);
|
||||
}
|
||||
inputs
|
||||
}
|
||||
|
||||
fn applies(step: &Step, input: &HashMap<char, u64>) -> bool {
|
||||
match step.test {
|
||||
Test::Default => true,
|
||||
Test::Less(c, n) => *input.get(&c).unwrap() < n,
|
||||
Test::Greater(c, n) => *input.get(&c).unwrap() > n,
|
||||
}
|
||||
}
|
||||
|
||||
fn apply(machine: &HashMap<&str, Vec<Step>>, input: &HashMap<char, u64>) -> bool {
|
||||
let mut cur_proc = &machine.get("in").unwrap()[..];
|
||||
|
||||
loop {
|
||||
if applies(&cur_proc[0], input) {
|
||||
match cur_proc[0].action {
|
||||
Action::GoTo(s) => {
|
||||
cur_proc = &machine.get(s).unwrap()[..];
|
||||
}
|
||||
Action::Accept => return true,
|
||||
Action::Reject => return false,
|
||||
}
|
||||
} else {
|
||||
cur_proc = &cur_proc[1..]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fn calc_sum(machine: &HashMap<&str, Vec<Step>>, inputs: &Vec<HashMap<char, u64>>) -> u64 {
|
||||
let mut sum = 0;
|
||||
for input in inputs {
|
||||
if apply(machine, input) {
|
||||
sum += input.values().sum::<u64>();
|
||||
}
|
||||
}
|
||||
sum
|
||||
}
|
||||
|
||||
fn gen_inverse(a: &Test) -> Test {
|
||||
match a {
|
||||
Test::Greater(c, n) => Test::Less(*c, n + 1),
|
||||
Test::Less(c, n) => Test::Greater(*c, n - 1),
|
||||
Test::Default => panic!("Inverse Default Test"),
|
||||
}
|
||||
}
|
||||
|
||||
fn calc_for_char(tests: &Vec<Test>, c: char) -> u64 {
|
||||
let mut min = 1;
|
||||
let mut max = 4000;
|
||||
tests.iter().for_each(|t| match t {
|
||||
Test::Greater(c1, x) => {
|
||||
if c == *c1 {
|
||||
min = min.max(x + 1)
|
||||
}
|
||||
}
|
||||
Test::Less(c1, x) => {
|
||||
if c == *c1 {
|
||||
max = max.min(x - 1)
|
||||
}
|
||||
}
|
||||
Test::Default => {}
|
||||
});
|
||||
if min > max {
|
||||
0
|
||||
} else {
|
||||
max - min + 1
|
||||
}
|
||||
}
|
||||
|
||||
fn calc_from_steps(steps: &Vec<Test>) -> u64 {
|
||||
calc_for_char(steps, 'x')
|
||||
* calc_for_char(steps, 'm')
|
||||
* calc_for_char(steps, 'a')
|
||||
* calc_for_char(steps, 's')
|
||||
}
|
||||
|
||||
fn calc_remaining_possibilites(
|
||||
machine: &HashMap<&str, Vec<Step>>,
|
||||
steps: &[Step],
|
||||
prev_steps: &mut Vec<Test>,
|
||||
) -> u64 {
|
||||
match &steps[0].test {
|
||||
Test::Default => match steps[0].action {
|
||||
Action::Accept => return calc_from_steps(prev_steps),
|
||||
Action::Reject => return 0,
|
||||
Action::GoTo(x) => {
|
||||
return calc_remaining_possibilites(machine, machine.get(x).unwrap(), prev_steps)
|
||||
}
|
||||
},
|
||||
test => {
|
||||
let mut actions = 0;
|
||||
prev_steps.push(*test);
|
||||
match steps[0].action {
|
||||
Action::Accept => actions += calc_from_steps(prev_steps),
|
||||
Action::Reject => {}
|
||||
Action::GoTo(x) => {
|
||||
actions += calc_remaining_possibilites(machine, machine.get(x).unwrap(), prev_steps)
|
||||
}
|
||||
}
|
||||
prev_steps.pop();
|
||||
|
||||
prev_steps.push(gen_inverse(&test));
|
||||
actions += calc_remaining_possibilites(machine, &steps[1..], prev_steps);
|
||||
prev_steps.pop();
|
||||
|
||||
return actions;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fn calc_possibilities(machine: &HashMap<&str, Vec<Step>>) -> u64 {
|
||||
let insteps = machine.get("in").unwrap();
|
||||
calc_remaining_possibilites(machine, insteps, &mut Vec::new())
|
||||
}
|
||||
|
||||
pub fn sum_accepted() -> (u64, u64) {
|
||||
let mut buffer = String::new();
|
||||
|
||||
while io::stdin().read_line(&mut buffer).unwrap() > 0 {}
|
||||
|
||||
let (workflows, inputs) = buffer.trim().split_once("\n\n").unwrap();
|
||||
|
||||
let mut machine = HashMap::new();
|
||||
for workflow in workflows.split("\n") {
|
||||
let (name, actions) = parse_workflow(workflow);
|
||||
machine.insert(name, actions);
|
||||
}
|
||||
|
||||
let inputs = inputs.split("\n").map(parse_inputs).collect();
|
||||
|
||||
(calc_sum(&machine, &inputs), calc_possibilities(&machine))
|
||||
}
|
|
@ -8,6 +8,8 @@ mod day13;
|
|||
mod day14;
|
||||
mod day15;
|
||||
mod day16;
|
||||
mod day17;
|
||||
mod day19;
|
||||
mod day2;
|
||||
mod day3;
|
||||
mod day4;
|
||||
|
@ -56,6 +58,10 @@ fn main() {
|
|||
"day15b" => println!("Sum: {}", day15::hash_map()),
|
||||
"day16a" => println!("Answer: {}", day16::solve()),
|
||||
"day16b" => println!("Answer: {}", day16::find_best()),
|
||||
"day17a" => println!("Minimum: {}", day17::min_heat_loss(1, 3)),
|
||||
"day17b" => println!("Minimum: {}", day17::min_heat_loss(4, 10)),
|
||||
"day19a" => println!("Accepted: {}", day19::sum_accepted().0),
|
||||
"day19b" => println!("Possible: {}", day19::sum_accepted().1),
|
||||
_ => println!("Unrecognized day: {}", args[1]),
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue