📄 fine.hin
字号:
Best One Liner: <fine@cis.ohio-state.edu> Thomas A. Fine Thomas A. Fine Ohio State University Department of Computer and Information Science 2036 Neil Avenue Mall Columbus, Ohio 43210 USAJudges' comments: Make and run as follows: make fine echo "green terra vex tang vend onyx cheryl be flashy rail clerk" | fine This filter, 80 chars plus a newline, fits into a single line on most terminals (unless your terminal has a line wrap mis-feature :-)). This entry is likely one of the smallest C implementations of this filter, excluding programs that resort to command line or include file tricks. How does this program work? Which 3 bytes of C code can be changed into 2 bytes, allowing the program to still work, but also stripping the high bit off of some input?Selected notes from the author: The author wishes to thank J Greely for the last 6 bytes. Here's about how it does it: [rot13 to read] ABGR: Ovgf ner ersreerq gb nf 76543210, uvtu gb ybj. 1. Trg gur punenpgre va inevnoyr n. Abgr gur sha jnl jr purpx sbe RBS. (gunaxf W). 2. Erirefr ovg 6, naq fgevc ovg 5. Ovg 6 qrgrezvarf (zbfgyl) jurgure be abg guvf punenpgre vf n yrggre. Ovg 5 jbhyq qrgrezvar pnfr vs jr pnerq. Nffvta guvf inyhr gb inevnoyr o (Jr arrq gb fnir vg, fvapr jr arrq gb znxr 2 pbzcnevfbaf naq znlor bar bcrengvba jvgu guvf inyhr). Jr pna'g nohfr bhe svefg inevnoyr, fvapr vg fnirf gur ovgf jr'er punatvat. 3. Purpx guvf inyhr gb frr vs vg vf n yrggre. Vg zhfg or aba-mreb - vs vg vf mreb, gura jr unir rvgure gur ng-fvta (64) be gur onpxdhbgr (96). Vg nyfb zhfg or yrff guna 27 - guvf purpxf gur enatr sbe yrggref nf jryy nf vzcyvpvgyl purpxvat gur inyhr bs ovg 6 (vs vg jnf bevtvanyyl pyrne, vg vf frg abj, fb o jbhyq or gb ovt). 4. Vs vg vf abg n yrggre, gur pbaqvgvbany rkcerffvba vafvqr bs gur chgpune() ergheaf gur bevtvany punenpgre (n). Bgurejvfr, vg ergheaf n ernyyl zrffl rkcerffvba gung cresbezf gur npghny ebgngvba naq svkrf gur svsgu naq fvkgu ovgf: N. Fhogenpg 1, gb trg vagb gur enatr 0-25 (sbe gur zbqhyb bcrengvba). O. Nqq 13 gb gur punenpgre. Fgrcf N naq O ner pbzovarq. P. Gnxr guvf zbqhyb 26 gb znxr gur nqqvgvba jenc nebhaq. Q. Svk ovgf 5 naq 6, onfrq ba inevnoyr n. R. Nqq 1 onpx va (jr gbbx vg bhg va fgrc N.) Guvf vf bxnl gb qb *nsgre* fgrc Q, orpnhfr jr xabj gur nqqvgvba jba'g gevpxyr hc cnfg gur sbhegu ovg (o jbhyq unir gb or 31 sbe guvf gb unccra). Abgvpr gung guvf vzcyrzragngvba bcrengrf bayl ba punenpgref jvgu gur uvtu ovg pyrne. Gur uvtu ovg pna or vtaberq jvgubhg punatvat gur fvmr bs gur cebtenz. Nyfb, vs lbh xabj lbh ner bayl qrnyvat jvgu frira ovg qngn, gur fvmr pna or erqhprq ol bar olgr. Gurfr ner yrsg nf rkrepvfrf sbe gur fghqrag.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -