七行プログラミング part2
at TECH
519:デフォルトの名無しさん
02/07/21 11:53
>>518
参考になります。
過去ログあんまり読んでなので。なんとなくやっただけだし。
今9行。exec E input outputでエンコード
exec d input outputでデコード
ファイルの入出力が痛い。
#include <stdio.h>
size_t l=0,r=~0,z,q,e,u[257],g;unsigned char f[256];main(int a,char**v){FILE*n
=fopen(v[2],"rb"),*o=fopen(v[3],"wb");int c=4,x=256;if(g=*v[1]-69){fread(&z,4,
1,n);fread(f,1,x,n);for(;c--;)e=e*x|fgetc(n);}else{while(~(c=fgetc(n)))z++,f[c
]<255?f[c]++:0;fwrite(&z,4,1,o);fwrite(f,1,x,o);fseek(n,0,0);}for(c=0;c<x;c++)
u[c+1]=u[c]+f[c];while(g?z--:~(c=fgetc(n))){r/=u[x];if(g){if((q=(e-l)/r)>=u[x]
)break;for(c=x;--c&&q<u[c];);fputc(c,o);}l+=u[c]*r;r*=f[c];while((l^l+r)<1<<24
||r<1<<16&&((r=65535&~l+1),1))g?(e=e*x|fgetc(n)):fputc(l>>24,o),r*=x,l*=x;}if(
!g)for(c=4;c--;)fputc(l>>24,o),l*=x;}
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5377日前に更新/349 KB
担当:undef