This commit is contained in:
Dory 2023-12-19 01:10:33 -08:00
parent 63a054505d
commit 7e0fd280cb
3 changed files with 804 additions and 0 deletions

733
19/input.txt Normal file
View File

@ -0,0 +1,733 @@
vvr{a>520:jq,s<3691:R,a>325:A,R}
dmg{s<1730:A,x<3350:R,R}
ctv{s<3757:R,R}
xhh{a<3542:A,A}
cpx{m<1847:A,R}
qqg{a<911:nf,lpf}
mnr{a>1914:A,x>752:A,A}
ktx{m<1153:R,A}
mkz{a>2959:A,a<2378:rlr,R}
br{x>2184:A,s>3693:A,s>3530:R,A}
fpk{a<2465:A,a>2524:A,A}
ffs{a>536:A,a>328:A,s>3058:R,R}
zcl{m>2554:pz,a>2167:gr,qs}
lpf{a>1643:hc,x>3626:xxp,mth}
vl{x>2958:R,R}
nrs{m>2481:R,x>3117:A,m<1978:R,R}
sv{m<1749:R,rl}
tv{x<219:R,a<1429:A,m<2884:R,A}
nl{m>1827:A,m>1345:A,x>2928:A,R}
vj{x>439:A,s<2318:A,a<806:A,R}
kd{s>767:jhv,x<1090:bk,A}
ts{s<3148:rxp,a>1365:lr,bkt}
bl{m<2736:A,s<571:R,dv}
brp{a<923:R,a<1279:R,a<1574:A,R}
bgt{a<1575:R,s<3923:fbv,s<3953:A,pdj}
djn{s>322:A,m<1056:A,a<1988:A,A}
rqq{s<3130:A,m<2434:A,A}
lz{x>3622:A,x>3296:qt,s>3010:R,A}
pts{x>1771:R,R}
kpp{s>1217:A,s<1204:R,R}
bnq{s>3121:A,x>490:A,a>2141:R,A}
hxf{s>2885:R,a>1520:A,s>2880:A,A}
khd{s>3265:bc,a<1211:ffs,R}
gv{m>3417:A,a>2938:R,m<3354:A,R}
lk{m<2377:xk,s<3132:R,A}
cs{s<960:A,x>3655:R,R}
mh{a>1468:A,s>2418:R,x<508:vj,vgr}
cnt{x<766:R,x>1060:R,A}
zt{a>3624:R,x<1504:R,s>271:A,A}
fpt{m<1199:bnq,x<958:R,x<1153:A,mrg}
jkq{a>1783:qnp,a>1626:A,R}
fnc{x<3093:fzx,x>3571:cp,m<3233:zpz,xxl}
kmg{m<1640:lvj,x>2199:xv,R}
lkm{m>722:xbm,R}
pgd{s<2128:brp,jj}
shm{m>919:R,s<3189:R,R}
xfr{m>761:R,s>2748:A,m>323:A,R}
rgl{a<1202:R,R}
qgd{a<746:hzp,rgl}
vkj{m<2086:R,x>850:A,a>3710:R,R}
cm{s<1657:R,R}
lvj{s>2173:R,a>747:R,A}
vz{a<2716:A,R}
nsm{m<2126:A,a>1310:A,x>2771:A,A}
pk{x>2292:A,A}
jm{s<363:A,A}
hp{a>2641:trf,mh}
nlr{s>2969:A,x>1304:A,A}
hx{m<3078:R,R}
pjv{x>253:grc,x<97:R,x<193:A,hz}
xrb{x>3443:kn,A}
tx{a>1279:A,dcf}
qjb{m>1551:qfg,qrq}
ftr{s>2830:nmq,td}
jvn{s>3843:R,A}
gsz{s<2923:rfs,ts}
xhx{x<2340:lj,A}
gbn{m<882:A,A}
qvl{a>1697:hr,a<1466:A,a<1601:A,ll}
jh{m>173:R,s<564:A,s<797:A,R}
vgf{x>497:A,x>320:A,R}
lgk{a>3109:R,A}
lbx{x>1134:A,R}
nxp{s>840:A,R}
gkh{m<545:A,m>610:A,m>569:A,R}
zpz{x<3332:jk,m>2774:A,R}
sqt{x<399:R,m<3088:A,s<477:A,A}
mpf{a>3316:A,A}
ckv{m<3213:A,a<842:A,s<2396:A,A}
lpq{s<2685:A,A}
fg{m>3358:R,x>3763:A,R}
cf{a>1252:A,x>346:A,x>212:A,R}
bcv{s>3187:cxd,x>2785:R,x>2752:nsm,zn}
pq{x>2944:A,R}
vc{x>2389:cqz,m>1620:bd,bdr}
jgb{x<2002:A,R}
nfb{s<2319:A,a>3483:hj,m>1700:R,A}
zh{m<664:A,s<2311:A,A}
hrs{a<340:R,x>1096:A,R}
stl{a<1757:cfp,qrl}
lg{x<2142:R,m>1798:bx,x>3110:rg,A}
nrd{x<2026:qh,m>1735:mrk,pn}
cmk{s>292:A,A}
szf{a<996:A,x>1757:bqq,s<1243:R,A}
tg{a>989:A,s<936:R,s<1091:R,R}
ktl{x<2556:R,x<2639:A,R}
nb{m<3571:A,s>1051:R,R}
vx{a<2247:A,x<2460:A,a<2331:R,A}
in{s<2569:qj,csb}
rvc{m<1417:A,s>2822:A,m>3074:R,A}
hcv{a<3271:A,A}
blq{m<1523:mz,rq}
dvv{m<1558:rx,rn}
pdj{m>1764:R,s>3971:R,R}
tzf{s>3567:R,m<631:A,a<3273:R,R}
vvp{a<2271:nrc,m>2025:ls,a>3004:znl,ftr}
dx{s>3049:qdv,m>1362:hpq,m<759:A,xrl}
fgb{a>3186:pq,s>3045:A,rz}
zfr{s<3704:pg,a<1503:kkc,a>1606:rj,mcm}
hk{s<3670:A,a<2667:R,R}
vbs{m>2005:jgb,pts}
mmr{m>2322:R,m>1991:A,s>1195:A,R}
jsj{a<846:R,A}
gr{x>1637:A,m>1437:A,tzf}
smr{x>553:xkj,a>3828:pjv,s<2877:rvn,lk}
kkh{a<979:A,a<1290:R,m<3262:R,R}
rfs{s<2782:zfq,s>2869:rlj,vvp}
hld{m<2626:R,R}
pdr{s>3716:R,x<1984:A,R}
bpl{m>2642:R,m<2208:A,R}
rsb{s>2186:A,klj}
svh{m>1897:A,a<3228:A,s<2449:trr,A}
nvc{a>1611:sfr,A}
kx{x>637:A,x>614:A,A}
qh{x>1954:pdr,sl}
mr{x>2233:R,x>2163:A,R}
ndm{a<2304:R,A}
fb{m>2610:A,m>1344:A,A}
qm{m>2943:R,a>2109:R,R}
dv{a<678:A,R}
nbv{a<1299:R,m>2259:R,s>2404:A,R}
ls{a>2854:mpf,zqx}
xc{m>2101:R,s<2882:R,a>1165:A,R}
lct{m<2076:bs,s>2785:mkf,m>2855:A,bks}
dk{a<3506:A,A}
qmn{x>325:qf,a>449:kl,a<295:A,vm}
ncg{a<1018:lct,a<1371:rnd,x<2673:jkq,nvc}
zmq{m<2525:R,A}
thd{a>2757:gj,a<2405:qrn,m>2056:bmz,kr}
tts{m<3228:R,s>640:R,a>3171:A,A}
trr{a>3548:R,s<2437:R,R}
clc{s<2527:R,s>2549:A,A}
jtv{m<2950:A,s<210:R,R}
ghv{m>1136:xkd,s<1218:ql,m<502:gvn,szf}
jq{s<3727:A,m<1398:R,A}
ql{x<2601:lbx,dz}
rvn{x<189:vvb,hxn}
xx{x>2241:A,m>1897:A,R}
ccd{s<3621:A,R}
lts{s<3872:A,m>835:A,s<3931:R,A}
rn{s>925:R,R}
ngb{s<2880:A,R}
xxv{a<2094:A,s<2881:R,R}
kr{x>2351:A,s>258:R,a>2619:bdp,A}
mz{x<3454:fgb,zzp}
hd{a>2529:A,dmg}
hz{x>224:R,m<2084:R,A}
gh{m<971:A,m>1211:R,A}
jr{a>2700:R,m>1234:A,x<355:A,A}
jc{x<739:A,a<917:R,s<2457:ck,mnr}
bpj{x>330:rqq,R}
xfj{s<1260:ht,m<2092:jd,xhx}
bz{s<3823:A,R}
cxd{a<874:A,R}
bs{s>2688:A,m>1007:A,x<2651:A,R}
htn{m>977:R,a<2308:A,x<2327:A,A}
jhv{a>996:R,s<967:A,s<1075:R,A}
bcr{a<3147:ndm,tp}
pkj{m<2510:gbn,a>981:jjx,A}
zzp{s>2986:shm,x>3786:rpv,mb}
bc{s>3370:A,a<923:R,x>2579:R,A}
tj{x<2848:rb,s>1693:A,A}
fvl{s>1450:css,s>1274:fr,a>1541:ngh,rmz}
frc{m<2984:A,m<3157:sqt,tts}
lb{m>1612:A,A}
bp{m>2003:A,x>3015:cs,tg}
nnl{a<1000:R,s<3854:A,s>3945:A,R}
rl{m<3088:A,x<463:A,a>1631:A,R}
gvn{s>1250:A,s>1235:fhj,fqn}
rnf{m<733:R,x<1676:R,A}
cp{a<3134:fg,m>3460:A,kmc}
pd{s>637:vb,s<564:pt,R}
rz{x<3098:R,m>826:R,m<293:A,A}
zc{a>689:vmd,a<339:A,llk}
zl{s<3450:R,A}
rj{s<3855:A,m<1825:lcq,x>558:qn,R}
tp{a<3484:R,x>2024:R,a>3761:A,R}
jbz{m<3184:cnt,R}
fs{s<1772:A,m>908:nl,a>2631:A,A}
sfr{a>1871:A,a<1714:A,R}
lv{a>3338:A,s<314:R,x>2326:R,R}
hjj{m<1335:R,m>2001:R,a<2651:R,A}
sm{x>2614:R,m<621:A,A}
qdv{x<2058:R,R}
xsg{m>2409:qb,x<1022:bg,mgj}
vvb{x<121:A,m<1386:R,R}
szz{x>1786:xs,s<2260:stl,x<596:qg,zk}
sr{m>1474:A,gbk}
xxp{s<2328:A,x<3808:A,A}
fxk{s>3196:A,btj}
mgg{m>2309:R,a<2169:R,x<1003:jr,R}
rc{x>853:R,x>554:R,x<304:tk,A}
vzk{a>830:A,m<1128:kh,x>558:R,npn}
dd{x<2364:R,hk}
jvf{s<1220:kkh,m<3274:qgd,a>869:tx,dxb}
xn{a<1700:rjg,A}
vf{a>1341:A,s>3229:R,A}
dxb{m>3699:R,s<1248:R,m<3525:sml,A}
zd{s>1372:cbd,zc}
qb{x>1140:R,a>3588:R,a<3369:A,R}
ck{s>2389:R,x>753:A,m>2076:A,R}
bk{m<1112:A,x>422:A,x<254:R,A}
bdp{s>119:R,m<885:A,R}
xfq{m>1857:km,a<2650:rvk,m<1229:svp,fnm}
jjx{a<1105:R,A}
hh{x>2723:A,x>2324:R,R}
vxv{s<3855:A,a<1221:R,A}
hj{m<1924:A,A}
zj{a>2161:A,a<1948:mmr,a>2043:A,R}
lcq{m<760:A,R}
zmm{a>1990:vx,m>3237:nq,m<2768:R,zrk}
qrn{m>1714:qm,a>2144:htn,djn}
zk{a<2467:lkf,txv}
gsm{a>2592:sm,m<700:A,a>2099:R,R}
vhm{m>3185:R,m>2612:A,x<2721:R,R}
lss{a>1698:dd,ldr}
gf{a<589:ggp,a>940:xc,A}
qrl{a<2989:mgg,s>2068:rsb,x>881:xjq,cnz}
nz{x>640:zl,m<654:A,gh}
ljc{m<2348:xqn,m<3307:hvc,zpt}
ptz{a<1956:kmk,x>332:ks,dxr}
lj{s>1269:A,A}
rjr{a>1905:A,s<3610:A,R}
bkt{s<3288:xm,gkz}
jjq{s<2376:R,a<3384:R,m>3288:A,A}
fzx{x<2811:A,s<786:R,sjr}
hcz{a<1441:A,A}
ng{x>2025:A,a<1962:R,m>2393:A,A}
kg{x<1581:R,x<1788:R,R}
hc{a<1965:A,m<2176:R,R}
zrk{x>2229:A,R}
cgp{x>715:A,m>3614:A,R}
vmd{s>1327:R,A}
jsk{x>2685:bcv,m>1553:qgx,m>700:khd,mx}
kkc{m<1471:hcz,a>1447:A,x>594:A,tv}
ph{s<2709:R,a>615:A,R}
bqq{m>918:A,s<1255:A,x>2567:R,R}
dn{a>3209:zt,fc}
vm{x<119:R,a<356:R,A}
bvz{s<3732:zcl,fvj}
vgr{x>557:A,s>2325:R,A}
kl{m>1917:R,a>623:R,s<3697:R,A}
css{x<2079:flp,a>2235:vp,ttl}
qsf{s>458:rfh,s<225:A,x<1109:jm,A}
jjl{a<1765:qv,x>2506:tf,x>1208:zv,ljc}
xr{s>1663:A,R}
zqx{m<3112:A,R}
mm{x<2642:A,A}
bmm{a>1287:vf,m>2723:cf,tpd}
bx{s>1379:R,m<3154:A,a>2029:A,R}
hb{s>3578:A,a>1601:A,R}
npn{a>418:R,R}
gn{a<1162:dxm,a<1473:lz,xrb}
pj{x>3259:bgb,m<2105:rqc,hn}
cfp{m<1402:pgd,nn}
rx{a>2279:R,m<809:R,s<927:A,A}
dj{s<2516:R,R}
bj{s<3719:fls,pj}
ttl{a<753:djc,s>1593:tj,qr}
zp{m<862:A,R}
hzp{a<266:R,A}
hnb{m<729:A,m>1432:A,m>1081:A,R}
dfv{s<899:R,m>1776:bss,A}
gx{x<420:R,s<739:A,x>875:A,R}
lp{m>1603:A,x<2185:A,R}
khp{m<1240:R,s<3695:R,x>2040:R,A}
dxr{s<2453:A,x>300:A,dj}
rqc{m>859:mrq,a>1818:jvn,m<375:A,A}
cbf{a>1801:A,x<2146:R,A}
dxm{a<741:A,x<3647:lvx,s>3125:zm,cpx}
zdf{x>918:hrs,s<3499:bpj,x<510:qmn,vvr}
rk{a<1622:kjn,x>2035:lx,R}
mkf{s<2843:R,m>3082:R,R}
tpd{s>3176:R,a>1225:R,x>394:R,A}
tzq{m>2428:ngb,vl}
qj{s<1179:jjl,s>1877:szz,fvl}
xm{s<3237:R,a<738:A,A}
mf{a>1552:A,s<2401:R,R}
rlr{x>3280:A,x>2759:R,R}
hxn{a>3691:R,s<2707:R,s<2802:R,A}
lt{a>3090:R,s<71:A,A}
xk{a>3660:R,A}
zqm{a>928:A,A}
qs{m>1136:R,rnf}
jl{m<3203:A,m>3526:R,s>3891:A,A}
lx{a<1729:A,x>2216:A,m>1412:A,R}
gc{m<3522:R,a<2626:A,R}
pzc{a<3024:vtg,m>1682:R,m<1377:A,rrf}
gbk{m<654:R,s<1217:A,s<1223:R,A}
lvx{a<927:R,m>2149:R,x>3327:A,A}
fhj{s<1242:R,A}
xqn{m<896:pv,x<621:hq,pzc}
hq{s<661:cr,a>3031:R,s<1000:R,A}
xtz{s>2914:A,s>2909:R,R}
mpv{s>3459:bj,a>2014:blq,tgr}
rmz{m<2196:ghv,jvf}
fc{a<2548:kg,s>166:R,a<2930:A,lt}
rpv{x>3861:R,a<3150:R,s<2725:R,R}
nq{a>1505:R,m<3509:R,R}
qz{a<1558:R,m<3088:A,m>3640:R,R}
pg{a<1524:cdc,s>3406:A,m<1803:R,R}
nn{m<2341:fm,s>2091:nnd,x>667:R,A}
qnp{a<1882:A,s<2689:R,A}
kb{x<1708:A,A}
km{m>3254:R,x>2185:R,s>3646:cbf,R}
qhp{x<1902:bvz,ksc}
tf{m>2474:fnc,lh}
mrk{m>2540:gth,nh}
btj{a<3349:R,x>877:A,R}
cv{s>1227:ss,sr}
dlr{m<1789:gsm,m>2852:rtx,a>2963:bxj,zj}
xbm{s<3216:R,A}
cx{a>1657:R,x>1871:R,A}
cb{a<2526:R,A}
llk{m>2126:A,A}
hjb{m>3625:R,m>3514:R,A}
bq{a<1187:pkj,m<1393:lkm,x<695:bmm,svf}
fn{x>151:R,m<2679:A,A}
vp{a>2870:ff,m>2322:hd,s<1637:vjv,fs}
rlj{s>2896:qd,a>2284:zdx,a<1323:gf,jg}
ggp{m<1794:R,s<2883:A,x<1856:R,A}
znl{m>856:A,a<3666:hcv,sf}
svp{x>2155:xhh,a<3541:ctv,s<3726:ccd,bz}
mgj{x<1387:A,x<1600:R,R}
lkf{x>1081:qk,x>777:jf,x<686:mrc,jc}
rjg{a<1443:R,x>1229:R,s<1556:R,A}
mbg{a<622:A,x<834:A,x<867:R,R}
bss{a<3054:A,x>2187:A,a<3492:R,A}
xkd{a<562:kpp,R}
qr{s<1530:jdd,x<3305:R,R}
qfg{a<2318:R,fn}
jf{x>919:A,a>935:A,mbg}
bg{s>2516:R,A}
cbd{m>2449:A,a>1041:cn,a<450:R,xp}
xl{s<2925:hx,a>3207:R,R}
vrg{a>1289:hb,cj}
mtb{s>2981:hrh,A}
gfm{s<3070:R,m>3645:R,m>3357:R,R}
zfq{a<1584:js,lpq}
fbv{a<2481:A,x>1644:A,R}
rxp{a<1460:dx,bcr}
dlj{a>3193:A,x>2205:A,A}
nrc{a<941:rvc,s>2824:R,cx}
vjv{a<2589:R,s<1539:A,s<1591:A,R}
prg{x>943:R,x>469:R,a>1828:A,R}
cn{s>1408:A,m>1058:R,A}
hvc{x<696:frc,x<972:tt,qsf}
flp{a>2225:fq,a<1241:fj,s<1733:xn,prg}
bkf{m<1041:A,A}
dl{a>1330:R,s<2427:R,x<1467:A,A}
sn{m>3136:gfm,grr}
rfh{x>1129:R,A}
td{m>1204:R,m>773:A,a<2619:R,A}
jg{x<1834:A,a<1719:hxf,x<2218:ng,xxv}
jrj{a<386:A,R}
nv{m>210:R,R}
pjx{s<2086:mm,a<3090:fb,x>2720:R,sfp}
ll{s<2174:A,s<2409:R,R}
pn{x>2063:rjr,m>970:khp,a>1997:A,fhq}
gj{a>3526:R,a<3207:mr,lv}
nj{m<2883:A,s<3049:R,s>3494:R,cgp}
xq{a<3632:R,s>2980:R,R}
mrq{m<1543:R,m>1844:A,R}
rm{a>3252:hv,R}
fxx{a<1183:kmg,m<2218:qvl,zmm}
grr{a<2906:R,s<2997:R,m>2839:R,R}
kjn{x>2064:R,m>2516:R,x>1756:R,A}
bvd{s>3355:A,a>1525:R,R}
nf{x>3448:jrj,R}
hs{a<3135:R,s>399:R,A}
dln{s<561:mv,x>2863:nxp,s<800:A,A}
kmc{s>639:A,m>2835:R,R}
sfp{a>3626:A,x<2148:A,R}
ff{a<3401:R,a>3684:A,m>1555:hh,zp}
jz{a<3162:xt,a<3530:vq,s<3365:smr,svn}
tgr{x>3121:gn,x>2865:tzq,s>2899:jsk,ncg}
gl{s<739:pd,x>1894:dfv,a>2666:zmq,dvv}
grc{x<435:A,A}
sml{s<1264:R,m>3363:A,x<2284:A,A}
mkc{x<760:A,a<631:A,a>1386:R,kq}
xp{s>1423:A,x<2579:R,R}
vq{m>1343:fxk,nz}
mrg{m<1518:R,m<1658:R,A}
js{a>944:xg,x>2026:ph,s<2666:R,R}
kh{a<318:R,x<621:R,a<659:A,R}
rg{x>3435:R,R}
fhq{x<2040:A,a>704:R,m>551:A,R}
kq{m<2577:R,s<894:A,x<1039:A,A}
qd{m>2322:R,s<2906:A,x>1957:A,xtz}
ksc{x<2099:nrd,x>2265:lss,xfq}
kzv{a>2414:xj,lg}
kk{a<617:R,R}
jk{s>538:A,m<2863:A,R}
xg{a>1210:R,x>1982:R,x>1800:R,A}
cl{a>2733:R,clc}
bd{m<2716:A,a<3313:R,m<3413:A,fbm}
xjq{s<1984:A,m<1511:A,bpl}
rvk{a>1155:bkf,m<813:br,m<1432:A,zkh}
nd{s>452:kd,x>1163:kk,vzk}
fvj{s>3841:bgt,m<2521:bb,tz}
ks{m>2382:R,ntz}
tt{a<2850:R,A}
qgx{s>3258:zqm,s<3027:R,ktl}
ss{m>2041:A,ft}
rq{x<3120:xl,m>2642:sn,rtf}
jdd{s>1486:R,m>2101:A,m>762:A,A}
qx{a>3696:qrp,s>3657:A,R}
bks{a<607:A,R}
xs{a>2441:fh,x>2963:qqg,fxx}
mrc{m>2461:ckv,m>1428:kx,m>724:tq,A}
rb{m<2468:R,x>2419:R,x<2271:R,A}
ht{s<1252:R,A}
qk{x<1328:mf,x<1549:dl,nbv}
djc{m<1600:cm,a>283:nrs,R}
fh{s<2220:pjx,lgk}
bdr{a>3328:jfn,m>707:R,R}
rtx{x<1386:R,m>3269:gc,gb}
xkj{a>3749:A,a<3675:dtp,s<3004:pht,vkj}
pv{m>323:R,x>502:jh,s>514:nv,vz}
vv{a>3320:R,s<636:R,s>948:A,R}
sg{s>601:bp,cmk}
cr{a<2514:R,R}
gb{a<2813:A,R}
bmz{s<196:A,a<2556:fpk,s>307:pk,R}
bb{m>1091:A,R}
zdx{s>2879:R,a<3102:vk,A}
jfn{a<3606:A,A}
nbp{m>818:A,A}
kn{s>2923:R,A}
fr{a<1594:zd,a>2929:vc,kzv}
xj{m<2544:hjj,R}
hv{m>1991:R,A}
qrp{x>874:A,x>389:R,A}
cnc{m<985:A,R}
cnz{m<2037:hnb,A}
vmb{a>1700:jz,nm}
mv{m<1362:R,A}
gkz{s>3342:jsj,x>1892:xx,m<1670:R,kb}
xt{m>1817:nj,a<2551:fpt,ktx}
fj{a>463:A,A}
mx{m>253:gkh,s<3140:R,m>137:R,R}
jd{m>842:lb,m>451:kkv,s<1266:A,A}
cqz{s<1368:A,m<1575:A,R}
svf{s<3263:R,R}
sl{m<2246:A,R}
zrq{x>2077:lsm,x<1840:A,a>1618:R,bvd}
pz{m>3317:hjb,s>3590:A,x<1658:R,jvc}
csb{x<1439:vmb,x>2420:mpv,s<3414:gsz,qhp}
kmk{x>328:kpg,R}
qrq{a>1614:A,s<2403:zh,x>114:R,nbp}
fq{x>909:xr,a>2931:A,A}
lr{a>2309:rm,a>1791:vbs,s>3276:zrq,rk}
lsm{x>2277:R,a>1618:R,R}
klj{x>1054:R,m>2202:A,x>399:A,R}
mb{a<3099:R,s<2735:R,R}
fqn{m<210:R,A}
jj{s<2200:A,A}
pht{a>3714:R,A}
tz{x<1673:R,a<1378:A,A}
rrf{a>3595:A,a>3246:A,R}
nmq{a>2748:R,a<2542:R,x<2016:R,A}
fls{a<2084:vrg,mkz}
fbm{a>3544:R,A}
fnm{s>3733:dlj,lp}
zpt{s>665:xb,m>3543:hs,gv}
bxj{m>2343:R,A}
zkh{a<571:A,s>3679:A,a>921:R,A}
cdc{m>1919:A,R}
ngh{s>1238:xfj,s<1208:dlr,cv}
cj{a>700:A,R}
bgb{a>2604:dk,m>1677:jl,x>3687:lts,R}
dz{m<718:R,x<3415:R,R}
nnd{x>1061:R,m>2920:A,a>798:R,R}
hn{m<2984:A,a>2031:A,vxv}
dtp{x<945:A,a<3591:A,R}
qv{x>2355:sg,m<1752:nd,nxg}
vtg{a>2512:R,m<1657:A,x>981:R,A}
hr{x>2303:A,m<1178:A,A}
txv{s<2416:nfb,s<2487:svh,a>3134:xsg,cl}
mth{a>1241:R,A}
sf{s<2826:A,a<3808:A,a<3934:R,A}
hrh{m>2319:A,x>461:A,m>839:R,A}
tk{s>3674:A,s>3485:A,A}
ldr{m<1530:R,s<3738:hld,x<2358:rrr,nnl}
kpg{a>779:R,m>2426:R,R}
mcm{m>1928:qz,a>1571:R,a>1536:A,vgf}
kkv{s<1268:R,R}
ntz{x>354:R,R}
qg{x>390:hp,x<245:qjb,ptz}
rrr{s<3885:A,m<2398:R,R}
rtf{a>3255:xq,x>3511:A,s<3159:A,R}
ft{x>2278:R,m<1043:R,a<2670:R,R}
dcf{x>2425:A,x<1158:A,A}
vb{s<704:R,x<1816:R,R}
zv{s>491:gl,x<2068:dn,thd}
xb{s>882:nb,gx}
gth{s>3795:R,m<3296:A,A}
nxg{x>1262:bl,s>410:mkc,a>704:jtv,jbz}
rnd{x<2587:R,m<2247:xfr,vhm}
sjr{a>2727:R,A}
pt{s>532:R,R}
fm{x>631:A,x>335:A,s<2100:R,A}
gq{s>681:R,a<2732:R,m>1215:A,R}
svn{m<1967:qx,rc}
xv{s<2249:A,A}
zn{s<3051:A,x>2727:A,A}
hpq{s<2983:R,m<3115:R,A}
nh{a<1716:A,R}
qn{m>2908:R,s<3927:A,R}
lh{x<3047:dln,gq}
zch{x>1081:nlr,A}
np{x>876:zch,a<1580:mtb,sv}
tq{a>1139:A,a<709:R,R}
vk{m>1771:R,a>2624:A,R}
qt{a<1334:R,x>3407:R,R}
qf{s<3748:R,A}
zm{s<3247:R,x<3878:A,R}
xrl{a<807:A,a<1157:A,s>2999:A,R}
jvc{s<3505:R,s>3546:A,R}
trf{m>2082:jjq,a<3517:cnc,R}
nm{a<835:zdf,a<1402:bq,s>3203:zfr,np}
xxl{a<3140:cb,a<3432:vv,A}
{x=3161,m=1141,a=51,s=441}
{x=240,m=174,a=555,s=1269}
{x=639,m=25,a=2025,s=345}
{x=97,m=1410,a=1572,s=1133}
{x=763,m=1918,a=625,s=2037}
{x=83,m=1395,a=433,s=2841}
{x=359,m=652,a=831,s=129}
{x=979,m=204,a=1976,s=1629}
{x=3112,m=122,a=816,s=305}
{x=523,m=2334,a=108,s=1286}
{x=267,m=152,a=480,s=389}
{x=278,m=917,a=1419,s=2422}
{x=207,m=1337,a=600,s=282}
{x=128,m=913,a=3232,s=189}
{x=1359,m=15,a=1792,s=2028}
{x=87,m=2807,a=3202,s=104}
{x=4,m=240,a=686,s=1790}
{x=2332,m=537,a=1657,s=289}
{x=1739,m=75,a=2757,s=1320}
{x=2127,m=44,a=1389,s=224}
{x=564,m=3263,a=177,s=447}
{x=424,m=915,a=1856,s=18}
{x=632,m=1638,a=665,s=315}
{x=950,m=993,a=136,s=11}
{x=154,m=611,a=405,s=1090}
{x=1784,m=1239,a=506,s=878}
{x=379,m=332,a=89,s=1091}
{x=2234,m=315,a=1158,s=2140}
{x=971,m=283,a=56,s=1089}
{x=39,m=101,a=256,s=995}
{x=259,m=25,a=829,s=2383}
{x=2681,m=876,a=676,s=109}
{x=1783,m=2119,a=299,s=25}
{x=2735,m=1444,a=94,s=572}
{x=710,m=2673,a=372,s=1524}
{x=171,m=221,a=1344,s=234}
{x=250,m=547,a=40,s=2485}
{x=1282,m=1141,a=823,s=1862}
{x=3,m=557,a=1924,s=1310}
{x=23,m=1217,a=133,s=2587}
{x=2073,m=75,a=246,s=250}
{x=591,m=646,a=510,s=610}
{x=1057,m=1782,a=1460,s=360}
{x=715,m=2817,a=1441,s=1769}
{x=132,m=478,a=1510,s=1669}
{x=3098,m=1549,a=915,s=2968}
{x=1913,m=570,a=542,s=381}
{x=311,m=935,a=277,s=290}
{x=486,m=148,a=240,s=61}
{x=428,m=1469,a=26,s=1175}
{x=520,m=979,a=84,s=413}
{x=244,m=1671,a=2482,s=6}
{x=53,m=1426,a=3,s=202}
{x=787,m=1504,a=1281,s=1676}
{x=27,m=2265,a=1142,s=202}
{x=1876,m=170,a=2306,s=2130}
{x=699,m=48,a=228,s=634}
{x=684,m=1694,a=287,s=1244}
{x=1140,m=919,a=845,s=1543}
{x=2313,m=183,a=948,s=1856}
{x=345,m=325,a=399,s=673}
{x=758,m=79,a=523,s=1105}
{x=271,m=1196,a=611,s=1465}
{x=495,m=2296,a=543,s=873}
{x=1054,m=273,a=1040,s=975}
{x=2372,m=642,a=415,s=303}
{x=2865,m=216,a=208,s=1772}
{x=219,m=29,a=689,s=561}
{x=885,m=150,a=816,s=1035}
{x=2293,m=1052,a=546,s=527}
{x=1384,m=461,a=264,s=911}
{x=1125,m=652,a=3475,s=1492}
{x=193,m=823,a=511,s=719}
{x=3393,m=26,a=15,s=111}
{x=611,m=1012,a=114,s=839}
{x=527,m=159,a=3961,s=465}
{x=214,m=416,a=1332,s=348}
{x=21,m=1247,a=1356,s=112}
{x=3308,m=387,a=587,s=16}
{x=171,m=1571,a=2145,s=1685}
{x=1334,m=970,a=133,s=102}
{x=567,m=348,a=318,s=624}
{x=344,m=911,a=593,s=326}
{x=976,m=584,a=270,s=339}
{x=879,m=796,a=565,s=1348}
{x=1427,m=1060,a=751,s=1071}
{x=2412,m=582,a=407,s=1668}
{x=21,m=147,a=1452,s=681}
{x=457,m=404,a=1617,s=338}
{x=1810,m=1236,a=19,s=174}
{x=55,m=674,a=530,s=327}
{x=423,m=348,a=1067,s=424}
{x=2836,m=2279,a=3116,s=73}
{x=792,m=2863,a=1457,s=1643}
{x=537,m=910,a=2132,s=2005}
{x=895,m=1383,a=86,s=632}
{x=302,m=891,a=61,s=303}
{x=24,m=28,a=438,s=458}
{x=1134,m=104,a=219,s=623}
{x=208,m=1184,a=280,s=2224}
{x=1884,m=762,a=2518,s=588}
{x=1712,m=2692,a=580,s=1996}
{x=597,m=1108,a=1198,s=889}
{x=29,m=1692,a=456,s=2358}
{x=604,m=1656,a=149,s=374}
{x=995,m=1575,a=1300,s=1043}
{x=513,m=64,a=348,s=670}
{x=2016,m=148,a=288,s=240}
{x=2208,m=388,a=726,s=69}
{x=521,m=1808,a=2767,s=856}
{x=512,m=103,a=439,s=1943}
{x=148,m=935,a=787,s=477}
{x=1153,m=2337,a=238,s=3068}
{x=692,m=2215,a=1089,s=134}
{x=2260,m=1675,a=2775,s=1847}
{x=625,m=3316,a=1996,s=2999}
{x=2263,m=2373,a=2421,s=349}
{x=13,m=2202,a=316,s=132}
{x=1414,m=2836,a=2224,s=206}
{x=2597,m=203,a=741,s=1575}
{x=3420,m=1012,a=637,s=768}
{x=278,m=1222,a=1586,s=463}
{x=511,m=816,a=71,s=381}
{x=538,m=320,a=395,s=2388}
{x=522,m=741,a=2172,s=1418}
{x=112,m=619,a=1875,s=1458}
{x=462,m=2079,a=252,s=54}
{x=2828,m=121,a=297,s=19}
{x=444,m=1444,a=85,s=88}
{x=1328,m=43,a=1168,s=241}
{x=1963,m=162,a=135,s=915}
{x=350,m=994,a=223,s=3064}
{x=130,m=790,a=895,s=52}
{x=317,m=83,a=265,s=478}
{x=215,m=2935,a=703,s=2731}
{x=1274,m=1313,a=455,s=2270}
{x=18,m=1971,a=1987,s=1992}
{x=2444,m=646,a=1462,s=232}
{x=1054,m=44,a=241,s=1037}
{x=212,m=1389,a=1490,s=574}
{x=301,m=3887,a=1190,s=300}
{x=3405,m=2067,a=2279,s=976}
{x=503,m=1631,a=933,s=303}
{x=1877,m=2443,a=2986,s=2055}
{x=559,m=1073,a=2167,s=1286}
{x=2473,m=1614,a=1850,s=503}
{x=357,m=430,a=1105,s=15}
{x=601,m=271,a=891,s=290}
{x=1958,m=6,a=250,s=796}
{x=635,m=507,a=262,s=853}
{x=337,m=949,a=2590,s=53}
{x=3419,m=3441,a=1089,s=592}
{x=132,m=992,a=482,s=306}
{x=979,m=958,a=2428,s=572}
{x=20,m=60,a=1124,s=3558}
{x=189,m=406,a=1382,s=546}
{x=1264,m=12,a=716,s=239}
{x=916,m=2214,a=69,s=146}
{x=631,m=2307,a=1969,s=421}
{x=1277,m=864,a=1780,s=490}
{x=306,m=2550,a=53,s=2171}
{x=120,m=1296,a=474,s=301}
{x=1566,m=869,a=894,s=2050}
{x=698,m=2308,a=687,s=492}
{x=2410,m=2671,a=806,s=1228}
{x=988,m=3291,a=459,s=229}
{x=1481,m=204,a=646,s=2167}
{x=238,m=593,a=497,s=186}
{x=317,m=187,a=772,s=129}
{x=53,m=3624,a=751,s=554}
{x=503,m=59,a=699,s=2483}
{x=59,m=1139,a=442,s=334}
{x=297,m=473,a=2519,s=554}
{x=254,m=1241,a=1477,s=280}
{x=117,m=1332,a=251,s=571}
{x=543,m=2228,a=606,s=473}
{x=1241,m=822,a=1544,s=2650}
{x=656,m=665,a=2678,s=2842}
{x=111,m=1574,a=537,s=807}
{x=152,m=641,a=16,s=325}
{x=2814,m=230,a=2633,s=224}
{x=4,m=856,a=2263,s=32}
{x=1837,m=124,a=221,s=3059}
{x=320,m=311,a=1653,s=15}
{x=265,m=307,a=930,s=2960}
{x=796,m=87,a=2572,s=741}
{x=602,m=585,a=2755,s=381}
{x=455,m=441,a=610,s=1380}
{x=552,m=1554,a=1800,s=39}
{x=1707,m=170,a=92,s=789}
{x=772,m=490,a=1173,s=763}
{x=2930,m=2475,a=1873,s=1826}
{x=1571,m=572,a=1883,s=1534}
{x=2008,m=2416,a=155,s=799}
{x=2060,m=1868,a=372,s=41}
{x=1899,m=104,a=7,s=456}
{x=37,m=718,a=642,s=1394}
{x=2078,m=1001,a=2864,s=791}
{x=124,m=890,a=2174,s=2418}
{x=996,m=2173,a=318,s=2194}

54
19/part1.pl Normal file
View File

@ -0,0 +1,54 @@
:- use_module(library(pio)).
:- use_module(library(dcg/basics)).
:- initialization(main, main).
main([FileName|_]) :-
input(FileName, Workflows, Parts),
concurrent_maplist(wf(Workflows, in), Parts, Scores),
sum_list(Scores, Score),
write(Score), nl.
wf(_, accept, [x-X, m-M, a-A, s-S], Score) :- Score is X + M + A + S, !.
wf(_, reject, _Part, 0) :- !.
wf(Workflows, WorkflowName, Part, Score) :-
member(WorkflowName-Rules, Workflows),
rule(Workflows, Rules, Part, Score).
rule(Workflows, [EndRule], Part, Score) :- wf(Workflows, EndRule, Part, Score).
rule(Workflows, [Attr-Cond-N-Dest|Rules], Part, Score) :-
( satisfy(Attr-Cond-N, Part)
-> wf(Workflows, Dest, Part, Score)
; rule(Workflows, Rules, Part, Score)
).
satisfy(Attr-Cond-N, Part) :- member(Attr-M, Part), call(Cond, M, N).
% input parsing stuff below
input(FileName, Workflows, Parts) :-
phrase_from_file((workflows(Workflows), parts(Parts)), FileName).
workflows([]) --> "\n", !.
workflows([Name-Rules|Ws]) -->
string_without("{", NameStr), "{", rules(Rules), "}\n", workflows(Ws),
{atom_codes(Name, NameStr)}.
rules([End]) --> dest(End).
rules([Rule|Rules]) --> rule(Rule), ",", rules(Rules).
rule(Attr-Cond-N-Dest) --> attr(Attr), cond(Cond), number(N), ":", dest(Dest).
attr(x) --> "x".
attr(m) --> "m".
attr(a) --> "a".
attr(s) --> "s".
cond('>') --> ">".
cond('<') --> "<".
dest(reject) --> "R", !.
dest(accept) --> "A", !.
dest(Dest) --> endrule(Dest).
endrule(Rule) --> string_without(",}", RuleStr), {atom_codes(Rule, RuleStr)}.
parts([]) --> eos, !.
parts([[x-X, m-M, a-A, s-S]|Parts]) -->
"{x=", number(X), ",m=", number(M), ",a=", number(A), ",s=", number(S),
"}\n", parts(Parts).

17
19/test.txt Normal file
View File

@ -0,0 +1,17 @@
px{a<2006:qkq,m>2090:A,rfg}
pv{a>1716:R,A}
lnx{m>1548:A,A}
rfg{s<537:gd,x>2440:R,A}
qs{s>3448:A,lnx}
qkq{x<1416:A,crn}
crn{x>2662:A,R}
in{s<1351:px,qqz}
qqz{s>2770:qs,m<1801:hdj,R}
gd{a>3333:R,R}
hdj{m>838:A,pv}
{x=787,m=2655,a=1222,s=2876}
{x=1679,m=44,a=2067,s=496}
{x=2036,m=264,a=79,s=2244}
{x=2461,m=1339,a=466,s=291}
{x=2127,m=1623,a=2188,s=1013}