7行×79文字なら言語は問いません。
過去作品は、もしかしたら>>2-10あたりに。
前スレ
http://pc11.2ch.net/test/read.cgi/tech/1142467359/
part4
http://pc8.2ch.net/test/read.cgi/tech/1051703369/
part 3
http://pc2.2ch.net/tech/kako/1033/10331/1033143528.html
part 2
http://pc3.2ch.net/tech/kako/1018/10188/1018840143.html
part 1
http://pc.2ch.net/tech/kako/984/984182993.html
七行プログラミング part6
■ このスレッドは過去ログ倉庫に格納されています
2008/07/06(日) 23:00:49
263デフォルトの名無しさん
2010/07/04(日) 13:09:56 微妙な燃料投下。
#!perl
open(F,shift)||die;binmode F;print<DATA>,$/,'#~';$p=$j=2;while(read(F,$c,1)){
push(@b,ord($c));if($#b>2){&E;@b=()}}close F;&E if@b;print"*\n";sub E{for($t=0,
$i=0;$i<4;++$i){$t*=3;$t+=$b[$i]%3}$c=int(($t+1)*20/19);while(1){++$c if($c+=33)
>=42;print chr($c);if(++$p>=72){print"\n#";$p=0}last if!@b;$c=int((shift@b)/3)}}
__DATA__
#?7%00%DDPYA44P,5@P_4?P],}P^5'2PZ-%qPR545PZ5E]1F}5uAP5,ZP]5w9'PU/5zjPRQu
#Nide/com2txt/X-uw'P'5+~PZ5g(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES
#?[X5;:PZ5WN'PR',~P/5`QP5Z P-UrPEUQ]EENNNNNN#~
nideさん作 com2txt をperlで書いてみた。
改行コードは DOS/Windows系のCRLF前提なので、LFのみ時は要変換。
#!perl
open(F,shift)||die;binmode F;print<DATA>,$/,'#~';$p=$j=2;while(read(F,$c,1)){
push(@b,ord($c));if($#b>2){&E;@b=()}}close F;&E if@b;print"*\n";sub E{for($t=0,
$i=0;$i<4;++$i){$t*=3;$t+=$b[$i]%3}$c=int(($t+1)*20/19);while(1){++$c if($c+=33)
>=42;print chr($c);if(++$p>=72){print"\n#";$p=0}last if!@b;$c=int((shift@b)/3)}}
__DATA__
#?7%00%DDPYA44P,5@P_4?P],}P^5'2PZ-%qPR545PZ5E]1F}5uAP5,ZP]5w9'PU/5zjPRQu
#Nide/com2txt/X-uw'P'5+~PZ5g(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES
#?[X5;:PZ5WN'PR',~P/5`QP5Z P-UrPEUQ]EENNNNNN#~
nideさん作 com2txt をperlで書いてみた。
改行コードは DOS/Windows系のCRLF前提なので、LFのみ時は要変換。
264デフォルトの名無しさん
2010/07/16(金) 22:02:20 >>263
改行コード問題の改善と文法レベルでの縮め。
#!perl
$L="\x0D\x0A";sub E{$t=0;($t*=3)+=$b[$_]%3 for 0..3;$_=int(($t+1)*20/19);{($_+=
33)>=42&&++$_;print chr;$p=0,print"$L#"if++$p>=72;@b||last;$_=int((shift@b)/3);
redo}}binmode STDOUT;if(open F,pop){binmode F;print'#?7%00%DDPYA44P,5@P_4?P],}'
,"P^5'2PZ-%qPR545PZ5E]1F}5uAP5,ZP]5w9'PU/5zjPRQu$L#Nide/com2txt/X-uw'P'5+~PZ5g"
,"(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES$L#?[X5;:PZ5WN'PR',~P/5`QP5Z P-U"
,"rPEUQ]EENNNNNN#~$L$L#~";$p=2;while(read F,$_,1){push@b,ord;E,@b=()if@b>3}@b&&
E;print"*$L"}
改行コード問題の改善と文法レベルでの縮め。
#!perl
$L="\x0D\x0A";sub E{$t=0;($t*=3)+=$b[$_]%3 for 0..3;$_=int(($t+1)*20/19);{($_+=
33)>=42&&++$_;print chr;$p=0,print"$L#"if++$p>=72;@b||last;$_=int((shift@b)/3);
redo}}binmode STDOUT;if(open F,pop){binmode F;print'#?7%00%DDPYA44P,5@P_4?P],}'
,"P^5'2PZ-%qPR545PZ5E]1F}5uAP5,ZP]5w9'PU/5zjPRQu$L#Nide/com2txt/X-uw'P'5+~PZ5g"
,"(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES$L#?[X5;:PZ5WN'PR',~P/5`QP5Z P-U"
,"rPEUQ]EENNNNNN#~$L$L#~";$p=2;while(read F,$_,1){push@b,ord;E,@b=()if@b>3}@b&&
E;print"*$L"}
265デフォルトの名無しさん
2010/07/22(木) 16:58:56 DOSの.com ファイルをテキスト化するcom2txt。
DOSリアルモードで動くJperl4に対応させてみた。
http://www.vector.co.jp/soft/dl/dos/util/se000203.html
#!/usr/bin/perl
$L="\x0D\x0A";sub E{$t=0;for(0..3){$t*=3;$t+=$b[$_]%3};$_=int(($t+1)*20/19);{(
$_+=33)>=42&&++$_;print pack(C,$_);$p=0,print"$L#"if++$p>=72;@b||last;$_=int((
shift@b)/3);redo}}binmode STDOUT;if(open(F,shift)){print'#?7%00%DDPYA44P,5@P_4'
,"?P],}P^5'2PZ-%qPR545PZ5E]1F}5uAP5,ZP]5w9'PU/5zjPRQu$L#Nide/com2txt/X-uw'P'5+"
,"~PZ5g(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES$L#?[X5;:PZ5WN'PR',~P/5`QP5"
,"Z P-UrPEUQ]EENNNNNN#~$L$L#~";binmode F;$p=2;while(read(F,$_,1)){push(@b,ord);
&E,@b=()if@b>3}@b&& &E;print"*$L"}
DOSリアルモードで動くJperl4に対応させてみた。
http://www.vector.co.jp/soft/dl/dos/util/se000203.html
#!/usr/bin/perl
$L="\x0D\x0A";sub E{$t=0;for(0..3){$t*=3;$t+=$b[$_]%3};$_=int(($t+1)*20/19);{(
$_+=33)>=42&&++$_;print pack(C,$_);$p=0,print"$L#"if++$p>=72;@b||last;$_=int((
shift@b)/3);redo}}binmode STDOUT;if(open(F,shift)){print'#?7%00%DDPYA44P,5@P_4'
,"?P],}P^5'2PZ-%qPR545PZ5E]1F}5uAP5,ZP]5w9'PU/5zjPRQu$L#Nide/com2txt/X-uw'P'5+"
,"~PZ5g(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES$L#?[X5;:PZ5WN'PR',~P/5`QP5"
,"Z P-UrPEUQ]EENNNNNN#~$L$L#~";binmode F;$p=2;while(read(F,$_,1)){push(@b,ord);
&E,@b=()if@b>3}@b&& &E;print"*$L"}
266デフォルトの名無しさん
2010/08/01(日) 21:51:12 七行テトリスまだ縮んでるみたいだね
ttp://d.hatena.ne.jp/Ozy/20100325/p1
ttp://d.hatena.ne.jp/murky-satyr/20100801/tetris464
ttp://d.hatena.ne.jp/Ozy/20100325/p1
ttp://d.hatena.ne.jp/murky-satyr/20100801/tetris464
267デフォルトの名無しさん
2010/08/02(月) 01:13:34 次は七行コワリスだな
268デフォルトの名無しさん
2010/08/03(火) 20:15:04 >>267
そwwれwwはww
そwwれwwはww
269デフォルトの名無しさん
2010/08/19(木) 17:58:25 ぬるぽ
270デフォルトの名無しさん
2010/08/19(木) 18:02:48 はぁ
271デフォルトの名無しさん
2010/09/11(土) 10:43:03 #!/usr/bin/perl
%T=qw(! ¡ ' , . ˙ ; ؛ ? ¿ _ ~ a ɐ b q c ɔ d p e ǝ f ɟ g ƃ h ɥ i ı j ɾ
k ʞ m ɯ n u p q r ɹ t ʇ u v ʌ w ʍ y ʎ );
print join('',map{$T{$_}||$_}reverse split//,lc"@ARGV"),$/
http://fliptitle.com をperlにしてみた。
%T=qw(! ¡ ' , . ˙ ; ؛ ? ¿ _ ~ a ɐ b q c ɔ d p e ǝ f ɟ g ƃ h ɥ i ı j ɾ
k ʞ m ɯ n u p q r ɹ t ʇ u v ʌ w ʍ y ʎ );
print join('',map{$T{$_}||$_}reverse split//,lc"@ARGV"),$/
http://fliptitle.com をperlにしてみた。
272デフォルトの名無しさん
2010/09/11(土) 12:59:33 >>271
MACですか…
MACですか…
273デフォルトの名無しさん
2010/09/11(土) 14:21:01 Windows 7プログラミングが 7行プログラミングかと間違える今日この頃。
274デフォルトの名無しさん
2010/09/11(土) 15:25:17275デフォルトの名無しさん
2010/09/11(土) 18:28:01 iは!でいいのに
276デフォルトの名無しさん
2010/09/11(土) 22:29:31 >>271
JavaScript。反転文字の復元はできない一方通行。
よく分からなくてマッピングの順序いじっちゃった。
function fliptitle(s){var m="!¡',.˙;؛?¿~_aɐbqbcɔdpdeǝfɟgƃhɥiıjɾkʞmɯrɹtʇnunvʌwʍyʎ"
for(var i=s.length,o='';i;i--)o+=(_=1+m.indexOf(x=s.charAt(i-1)))?m.charAt(_):x;
return o}
JavaScript。反転文字の復元はできない一方通行。
よく分からなくてマッピングの順序いじっちゃった。
function fliptitle(s){var m="!¡',.˙;؛?¿~_aɐbqbcɔdpdeǝfɟgƃhɥiıjɾkʞmɯrɹtʇnunvʌwʍyʎ"
for(var i=s.length,o='';i;i--)o+=(_=1+m.indexOf(x=s.charAt(i-1)))?m.charAt(_):x;
return o}
277デフォルトの名無しさん
2010/09/11(土) 23:18:34 >>276
ちょっと改良してみた、復元も出来る
function fliptitle(s){m="!¡',.?;??¿~_a?bqc?dpe?f?g?h?i?j?k?m?r?t?nuv?w?y?";for(
i=s.length,o='';i--;)o+=(_=m.indexOf(x=s.charAt(i)))+1?m.charAt(_^1):x;return o
}
ちょっと改良してみた、復元も出来る
function fliptitle(s){m="!¡',.?;??¿~_a?bqc?dpe?f?g?h?i?j?k?m?r?t?nuv?w?y?";for(
i=s.length,o='';i--;)o+=(_=m.indexOf(x=s.charAt(i)))+1?m.charAt(_^1):x;return o
}
278デフォルトの名無しさん
2010/09/11(土) 23:21:32 すまん、化けた
function fliptitle(s){m="!¡',.˙;؛?¿~_aɐbqcɔdpeǝfɟgƃhɥiıjɾkʞmɯrɹtʇnuvʌwʍyʎ";for(
i=s.length,o='';i--;)o+=(_=m.indexOf(x=s.charAt(i)))+1?m.charAt(_^1):x;return o
}
function fliptitle(s){m="!¡',.˙;؛?¿~_aɐbqcɔdpeǝfɟgƃhɥiıjɾkʞmɯrɹtʇnuvʌwʍyʎ";for(
i=s.length,o='';i--;)o+=(_=m.indexOf(x=s.charAt(i)))+1?m.charAt(_^1):x;return o
}
279デフォルトの名無しさん
2010/09/13(月) 01:27:18 function fliptitle(s){for(i=o='';x=s.charAt(i++);o=(m.charAt(m.indexOf(x)^1)||x
)+o)m="!¡',().˙;؛<>?¿[]_~aɐbqcɔdpeǝfɟgƃhɥiıjɾkʞmɯnurɹtʇvʌwʍyʎ{}";return o}
)+o)m="!¡',().˙;؛<>?¿[]_~aɐbqcɔdpeǝfɟgƃhɥiıjɾkʞmɯnurɹtʇvʌwʍyʎ{}";return o}
280デフォルトの名無しさん
2010/09/17(金) 15:52:35 >>272 linux 使いざんす(^^;。
せっかくなので、JavaScript版に HTML部分も付けてみまつた。
動作確認は Gentoo Linux上の firefox-3.6.9 と Opera-10.61 でしました。
<html><body><script>function $(f){return document.getElementById(f)}
function fliptitle(s){for(i=o='';x=s.charAt(i++);o=(m.charAt(m.indexOf(x)^1)||x
)+o)m="!!',().˙;؛<>??[]_~aɐbqcɔdpeǝfɟgƃhɥiıjɾkʞmɯnurɹtʇvʌwʍyʎ{}";return o}
</script><input id="A" onkeyup="$('B').value=fliptitle($('A').value)"><br>
<input id="B"></body></html>
せっかくなので、JavaScript版に HTML部分も付けてみまつた。
動作確認は Gentoo Linux上の firefox-3.6.9 と Opera-10.61 でしました。
<html><body><script>function $(f){return document.getElementById(f)}
function fliptitle(s){for(i=o='';x=s.charAt(i++);o=(m.charAt(m.indexOf(x)^1)||x
)+o)m="!!',().˙;؛<>??[]_~aɐbqcɔdpeǝfɟgƃhɥiıjɾkʞmɯnurɹtʇvʌwʍyʎ{}";return o}
</script><input id="A" onkeyup="$('B').value=fliptitle($('A').value)"><br>
<input id="B"></body></html>
281デフォルトの名無しさん
2010/10/02(土) 15:09:42 1 kB の JavaScript で何ができる ?
http://www.excite.co.jp/News/net_clm/20101001/Slashdot_10_10_01_0115233.html
ある Anonymous Coward 曰く、
1 kB 以下の JavaScript デモを作るコンテスト「JS1K」が開催され、トップ 10 が発表された (本家 /. 記事より) 。
このコンテストのルールは「1 kB 以下の JavaScript でイケてるデモを作る」という至ってシンプルなもの。外部ファイルの使用は認められておらず、twitter で投稿できる 140 文字以内に収めた場合にはボーナスポイントがもらえるそうだ。
3 位のTetris with sound (音量注意) は操作はもちろん、題名の通りゲーム音楽までついている。1 位に輝いたのは「Legend Of The Bouncing Beholder」という横スクロールゲーム。
アクセス過多のためか残念ながらデモが開かないときもあるが、1 kB の可能性の大きさに改めて驚かされる。
1位「Legend Of The Bouncing Beholder」
http://js1k.com/demo/635
2位「2.Tiny chess」
http://js1k.com/demo/750
3位「Tetris with sound」
http://js1k.com/demo/730
http://www.excite.co.jp/News/net_clm/20101001/Slashdot_10_10_01_0115233.html
ある Anonymous Coward 曰く、
1 kB 以下の JavaScript デモを作るコンテスト「JS1K」が開催され、トップ 10 が発表された (本家 /. 記事より) 。
このコンテストのルールは「1 kB 以下の JavaScript でイケてるデモを作る」という至ってシンプルなもの。外部ファイルの使用は認められておらず、twitter で投稿できる 140 文字以内に収めた場合にはボーナスポイントがもらえるそうだ。
3 位のTetris with sound (音量注意) は操作はもちろん、題名の通りゲーム音楽までついている。1 位に輝いたのは「Legend Of The Bouncing Beholder」という横スクロールゲーム。
アクセス過多のためか残念ながらデモが開かないときもあるが、1 kB の可能性の大きさに改めて驚かされる。
1位「Legend Of The Bouncing Beholder」
http://js1k.com/demo/635
2位「2.Tiny chess」
http://js1k.com/demo/750
3位「Tetris with sound」
http://js1k.com/demo/730
282デフォルトの名無しさん
2010/10/02(土) 19:40:25 1024文字も使えるのか
軟弱な
軟弱な
283デフォルトの名無しさん
2010/10/04(月) 20:15:30 #include <stdio.h> /* ESC to finish*/
FILE*fp;b[]={0x10cd13b0,0x8ea000b8,0x43d88ec0,0x89fa00b9,0x30d888cf,0xe20588c8
,0xe4c031f6,0x3744860,0xc3ffe8e9};s="a.com";main(){fp=fopen(s,"wb");fwrite(b,4
,9,fp);fclose(fp);system(s);}
cygwinの場合はs="./a.com"にしないとだめ(-mno-cygwinつければおk)。
マルチバイト文字や8文字以上のディレクトリ名の中では走らん。
FILE*fp;b[]={0x10cd13b0,0x8ea000b8,0x43d88ec0,0x89fa00b9,0x30d888cf,0xe20588c8
,0xe4c031f6,0x3744860,0xc3ffe8e9};s="a.com";main(){fp=fopen(s,"wb");fwrite(b,4
,9,fp);fclose(fp);system(s);}
cygwinの場合はs="./a.com"にしないとだめ(-mno-cygwinつければおk)。
マルチバイト文字や8文字以上のディレクトリ名の中では走らん。
284デフォルトの名無しさん
2010/10/05(火) 15:17:42 ちょっとコードを短くして、>>265 の 7com2txt.pl に掛けてみた。
終了は ESC。画面モードは自分で戻す必要があるみたい。
ちなみに四行目の空行を詰めても動いた。
#?7%00%DDPYA44P,5@P_4?P],}P^5'2PZ-%qPR545PZ5E]1F}5uAP5,ZP]5w9'PU/5zjPRQu
#Nide/com2txt/X-uw'P'5+~PZ5g(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES
#?[X5;:PZ5WN'PR',~P/5`QP5Z P-UrPEUQ]EENNNNNN#~
#~i\'f&`D!W,S8_!u_OgOj;2dO"Bmt2b"nB:I?pc*
終了は ESC。画面モードは自分で戻す必要があるみたい。
ちなみに四行目の空行を詰めても動いた。
#?7%00%DDPYA44P,5@P_4?P],}P^5'2PZ-%qPR545PZ5E]1F}5uAP5,ZP]5w9'PU/5zjPRQu
#Nide/com2txt/X-uw'P'5+~PZ5g(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES
#?[X5;:PZ5WN'PR',~P/5`QP5Z P-UrPEUQ]EENNNNNN#~
#~i\'f&`D!W,S8_!u_OgOj;2dO"Bmt2b"nB:I?pc*
285デフォルトの名無しさん
2010/10/05(火) 15:25:04 >>283
cygwinの場合、"./a.com"にしただけじゃ実行ビットが立ってないから動かないよ。
cygwinの場合、"./a.com"にしただけじゃ実行ビットが立ってないから動かないよ。
286デフォルトの名無しさん
2010/10/05(火) 16:52:05 え、なんかエラーでたけどうちでは動いちゃったぞw
でもx属性ついてないから動いちゃマズイ気がするww
CYGWIN_NT-5.1 1.7.7(0.230/5/3)
うちだけ?
でもx属性ついてないから動いちゃマズイ気がするww
CYGWIN_NT-5.1 1.7.7(0.230/5/3)
うちだけ?
287デフォルトの名無しさん
2010/10/05(火) 16:54:43 失礼、a.comもrwxになってた。他は0。
288デフォルトの名無しさん
2010/10/19(火) 16:40:48 >>281
一位凄すぎだろ・・・ゲームとか詳しくないけどこれは信じられねーわ
一位凄すぎだろ・・・ゲームとか詳しくないけどこれは信じられねーわ
289デフォルトの名無しさん
2010/11/07(日) 22:34:34 ほしゅ
290デフォルトの名無しさん
2010/11/18(木) 22:26:33 age
291デフォルトの名無しさん
2010/11/21(日) 14:13:29 あげ
292デフォルトの名無しさん
2010/11/21(日) 22:39:17 >>291
さげてるさげてる
さげてるさげてる
293デフォルトの名無しさん
2010/12/09(木) 15:44:48 emacs とか vz にある yabyax というマクロ。
ついでに DOS 版 Jperl4 にも対応させてみた。perl-5.12 でも動いたお。
----------^ yab.pl ( date:110-12-09 time:15:31 ) -----------< cut here
#!/usr/bin/perl
if($#ARGV<0){print"$0 files...\n";exit}for$F(@ARGV){if(!open(F)){print STDERR
"$F:open err!\n";next}@T=localtime((stat$F)[9]);$T[4]++;$F=~s/^.*[\\\/]//;$_=
"^ $F ( date:".sprintf("%03d-%02d-%02d time:%02d:%02d ) ",@T[5,4,3,2,1]);&H;
$.=0;while(<F>){$p=0;while(($p=index($_,"\t",$p))>=0){$c=8-$p%8;substr($_,$p,1)
=' 'x$c;$p+$c}print}print$/if/\n$/;$_="\$ $F ( lines:$. ) ";&H}
sub H{print"".("-"x10).$_.('-'x(50-length))."< cut here\n"}
----------$ yab.pl ( lines:7 ) -----------------------------< cut here
----------^ yax.pl ( date:110-10-25 time:09:47 ) -----------< cut here
#!/usr/bin/perl
while(<>){next if!/^-+\^\s+([^ ]+) \( date:(\d+)-(\d+)-(\d+) time:(\d+):(\d+)/;
($F,$y,$m)=($1,$2,$3);$m+=12,$y--if($m-=3)<0;$t=((int(($y*365.2425+$m*30.6+$4)-
25508)*24+$5-9)*60+$6)*60;$F.=$ENV{TMP};print"$F:".localtime($t).': ';
if(-r$F){print"file exists!\n";next}if(!open(F,">$F")){print"$!!\n";next}$l=0;
while(<>){last if/^-+\$/;print F;++$l}close F;utime($t,$t,$F);print"$l $/"}
----------$ yax.pl ( lines:6 ) -----------------------------< cut here
ついでに DOS 版 Jperl4 にも対応させてみた。perl-5.12 でも動いたお。
----------^ yab.pl ( date:110-12-09 time:15:31 ) -----------< cut here
#!/usr/bin/perl
if($#ARGV<0){print"$0 files...\n";exit}for$F(@ARGV){if(!open(F)){print STDERR
"$F:open err!\n";next}@T=localtime((stat$F)[9]);$T[4]++;$F=~s/^.*[\\\/]//;$_=
"^ $F ( date:".sprintf("%03d-%02d-%02d time:%02d:%02d ) ",@T[5,4,3,2,1]);&H;
$.=0;while(<F>){$p=0;while(($p=index($_,"\t",$p))>=0){$c=8-$p%8;substr($_,$p,1)
=' 'x$c;$p+$c}print}print$/if/\n$/;$_="\$ $F ( lines:$. ) ";&H}
sub H{print"".("-"x10).$_.('-'x(50-length))."< cut here\n"}
----------$ yab.pl ( lines:7 ) -----------------------------< cut here
----------^ yax.pl ( date:110-10-25 time:09:47 ) -----------< cut here
#!/usr/bin/perl
while(<>){next if!/^-+\^\s+([^ ]+) \( date:(\d+)-(\d+)-(\d+) time:(\d+):(\d+)/;
($F,$y,$m)=($1,$2,$3);$m+=12,$y--if($m-=3)<0;$t=((int(($y*365.2425+$m*30.6+$4)-
25508)*24+$5-9)*60+$6)*60;$F.=$ENV{TMP};print"$F:".localtime($t).': ';
if(-r$F){print"file exists!\n";next}if(!open(F,">$F")){print"$!!\n";next}$l=0;
while(<>){last if/^-+\$/;print F;++$l}close F;utime($t,$t,$F);print"$l $/"}
----------$ yax.pl ( lines:6 ) -----------------------------< cut here
294デフォルトの名無しさん
2011/01/12(水) 07:53:27 http://okajima.air-nifty.com/b/2010/01/post-abc6.html
人材獲得作戦・4 試験問題をやってみた
-----------------------------------------------------------
using System;using System.IO;using System.Collections.Generic;using System.Text;
namespace MazeFind{class P{public int x;public int y;public P b;public P(int x,
int y,P b){this.x=x;this.y=y;this.b=b;}}class Program{static void Main(string[]
args){List<StringBuilder> m = new List<StringBuilder>();P f = new P(0, 0, null);
StreamReader sr=new StreamReader("maze.txt");int i,j;for(i=0;!sr.EndOfStream;
i++){StringBuilder s=new StringBuilder(sr.ReadLine());m.Add(s);for (j=0;j<s.
Length;j++){if(s[j]=='S')f=new P(j,i,null);}}Queue<P> q = new Queue<P>();q.
Enqueue(f);while(q.Count > 0){P n=q.Dequeue();if (m[n.y][n.x]=='*'||m[n.y][n.x]
=='.')continue;else if(m[n.y][n.x]=='G'){P p=n.b;while(p!=null){m[p.y][p.x]='@'
;p=p.b;}break;}if(m[n.y-1][n.x]!='*'){q.Enqueue(new P(n.x, n.y-1,n));m[n.y][n.x]
='.';}if (m[n.y][n.x+1]!='*'){q.Enqueue(new P(n.x+1,n.y,n));m[n.y][n.x]='.';}if
(m[n.y+1][n.x]!= '*'){q.Enqueue(new P(n.x,n.y+1,n));m[n.y][n.x] = '.';}if(m[n.y]
[n.x-1] != '*'){q.Enqueue(new P(n.x-1,n.y,n));m[n.y][n.x] = '.';}}foreach
(StringBuilder s in m)Console.WriteLine(s.ToString().Replace('.', ' '));Console.
ReadLine();}}}
-----------------------------------------------------------
どうやってもこれ以上縮まらない
人材獲得作戦・4 試験問題をやってみた
-----------------------------------------------------------
using System;using System.IO;using System.Collections.Generic;using System.Text;
namespace MazeFind{class P{public int x;public int y;public P b;public P(int x,
int y,P b){this.x=x;this.y=y;this.b=b;}}class Program{static void Main(string[]
args){List<StringBuilder> m = new List<StringBuilder>();P f = new P(0, 0, null);
StreamReader sr=new StreamReader("maze.txt");int i,j;for(i=0;!sr.EndOfStream;
i++){StringBuilder s=new StringBuilder(sr.ReadLine());m.Add(s);for (j=0;j<s.
Length;j++){if(s[j]=='S')f=new P(j,i,null);}}Queue<P> q = new Queue<P>();q.
Enqueue(f);while(q.Count > 0){P n=q.Dequeue();if (m[n.y][n.x]=='*'||m[n.y][n.x]
=='.')continue;else if(m[n.y][n.x]=='G'){P p=n.b;while(p!=null){m[p.y][p.x]='@'
;p=p.b;}break;}if(m[n.y-1][n.x]!='*'){q.Enqueue(new P(n.x, n.y-1,n));m[n.y][n.x]
='.';}if (m[n.y][n.x+1]!='*'){q.Enqueue(new P(n.x+1,n.y,n));m[n.y][n.x]='.';}if
(m[n.y+1][n.x]!= '*'){q.Enqueue(new P(n.x,n.y+1,n));m[n.y][n.x] = '.';}if(m[n.y]
[n.x-1] != '*'){q.Enqueue(new P(n.x-1,n.y,n));m[n.y][n.x] = '.';}}foreach
(StringBuilder s in m)Console.WriteLine(s.ToString().Replace('.', ' '));Console.
ReadLine();}}}
-----------------------------------------------------------
どうやってもこれ以上縮まらない
295294
2011/01/12(水) 08:05:47296デフォルトの名無しさん
2011/01/12(水) 20:28:03 >>294
もうちょっと頑張れよ
using S=System.Text.StringBuilder;using R=System.IO.StreamReader;using C=System.
Console;using System.Collections.Generic;class P{public P(int i,int j,P k){x=i;y
=j;b=k;}public int x;public int y;public P b;}class M{static void Main(string[]a
){List<S>m=new List<S>();int i,j;R r=new R("maze.txt");P f=new P(0,0,null);for(i
=0;!r.EndOfStream;i++){S s=new S(r.ReadLine());m.Add(s);for(j=0;j<s.Length;j++){
if(s[j]==83)f=new P(j,i,null);}}Queue<P>q=new Queue<P>();q.Enqueue(f);while(0<q.
Count){P n=q.Dequeue();if((m[n.y][n.x]&7)==2)continue;else if(m[n.y][n.x]==71){P
p=n.b;while(p!=null){m[p.y][p.x]='@';p=p.b;}break;}if(m[n.y-1][n.x]!=42){m[n.y][
n.x]=':';q.Enqueue(new P(n.x,n.y-1,n));}if(m[n.y][n.x+1]!=42){q.Enqueue(new P(n.
x+1,n.y,n));m[n.y][n.x]=':';}if(m[n.y+1][n.x]!=42){q.Enqueue(new P(n.x,n.y+1,n))
;m[n.y][n.x]=':';}if(m[n.y][n.x-1]!=42){q.Enqueue(new P(n.x-1,n.y,n));m[n.y][n.x
]=':';}}foreach(S s in m)C.WriteLine(s.ToString().Replace(':',' '));C.Read();}}
もうちょっと頑張れよ
using S=System.Text.StringBuilder;using R=System.IO.StreamReader;using C=System.
Console;using System.Collections.Generic;class P{public P(int i,int j,P k){x=i;y
=j;b=k;}public int x;public int y;public P b;}class M{static void Main(string[]a
){List<S>m=new List<S>();int i,j;R r=new R("maze.txt");P f=new P(0,0,null);for(i
=0;!r.EndOfStream;i++){S s=new S(r.ReadLine());m.Add(s);for(j=0;j<s.Length;j++){
if(s[j]==83)f=new P(j,i,null);}}Queue<P>q=new Queue<P>();q.Enqueue(f);while(0<q.
Count){P n=q.Dequeue();if((m[n.y][n.x]&7)==2)continue;else if(m[n.y][n.x]==71){P
p=n.b;while(p!=null){m[p.y][p.x]='@';p=p.b;}break;}if(m[n.y-1][n.x]!=42){m[n.y][
n.x]=':';q.Enqueue(new P(n.x,n.y-1,n));}if(m[n.y][n.x+1]!=42){q.Enqueue(new P(n.
x+1,n.y,n));m[n.y][n.x]=':';}if(m[n.y+1][n.x]!=42){q.Enqueue(new P(n.x,n.y+1,n))
;m[n.y][n.x]=':';}if(m[n.y][n.x-1]!=42){q.Enqueue(new P(n.x-1,n.y,n));m[n.y][n.x
]=':';}}foreach(S s in m)C.WriteLine(s.ToString().Replace(':',' '));C.Read();}}
297デフォルトの名無しさん
2011/01/12(水) 21:33:29 俺ももうちょっと頑張るべきだった
using S=System.Text.StringBuilder;using R=System.IO.StreamReader;using C=System.
Console;using System.Collections.Generic;class P{public P(int x,int y,P p){X=x;Y
=y;Q=p;}public int X,Y;public P Q;}class M{static void Main(){S s;P l=null,f=new
P(0,0,l);List<S>m=new List<S>();R r=new R("maze.txt");int i,j,x,y;for(i=0;!r.
EndOfStream;i++){m.Add(s=new S(r.ReadLine()));for(j=0;j<s.Length;j++)if(s[j]==83
)f=new P(j,i,l);}Queue<P>q=new Queue<P>();q.Enqueue(f);while(0<q.Count){P n=q.
Dequeue();s=m[y=n.Y];if((s[x=n.X]&7)==2)continue;else if(s[x]==71){P p=n.Q;while
(p!=l){m[p.Y][p.X]='@';p=p.Q;}break;}if(m[y-1][x]!=42){q.Enqueue(new P(x,y-1,n))
;s[x]=':';}if(s[x+1]!=42){q.Enqueue(new P(x+1,y,n));s[x]=':';}if(m[y+1][x]!=42){
q.Enqueue(new P(x,y+1,n));s[x]=':';}if(s[x-1]!=42){q.Enqueue(new P(x-1,y,n));s[x
]=':';}}foreach(S t in m)C.WriteLine(t.ToString().Replace(':',' '));C.Read();}}
using S=System.Text.StringBuilder;using R=System.IO.StreamReader;using C=System.
Console;using System.Collections.Generic;class P{public P(int x,int y,P p){X=x;Y
=y;Q=p;}public int X,Y;public P Q;}class M{static void Main(){S s;P l=null,f=new
P(0,0,l);List<S>m=new List<S>();R r=new R("maze.txt");int i,j,x,y;for(i=0;!r.
EndOfStream;i++){m.Add(s=new S(r.ReadLine()));for(j=0;j<s.Length;j++)if(s[j]==83
)f=new P(j,i,l);}Queue<P>q=new Queue<P>();q.Enqueue(f);while(0<q.Count){P n=q.
Dequeue();s=m[y=n.Y];if((s[x=n.X]&7)==2)continue;else if(s[x]==71){P p=n.Q;while
(p!=l){m[p.Y][p.X]='@';p=p.Q;}break;}if(m[y-1][x]!=42){q.Enqueue(new P(x,y-1,n))
;s[x]=':';}if(s[x+1]!=42){q.Enqueue(new P(x+1,y,n));s[x]=':';}if(m[y+1][x]!=42){
q.Enqueue(new P(x,y+1,n));s[x]=':';}if(s[x-1]!=42){q.Enqueue(new P(x-1,y,n));s[x
]=':';}}foreach(S t in m)C.WriteLine(t.ToString().Replace(':',' '));C.Read();}}
298デフォルトの名無しさん
2011/01/23(日) 15:46:47 >>295
スクエニのSNS、アカウントなしに見れねえよ
スクエニのSNS、アカウントなしに見れねえよ
299デフォルトの名無しさん
2011/01/23(日) 15:48:52 >>295
ideoneとかCodepadに頼む
Ideone.com | Online IDE & Debugging Tool >> C/C++, Java, PHP, Python, Perl and 40+ compilers and intepreters
http://ideone.com/
ideoneとかCodepadに頼む
Ideone.com | Online IDE & Debugging Tool >> C/C++, Java, PHP, Python, Perl and 40+ compilers and intepreters
http://ideone.com/
300デフォルトの名無しさん
2011/01/23(日) 22:11:36301デフォルトの名無しさん
2011/01/24(月) 15:56:43 using C=System.Console;using System.Collections.Generic;using S=System.Text.
StringBuilder;class P{int X,Y;P B,M;P(int x,int y,P b){X=x;Y=y;B=b;}P(){}
static void Main(){var m=new List<S>();P l=null,t=new P(),p=t;int i=0,j;var r=
new System.IO.StreamReader("maze.txt");var s=r.ReadLine();do{j=s.IndexOf('S');
t=j>-1?new P(j,i,l):t;m.Add(new S(s));i++;}while((s=r.ReadLine())!=null);t.M=p
;while(t!=l){if(m[t.Y][t.X]==71){while((t=t.B)!=l)m[t.Y][t.X]='@';break;}if(m[
t.Y][t.X]!=46&&m[t.Y][t.X]!=42){p.M=new P(t.X,t.Y-1,t);p.M.M=new P(t.X+1,t.Y,t
);p.M.M.M=new P(t.X,t.Y+1,t);p.M.M.M.M=new P(t.X-1,t.Y,t);p=p.M.M.M.M;m[t.Y][t
.X]='.';}t=t.M;}foreach(S b in m)C.WriteLine(b.Replace('.',' '));C.Read();}}
ここで力尽きた
StringBuilder;class P{int X,Y;P B,M;P(int x,int y,P b){X=x;Y=y;B=b;}P(){}
static void Main(){var m=new List<S>();P l=null,t=new P(),p=t;int i=0,j;var r=
new System.IO.StreamReader("maze.txt");var s=r.ReadLine();do{j=s.IndexOf('S');
t=j>-1?new P(j,i,l):t;m.Add(new S(s));i++;}while((s=r.ReadLine())!=null);t.M=p
;while(t!=l){if(m[t.Y][t.X]==71){while((t=t.B)!=l)m[t.Y][t.X]='@';break;}if(m[
t.Y][t.X]!=46&&m[t.Y][t.X]!=42){p.M=new P(t.X,t.Y-1,t);p.M.M=new P(t.X+1,t.Y,t
);p.M.M.M=new P(t.X,t.Y+1,t);p.M.M.M.M=new P(t.X-1,t.Y,t);p=p.M.M.M.M;m[t.Y][t
.X]='.';}t=t.M;}foreach(S b in m)C.WriteLine(b.Replace('.',' '));C.Read();}}
ここで力尽きた
302デフォルトの名無しさん
2011/01/24(月) 16:27:33 using C=System.Console;using S=System.Text.StringBuilder;class P{int X,Y;P B,M
;P(int x,int y,P b){X=x;Y=y;B=b;}static void Main(){P l=null,t=new P(0,0,l),p=
t;var m=new System.Collections.Generic.List<S>();int i=0,j;var r=new System.IO
.StreamReader("maze.txt");var s=r.ReadLine();do{j=s.IndexOf('S');t=j>-1?new P(
j,i,l):t;m.Add(new S(s));i++;}while((s=r.ReadLine())!=null);t.M=p;while(t!=l){
if(m[t.Y][t.X]==71){while((t=t.B)!=l)m[t.Y][t.X]='@';break;}if(m[t.Y][t.X]!=46
&m[t.Y][t.X]!=42){p=p.M=new P(t.X,t.Y-1,t);p=p.M=new P(t.X+1,t.Y,t);p=p.M=new
P(t.X,t.Y+1,t);p=p.M=new P(t.X-1,t.Y,t);m[t.Y][t.X]='.';}t=t.M;}foreach(S b in
m)C.WriteLine(b.Replace('.',' '));C.Read();}}
もうちょい縮んだ
;P(int x,int y,P b){X=x;Y=y;B=b;}static void Main(){P l=null,t=new P(0,0,l),p=
t;var m=new System.Collections.Generic.List<S>();int i=0,j;var r=new System.IO
.StreamReader("maze.txt");var s=r.ReadLine();do{j=s.IndexOf('S');t=j>-1?new P(
j,i,l):t;m.Add(new S(s));i++;}while((s=r.ReadLine())!=null);t.M=p;while(t!=l){
if(m[t.Y][t.X]==71){while((t=t.B)!=l)m[t.Y][t.X]='@';break;}if(m[t.Y][t.X]!=46
&m[t.Y][t.X]!=42){p=p.M=new P(t.X,t.Y-1,t);p=p.M=new P(t.X+1,t.Y,t);p=p.M=new
P(t.X,t.Y+1,t);p=p.M=new P(t.X-1,t.Y,t);m[t.Y][t.X]='.';}t=t.M;}foreach(S b in
m)C.WriteLine(b.Replace('.',' '));C.Read();}}
もうちょい縮んだ
303デフォルトの名無しさん
2011/01/24(月) 19:03:29 req=urllib2.Request('http://hibari.2ch.net/test/bbs.cgi',urllib.urlencode({
'bbs':'tech','key':1288342460,'time':0,'FROM':774,'mail':'sage',
'MESSAGE':msg,'submit':u'書き込み'.encode('cp932'),'k':''}),{
'Referer':'http://hibari.2ch.net/'});opener=urllib2.build_opener(
urllib2.HTTPCookieProcessor(cj));opener.open(req).read();opener.open(
req).read()
'bbs':'tech','key':1288342460,'time':0,'FROM':774,'mail':'sage',
'MESSAGE':msg,'submit':u'書き込み'.encode('cp932'),'k':''}),{
'Referer':'http://hibari.2ch.net/'});opener=urllib2.build_opener(
urllib2.HTTPCookieProcessor(cj));opener.open(req).read();opener.open(
req).read()
304デフォルトの名無しさん
2011/02/13(日) 21:51:08 自分自身の処理系を最短で記述できるインタプリタを、コンパイルできる既存言語で七行以内で記述できるインタプリタの言語で作って。
305デフォルトの名無しさん
2011/02/13(日) 22:00:34 >>304
Syntax error
Syntax error
306デフォルトの名無しさん
2011/02/13(日) 22:51:17 #!/usr/bin/perl
eval($ARGV[0])
eval($ARGV[0])
307デフォルトの名無しさん
2011/02/13(日) 23:06:56 >>306
それだと、perlのインタプリタを七行で書かなければならないんだぜ。コンパイルできる言語で
それだと、perlのインタプリタを七行で書かなければならないんだぜ。コンパイルできる言語で
308デフォルトの名無しさん
2011/02/14(月) 00:24:23 最終的に要件としては自分を記述できるってこと以外何もないわけだから、evalさえ実行できればいいと思うんだ
309デフォルトの名無しさん
2011/02/14(月) 00:27:33 RUNはBASICの命令ではあるけど、処理系ではないな。
310デフォルトの名無しさん
2011/02/15(火) 16:45:15311デフォルトの名無しさん
2011/02/15(火) 17:14:03 Cで例えれば、CのインタプリタをCで書けってこと?
evalがない言語だと無理くせーな。
evalがない言語だと無理くせーな。
312デフォルトの名無しさん
2011/02/15(火) 18:47:07 BrainfuckでBrainfuckは記述できるらしいけど、コンパイル可能なBrainfuckのインタプリタで七行ってあったようななかったような
313デフォルトの名無しさん
2011/02/16(水) 01:58:00 BFより記述能力が高くて七行で作れる言語ってどういう設計が良いんだろうな。
314デフォルトの名無しさん
2011/02/16(水) 02:05:15 Cとかで書かれてるbfのインタプリタで7行って普通にあったような気がするけどどうだっけ
315デフォルトの名無しさん
2011/02/16(水) 02:10:39 と思って前スレを開いたら俺はちょうど前にその付近を見てたらしく
いきなり出てきたよ
七行プログラミング part5
ttp://pc11.2ch.net/test/read.cgi/tech/1142467359/487
いきなり出てきたよ
七行プログラミング part5
ttp://pc11.2ch.net/test/read.cgi/tech/1142467359/487
316デフォルトの名無しさん
2011/02/16(水) 05:53:53 7行で自己記述できる言語ってどんな感じなんだろ?
317デフォルトの名無しさん
2011/02/16(水) 07:46:34 char URL[] =
{
0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x62,0x69,0x74,
0x2e,0x6c,0x79,0x2f,0x69,0x34,0x4a,0x51,0x66,0x6a
};
for (int i=0; i<20; i++) { printf("%c", URL[i]); }
printf("\n");
{
0x68,0x74,0x74,0x70,0x3a,0x2f,0x2f,0x62,0x69,0x74,
0x2e,0x6c,0x79,0x2f,0x69,0x34,0x4a,0x51,0x66,0x6a
};
for (int i=0; i<20; i++) { printf("%c", URL[i]); }
printf("\n");
318デフォルトの名無しさん
2011/04/26(火) 21:28:41.41 JavaScriptで文字のUTF-32を返す関数。
ブレークスルー求む!
----+----|----+----|----+----|----+----|----+----|----+----|----+----|----+---
function utf32(s){var a=[];encodeURI(s).replace(/[^%]{2}/g,function(e){a.push(
parseInt(e,16))});a.length||(a[0]=s.charCodeAt(0));return[a[0].toString(16),$(
a[1],a[0]),$(a[2],a[1],a[0]&31),$(a[3],a[2],a[1],a[0])][a.length-1];function $
(z,y,x,w){for(var i=s=0,a=[(w&7)<<2|(x&63)>>4,(x&15)<<4|(y&63)>>2,(y&3)<<6|(z&
63)];i<a.length;i++)a[i]&&(s=(s<<8)+a[i]);return s.toString(16);}}
ブレークスルー求む!
----+----|----+----|----+----|----+----|----+----|----+----|----+----|----+---
function utf32(s){var a=[];encodeURI(s).replace(/[^%]{2}/g,function(e){a.push(
parseInt(e,16))});a.length||(a[0]=s.charCodeAt(0));return[a[0].toString(16),$(
a[1],a[0]),$(a[2],a[1],a[0]&31),$(a[3],a[2],a[1],a[0])][a.length-1];function $
(z,y,x,w){for(var i=s=0,a=[(w&7)<<2|(x&63)>>4,(x&15)<<4|(y&63)>>2,(y&3)<<6|(z&
63)];i<a.length;i++)a[i]&&(s=(s<<8)+a[i]);return s.toString(16);}}
319uy ◆hi.ht/Isu2
2011/06/29(水) 07:16:55.66 def repl s
(s=~/\(.*?(\(.*)\)/?s.sub($1,(repl $1).to_s):s).scan(/\((.*?)\s(.*)\)/).flatten.pop.split.map(&:to_f).inject *(eval"[$1=~/[a-z]/,:#{$1}].compact")
end
repl"(print (+ 8 9))"
puts
p repl"(* 8 9 5 5 5 5)"
repl"(p (* 59 5 (* 4 (/ 10 6))))"
ほらしねよ ゴミカス共
(s=~/\(.*?(\(.*)\)/?s.sub($1,(repl $1).to_s):s).scan(/\((.*?)\s(.*)\)/).flatten.pop.split.map(&:to_f).inject *(eval"[$1=~/[a-z]/,:#{$1}].compact")
end
repl"(print (+ 8 9))"
puts
p repl"(* 8 9 5 5 5 5)"
repl"(p (* 59 5 (* 4 (/ 10 6))))"
ほらしねよ ゴミカス共
320デフォルトの名無しさん
2011/06/29(水) 09:13:10.87 >>319
ゴミみてーなロジックだな
ゴミみてーなロジックだな
321天使 ◆uL5esZLBSE
2011/07/05(火) 03:47:05.86 これ ; デリミタっていうんだけどさ、よく打ち忘れるよね
Rubyだとつけなくてよくなるんだけど
ゴミって意味わかってんのかなこいつら
Rubyだとつけなくてよくなるんだけど
ゴミって意味わかってんのかなこいつら
322大天使 ◆uL5esZLBSE
2011/07/05(火) 10:41:03.84 よめもしないくせに
323デフォルトの名無しさん
2011/07/05(火) 11:31:38.69 ゴミを産む機械さんちーっす
324デフォルトの名無しさん
2011/07/09(土) 09:09:51.53325デフォルトの名無しさん
2011/07/09(土) 09:26:51.23 > warnings which real programmers ignore
わはは
わはは
326大天使 ◆uL5esZLBSE
2011/07/10(日) 01:57:25.78 >>323
どうみてもお前そのものじゃん 今日はどんなゴミグラミングをやってきたんだ?
せっかくこんなスレにいるんだから何か晒せよ 勿論 自分で書いたものをな 俺は晒した
俺にレスしたんだから次はテメーの番だ ↓ 3日以内に晒さなかったらテメーは逃げたってことで
どうみてもお前そのものじゃん 今日はどんなゴミグラミングをやってきたんだ?
せっかくこんなスレにいるんだから何か晒せよ 勿論 自分で書いたものをな 俺は晒した
俺にレスしたんだから次はテメーの番だ ↓ 3日以内に晒さなかったらテメーは逃げたってことで
327デフォルトの名無しさん
2011/07/19(火) 04:38:20.42 今保守してる8085のコードにいろいろあった。
R4SIFT: RLC
RLC
RLC
RLC
RET
MSBとLSBのニブルをひっくり返すのに多用されてた。
R4SIFT: RLC
RLC
RLC
RLC
RET
MSBとLSBのニブルをひっくり返すのに多用されてた。
328デフォルトの名無しさん
2011/07/19(火) 20:53:34.63 ニブル反転だけで5行とか何なの?
329デフォルトの名無しさん
2011/07/19(火) 21:34:06.72 アセンブラで7行はきついな。
COMを表示可能キャラクタだけで書き下してた人がいたし、そっちのほうがよくね?
COMを表示可能キャラクタだけで書き下してた人がいたし、そっちのほうがよくね?
330デフォルトの名無しさん
2011/07/20(水) 03:53:34.74 >>328 swap とかはこの石には無いよ。
331デフォルトの名無しさん
2011/07/27(水) 16:43:48.50 >>329
16進ダンプで7行ってのはどうかなw
16進ダンプで7行ってのはどうかなw
332デフォルトの名無しさん
2011/09/21(水) 19:08:06.58 7行プログラミングとかアスペの象徴だな
333デフォルトの名無しさん
2011/09/21(水) 21:34:28.71 >>332
いや連中にゃ無理だよ
いや連中にゃ無理だよ
334デフォルトの名無しさん
2011/09/23(金) 15:33:03.64 7行におさまってればいい、他人が読めなくてもいい、動けば良い
この条件は、アスペプログラマが得意とする条件と一致する
普通に、他人にもわかりやすいように書けって方が難儀するだろうね
マニュアル書いたり
この条件は、アスペプログラマが得意とする条件と一致する
普通に、他人にもわかりやすいように書けって方が難儀するだろうね
マニュアル書いたり
335デフォルトの名無しさん
2011/09/23(金) 15:47:19.77 遊びを遊びとして認識できない人のほうが・・・
336デフォルトの名無しさん
2011/09/23(金) 17:27:42.21337デフォルトの名無しさん
2011/09/23(金) 19:51:46.04 >>334
そうやってステレオタイプにしかものを見られないのはコミュ障の証拠。
そうやってステレオタイプにしかものを見られないのはコミュ障の証拠。
2011/11/28(月) 07:05:33.73
mes"に"
mes"ち"
mes"ゃ"
mes"ん"
mes"ね"
mes"る"
mes"^ω^"
mes"ち"
mes"ゃ"
mes"ん"
mes"ね"
mes"る"
mes"^ω^"
339デフォルトの名無しさん
2011/11/28(月) 09:16:11.65 7行でテトリス作れますか?
340デフォルトの名無しさん
2011/11/28(月) 10:07:25.86341デフォルトの名無しさん
2011/11/30(水) 17:42:19.35 7行の「ぷよぷよ」もあるよ。ググれば、すぐに見つかる。
2011/11/30(水) 19:04:58.23
>>338
wwww
wwww
343デフォルトの名無しさん
2012/01/10(火) 15:37:41.26 >>324
これすごいな
これすごいな
344デフォルトの名無しさん
2012/01/11(水) 10:44:10.81345デフォルトの名無しさん
2012/01/17(火) 17:57:44.43 Visual C++ 2010 Express で動作確認済
powl()を自作
long double Pow(long double x,long double y){if(x<0&&y-(int)y!=0)return 0;
long double n,m,p,z,l,i,j,c,a;int b,t,f=1;y<0?y=-y,f=0:0;a=x,b=(int)y;i=n=p=1;
for(;i++<=b;)f?n*=a:b?n/=a:0;if(x<0||y-(int)y==0)return n;c=n;for(t=0;t++<20;)
{a=10,b=t;i=0,n=1;for(;i++<b;)n*=a;a=x,b=(int)(y*n)%10;i=0,n=1;for(;i++<b;)n*=
a;z=n;for(j=0;j++<t;){for(l=0;l++<40;){for(i=n=1;i++<40;)n=((1/m*z)/n+n)/2.0;
for(i=m=1;i++<40;)m=(n/m+m)/2.0;p=(m/p+p)/2.0;}z=p;}f?c*=z:c/=z;}return c;}
powl()を自作
long double Pow(long double x,long double y){if(x<0&&y-(int)y!=0)return 0;
long double n,m,p,z,l,i,j,c,a;int b,t,f=1;y<0?y=-y,f=0:0;a=x,b=(int)y;i=n=p=1;
for(;i++<=b;)f?n*=a:b?n/=a:0;if(x<0||y-(int)y==0)return n;c=n;for(t=0;t++<20;)
{a=10,b=t;i=0,n=1;for(;i++<b;)n*=a;a=x,b=(int)(y*n)%10;i=0,n=1;for(;i++<b;)n*=
a;z=n;for(j=0;j++<t;){for(l=0;l++<40;){for(i=n=1;i++<40;)n=((1/m*z)/n+n)/2.0;
for(i=m=1;i++<40;)m=(n/m+m)/2.0;p=(m/p+p)/2.0;}z=p;}f?c*=z:c/=z;}return c;}
346uy
2012/01/19(木) 16:20:48.08 お前たちはただ短くすればいいとか思っててアルゴリズム的な美しさが無いよね
小さなコードで物凄く多くのことが出来るようなのをかかないとじゃね?
お前たちは使ってる言語も・・・アレだし・・・
>>319
これはヤバイ
再帰も使ってるし1行だし
小さなコードで物凄く多くのことが出来るようなのをかかないとじゃね?
お前たちは使ってる言語も・・・アレだし・・・
>>319
これはヤバイ
再帰も使ってるし1行だし
347デフォルトの名無しさん
2012/01/19(木) 16:47:00.77 流石uyさん・・・格が違ったでござる^^;;;
348uy
2012/01/19(木) 18:35:34.73349デフォルトの名無しさん
2012/01/20(金) 09:53:44.17 名前欄にuyとあるのは荒らしなので今後はNGネームに指定した。
350デフォルトの名無しさん
2012/01/20(金) 13:54:37.77351デフォルトの名無しさん
2012/02/09(木) 22:31:50.56 000001 IDENTIFICATION DIVISION.
000002 PROGRAM-ID. SEVENPRO.
000003 DATA DIVISION.
000004 WORKING-STORAGE SECTION.
000005 01 HELLO PIC X(12) VALUE "HELLO WORLD!".
000006 PROCEDURE DIVISION.
000007 STOP RUN.
000008*どうしろってんだよ
000002 PROGRAM-ID. SEVENPRO.
000003 DATA DIVISION.
000004 WORKING-STORAGE SECTION.
000005 01 HELLO PIC X(12) VALUE "HELLO WORLD!".
000006 PROCEDURE DIVISION.
000007 STOP RUN.
000008*どうしろってんだよ
352デフォルトの名無しさん
2012/02/09(木) 22:43:06.95 わざわざ変数宣言しなくてもいいのにww
353デフォルトの名無しさん
2012/02/09(木) 23:07:17.74 そりゃだって普通に書いたらDISPLAYで終わっちまうじゃないすか
354デフォルトの名無しさん
2012/02/20(月) 22:30:06.51 転
ttps://gist.github.com/1672254
Binary Tetris - 140byt.es
A simplified variant of the classic tetris game done in less that 140 bytes of JavaScript.
Source
function(a,b,c,d,e){return d+=c,
e=a|b<<d,d<0|a&b<<d&&(a=e=
parseInt((a|b<<c).toString(d=32)
.replace(/v/,""),d),b=new Date%2?1:3),
[a,b,d,e]}
ttps://gist.github.com/1672254
Binary Tetris - 140byt.es
A simplified variant of the classic tetris game done in less that 140 bytes of JavaScript.
Source
function(a,b,c,d,e){return d+=c,
e=a|b<<d,d<0|a&b<<d&&(a=e=
parseInt((a|b<<c).toString(d=32)
.replace(/v/,""),d),b=new Date%2?1:3),
[a,b,d,e]}
355デフォルトの名無しさん
2012/03/07(水) 19:38:43.63 NES GameGeineコード<=>アドレス?比較:値 変換。とりあえず8行
#!/usr/bin/perl -p
$G=APZLGITYEOXUKSVN;$H='[0-9A-F]';if(/^[$G]{8}/){for(split(//,$G)){$G{$_}=$i++}
for(split(//)){push(@_,$G{$_})}$_=sprintf("%04X?%02X-%02X\n",($_[3]&7)<<12|($_[
4]&8)<<8|($_[5]&7)<<8|($_[1]&8)<<4|($_[2]&7)<<4|$_[3]&8|$_[4]&7|0x8000,($_[6]&8
)<<4|($_[7]&7)<<4|$_[5]&8|$_[6]&7,($_[0]&8)<<4|($_[1]&7)<<4|$_[0]&7|$_[7]&8)}
elsif(/^($H{4})[?:]($H{2})-($H{2})/i){for(split(//,$G)){push(@G,$_)}($a,$k,$v)=
(hex($1),hex($2),hex($3));@_=($v&7|($v>>4)&8,($v>>4)&7|($a>>4)&8,($a>>4)&7|8,(
$a>>12)|$a&8,$a&7|($a>>8)&8,($a>>8)&7|$k&8,$k&7|($k>>4)&8,($k>>4)&7|$v&8);
$_='';for$a(@_){$_.=$G[$a]};$_.=$/}else{$_=''}
#!/usr/bin/perl -p
$G=APZLGITYEOXUKSVN;$H='[0-9A-F]';if(/^[$G]{8}/){for(split(//,$G)){$G{$_}=$i++}
for(split(//)){push(@_,$G{$_})}$_=sprintf("%04X?%02X-%02X\n",($_[3]&7)<<12|($_[
4]&8)<<8|($_[5]&7)<<8|($_[1]&8)<<4|($_[2]&7)<<4|$_[3]&8|$_[4]&7|0x8000,($_[6]&8
)<<4|($_[7]&7)<<4|$_[5]&8|$_[6]&7,($_[0]&8)<<4|($_[1]&7)<<4|$_[0]&7|$_[7]&8)}
elsif(/^($H{4})[?:]($H{2})-($H{2})/i){for(split(//,$G)){push(@G,$_)}($a,$k,$v)=
(hex($1),hex($2),hex($3));@_=($v&7|($v>>4)&8,($v>>4)&7|($a>>4)&8,($a>>4)&7|8,(
$a>>12)|$a&8,$a&7|($a>>8)&8,($a>>8)&7|$k&8,$k&7|($k>>4)&8,($k>>4)&7|$v&8);
$_='';for$a(@_){$_.=$G[$a]};$_.=$/}else{$_=''}
356デフォルトの名無しさん
2012/03/07(水) 21:04:09.61 >>355
入出力サンプルもPerl4も無いので動作未確認。Perl5 で -wc は通る。
#!/usr/bin/perl -n
@H=APZLGITYEOXUKSVN=~/./g;$"='';$H='[0-9A-F]{2}';if(/^[@H]{8}/){@G{@H}=(0..16);
push(@_,@G{/./g});printf("%04X?%02X-%02X\n",($_[3]&7)<<12|($_[4]&8)<<8|($_[5]&7
)<<8|($_[1]&8)<<4|($_[2]&7)<<4|$_[3]&8|$_[4]&7|32768,($_[6]&8)<<4|($_[7]&7)<<4|
$_[5]&8|$_[6]&7,($_[0]&8)<<4|($_[1]&7)<<4|$_[0]&7|$_[7]&8)}elsif(/^($H$H)[?:]($
H)-($H)/i){push(@G,@H);$a=hex($1);$k=hex($2);$v=hex($3);print@G[$v&7|($v>>4)&8,
($v>>4)&7|($a>>4)&8,($a>>4)&7|8,($a>>12)|$a&8,$a&7|($a>>8)&8,($a>>8)&7|$k&8,$k&
7|($k>>4)&8,($k>>4)&7|$v&8],$/}
入出力サンプルもPerl4も無いので動作未確認。Perl5 で -wc は通る。
#!/usr/bin/perl -n
@H=APZLGITYEOXUKSVN=~/./g;$"='';$H='[0-9A-F]{2}';if(/^[@H]{8}/){@G{@H}=(0..16);
push(@_,@G{/./g});printf("%04X?%02X-%02X\n",($_[3]&7)<<12|($_[4]&8)<<8|($_[5]&7
)<<8|($_[1]&8)<<4|($_[2]&7)<<4|$_[3]&8|$_[4]&7|32768,($_[6]&8)<<4|($_[7]&7)<<4|
$_[5]&8|$_[6]&7,($_[0]&8)<<4|($_[1]&7)<<4|$_[0]&7|$_[7]&8)}elsif(/^($H$H)[?:]($
H)-($H)/i){push(@G,@H);$a=hex($1);$k=hex($2);$v=hex($3);print@G[$v&7|($v>>4)&8,
($v>>4)&7|($a>>4)&8,($a>>4)&7|8,($a>>12)|$a&8,$a&7|($a>>8)&8,($a>>8)&7|$k&8,$k&
7|($k>>4)&8,($k>>4)&7|$v&8],$/}
357デフォルトの名無しさん
2012/03/07(水) 22:13:28.95 そのコードとやらはどんなフォーマット?
358デフォルトの名無しさん
2012/03/08(木) 08:51:40.40 JavaScript版は次のページ:
ttp://homepage2.nifty.com/fcpar/rocky/fccode.html
gameurawaza板の過去datに載ってた変換例には間違っているのもあって、
それで少しハマッタ。
ttp://homepage2.nifty.com/fcpar/rocky/fccode.html
gameurawaza板の過去datに載ってた変換例には間違っているのもあって、
それで少しハマッタ。
359デフォルトの名無しさん
2012/03/08(木) 09:22:05.74 perl4対応: /〜/ の間に改行があるとparse errorになる。@_ に値が含まれている。
fccode.html の結果と比較して、Geanyコード生成の4文字目が違って来ていたので対応。
もちろん perl5 (5.10.1)でも動作確認した。
#!/usr/bin/perl -n
@H=APZLGITYEOXUKSVN=~/./g;$H='[0-9A-F]{2}';if(/^[@H]{8}/){@G{@H}=(0..16);@_=@G{
/./g};printf("%04X?%02X-%02X\n",($_[3]&7)<<12|($_[4]&8)<<8|($_[5]&7)<<8|($_[1]&
8)<<4|($_[2]&7)<<4|$_[3]&8|$_[4]&7|32768,($_[6]&8)<<4|($_[7]&7)<<4|$_[5]&8|$_[6
]&7,($_[0]&8)<<4|($_[1]&7)<<4|$_[0]&7|$_[7]&8)}elsif(/^($H$H)[?:]($H)-($H)/){$a
=hex($1);$k=hex($2);$v=hex($3);print@H[$v&7|($v>>4)&8,($v>>4)&7|($a>>4)&8,($a>>
4)&7|8,($a>>12)&7|$a&8,$a&7|($a>>8)&8,($a>>8)&7|$k&8,$k&7|($k>>4)&8,($k>>4)&7|
$v&8],$/}
fccode.html の結果と比較して、Geanyコード生成の4文字目が違って来ていたので対応。
もちろん perl5 (5.10.1)でも動作確認した。
#!/usr/bin/perl -n
@H=APZLGITYEOXUKSVN=~/./g;$H='[0-9A-F]{2}';if(/^[@H]{8}/){@G{@H}=(0..16);@_=@G{
/./g};printf("%04X?%02X-%02X\n",($_[3]&7)<<12|($_[4]&8)<<8|($_[5]&7)<<8|($_[1]&
8)<<4|($_[2]&7)<<4|$_[3]&8|$_[4]&7|32768,($_[6]&8)<<4|($_[7]&7)<<4|$_[5]&8|$_[6
]&7,($_[0]&8)<<4|($_[1]&7)<<4|$_[0]&7|$_[7]&8)}elsif(/^($H$H)[?:]($H)-($H)/){$a
=hex($1);$k=hex($2);$v=hex($3);print@H[$v&7|($v>>4)&8,($v>>4)&7|($a>>4)&8,($a>>
4)&7|8,($a>>12)&7|$a&8,$a&7|($a>>8)&8,($a>>8)&7|$k&8,$k&7|($k>>4)&8,($k>>4)&7|
$v&8],$/}
360デフォルトの名無しさん
2012/03/28(水) 11:12:27.38 FONTX2形式と .hex の変換。
.hex や .bit は http://openlab.ring.gr.jp/efont/ のビットマップフォントのソースで使われる形式
----------^ fntx2hex.pl ( date:112-03-28 time:11:09 ) ------< cut here
#!/usr/bin/perl
die" file?"if$#ARGV<0;$_=shift;open(_)||die"open? $_";binmode _;read(_,$_,6);$m
=FONTX2;die"$m?"if!/^$m$/;read(_,$_,11);($n,$w,$h,$t)=unpack(A8C3,$_);$b=$h*($w
+7>>3);$p=$w<9?C:n;sub G{for$e($_[0]..$_[1]){read(_,$_,$b);next if/^\0+$/;$_=
unpack('H*',$_);y/a-f/A-F/;printf"%04X:$_\t# ".pack($p,$e).$/,$e}}print"$w $h
";if($t){read(_,$_,1);for(1..ord){read(_,$_,4);($s,$e)=unpack('v2',$_);push(@S,
$s);$E{$s}=$e}for$s(@S){&G($s,$E{$s})}}else{&G(0,255)}close _
----------$ fntx2hex.pl ( lines:7 ) ------------------------< cut here
----------^ hex2fntx.pl ( date:112-03-28 time:11:10 ) ------< cut here
#!/usr/bin/perl
$_=<>;/^(\d+)\s+(\d+)/;$s=pack(C3,$1,$h=$2,$t=$1>8);$H='[0-9A-F]';while(<>){
$G{hex($1)}=pack('H*',$2)if/^($H{4}):($H+)/}print FONTX2.pack(A8,$ARGV[0]).$s;
if($t){sub V{$_.=pack(v,@_)}for$s(@_=sort(keys(%G))){next if++$p==$s;&V($p-1)if
$p>1;&V($p=$s)}&V($p);print pack(C,length>>2).$_;for(@_){print$G{$_}}}else{for(
0..255){print$G{$_}||"\0"x$h}}
----------$ hex2fntx.pl ( lines:6 ) ------------------------< cut here
おまけ: hex -> bit
----------^ hex2bit.pl ( date:112-03-28 time:11:14 ) -------< cut here
#!/usr/bin/perl
$_=<>;($pxlsz_x,$pxlsz_y)=/^(\d+)\s+(\d+)/?($1,$2):(16,16);
while(<>){next if!s/:([0-9A-F]+)//;print"$`<<$'";$G=pack('H*',$1);
$width=$pxlsz_x; $line_bytes=($width+7)>>3;
for($y=0,$p=0;$y<$pxlsz_y;++$y){
$_=unpack('B*',substr($G,$p,$line_bytes));$p+=$line_bytes;
tr/01/.@/;print substr($_,0,$width).$/}
print$/}
----------$ hex2bit.pl ( lines:8 ) -------------------------< cut here
.hex や .bit は http://openlab.ring.gr.jp/efont/ のビットマップフォントのソースで使われる形式
----------^ fntx2hex.pl ( date:112-03-28 time:11:09 ) ------< cut here
#!/usr/bin/perl
die" file?"if$#ARGV<0;$_=shift;open(_)||die"open? $_";binmode _;read(_,$_,6);$m
=FONTX2;die"$m?"if!/^$m$/;read(_,$_,11);($n,$w,$h,$t)=unpack(A8C3,$_);$b=$h*($w
+7>>3);$p=$w<9?C:n;sub G{for$e($_[0]..$_[1]){read(_,$_,$b);next if/^\0+$/;$_=
unpack('H*',$_);y/a-f/A-F/;printf"%04X:$_\t# ".pack($p,$e).$/,$e}}print"$w $h
";if($t){read(_,$_,1);for(1..ord){read(_,$_,4);($s,$e)=unpack('v2',$_);push(@S,
$s);$E{$s}=$e}for$s(@S){&G($s,$E{$s})}}else{&G(0,255)}close _
----------$ fntx2hex.pl ( lines:7 ) ------------------------< cut here
----------^ hex2fntx.pl ( date:112-03-28 time:11:10 ) ------< cut here
#!/usr/bin/perl
$_=<>;/^(\d+)\s+(\d+)/;$s=pack(C3,$1,$h=$2,$t=$1>8);$H='[0-9A-F]';while(<>){
$G{hex($1)}=pack('H*',$2)if/^($H{4}):($H+)/}print FONTX2.pack(A8,$ARGV[0]).$s;
if($t){sub V{$_.=pack(v,@_)}for$s(@_=sort(keys(%G))){next if++$p==$s;&V($p-1)if
$p>1;&V($p=$s)}&V($p);print pack(C,length>>2).$_;for(@_){print$G{$_}}}else{for(
0..255){print$G{$_}||"\0"x$h}}
----------$ hex2fntx.pl ( lines:6 ) ------------------------< cut here
おまけ: hex -> bit
----------^ hex2bit.pl ( date:112-03-28 time:11:14 ) -------< cut here
#!/usr/bin/perl
$_=<>;($pxlsz_x,$pxlsz_y)=/^(\d+)\s+(\d+)/?($1,$2):(16,16);
while(<>){next if!s/:([0-9A-F]+)//;print"$`<<$'";$G=pack('H*',$1);
$width=$pxlsz_x; $line_bytes=($width+7)>>3;
for($y=0,$p=0;$y<$pxlsz_y;++$y){
$_=unpack('B*',substr($G,$p,$line_bytes));$p+=$line_bytes;
tr/01/.@/;print substr($_,0,$width).$/}
print$/}
----------$ hex2bit.pl ( lines:8 ) -------------------------< cut here
361デフォルトの名無しさん
2012/04/26(木) 08:17:39.23 七行的にperlコードを詰め込むスクリプト。DOS perl4 対応。
#!/usr/bin/perl
$N=80;sub E{s/^((\\$s|[^$s])*$s){$e}[c-x]*//;$T.=$&}sub O{if($c+($l=length$T)>=
$N){print$/;$c=0}elsif($S){print" ";++$l}print$T;$c+=$l;$W=$T=~/\w$/?1:0}while(
<>){last if/^__END__/;if(/^#!/){print;next}s/\s*$//;while(length){last if/^#/;
next if s/^\s+//;$S=0;&O if';'eq$T&&!/^}/;if(s/^;//){$T=$&;next}if(s|^[/"']||){
$T=$s=$&;$e=1;&E}elsif(s@^\$([\d\W/]|\w+|#\w+)@@||s/^[!=]~//||s/^(\W)\1?=?//){
$T=$&}elsif('$'ne$T&&s/^([sym]|tr)([^=}\w\s])//){$e='m'eq$1?1:2;$T=$1.($s=$+);
$T=~s/^tr$/y/;$s=~s/|/\\$&/;&E;$S=$W}else{s/^\w+:?//;$T=$&;$S=$W}&O}}print$/
#!/usr/bin/perl
$N=80;sub E{s/^((\\$s|[^$s])*$s){$e}[c-x]*//;$T.=$&}sub O{if($c+($l=length$T)>=
$N){print$/;$c=0}elsif($S){print" ";++$l}print$T;$c+=$l;$W=$T=~/\w$/?1:0}while(
<>){last if/^__END__/;if(/^#!/){print;next}s/\s*$//;while(length){last if/^#/;
next if s/^\s+//;$S=0;&O if';'eq$T&&!/^}/;if(s/^;//){$T=$&;next}if(s|^[/"']||){
$T=$s=$&;$e=1;&E}elsif(s@^\$([\d\W/]|\w+|#\w+)@@||s/^[!=]~//||s/^(\W)\1?=?//){
$T=$&}elsif('$'ne$T&&s/^([sym]|tr)([^=}\w\s])//){$e='m'eq$1?1:2;$T=$1.($s=$+);
$T=~s/^tr$/y/;$s=~s/|/\\$&/;&E;$S=$W}else{s/^\w+:?//;$T=$&;$S=$W}&O}}print$/
362デフォルトの名無しさん
2012/04/29(日) 17:17:31.99 詰め込みスクリプト修正
/ が // になってしまったり、正規表現かの判定を修正
ファイルテスト演算子 -X の途中で改行しないようにした
#!/usr/bin/perl
$N=80;sub E{s/^((\\$s|[^$s])*$s){$e}[c-x]*//;$T.=$&}sub R{$T&&$T!~/^[\$\d]/}sub
O{if($c+$S+($l=length$T)>=$N){print$/;$c=0}elsif($S){print" ";++$l}print$T;$c+=
$l;$W=$T=~/\w$/}while(<>){last if/^__END__/;if(/^#!/){print;next}s/\s*$//;while
(length){last if/^#/;next if s/^\s+//;$e=1;$S=0;&O if';'eq$T&&!/^}/;if(s/^;//){
$T=$&;next}if(&R&&s!^/!!||s/^["']//){$T=$s=$&;&E}elsif(s@^\$([\d\W/]|#?\w+)@@||
s/^([!=]~|-\w|(\W)\+?=?)//){$T=$&}elsif(&R&&s/^([sym]|tr)(\W)//){$e+='m'ne$1;$T
=$1.($s=$+);$s=~s/|/\\$&/;&E;$S=$W}else{s/^\w+:?//;$T=$&;$S=$W}&O}}print$/
/ が // になってしまったり、正規表現かの判定を修正
ファイルテスト演算子 -X の途中で改行しないようにした
#!/usr/bin/perl
$N=80;sub E{s/^((\\$s|[^$s])*$s){$e}[c-x]*//;$T.=$&}sub R{$T&&$T!~/^[\$\d]/}sub
O{if($c+$S+($l=length$T)>=$N){print$/;$c=0}elsif($S){print" ";++$l}print$T;$c+=
$l;$W=$T=~/\w$/}while(<>){last if/^__END__/;if(/^#!/){print;next}s/\s*$//;while
(length){last if/^#/;next if s/^\s+//;$e=1;$S=0;&O if';'eq$T&&!/^}/;if(s/^;//){
$T=$&;next}if(&R&&s!^/!!||s/^["']//){$T=$s=$&;&E}elsif(s@^\$([\d\W/]|#?\w+)@@||
s/^([!=]~|-\w|(\W)\+?=?)//){$T=$&}elsif(&R&&s/^([sym]|tr)(\W)//){$e+='m'ne$1;$T
=$1.($s=$+);$s=~s/|/\\$&/;&E;$S=$W}else{s/^\w+:?//;$T=$&;$S=$W}&O}}print$/
363デフォルトの名無しさん
2012/05/04(金) 02:57:31.66 #include<stdio.h> /* 七行正規表現マッチャ ".*^$"のみ対応. */
#define R return /* 再帰降下アルゴリズム自体はカーニハンとパイクのもの */
typedef char*x;typedef int n;char z=0;n m(x r,x t){if(*r==94)R h(r+1,t);do{if(h
(r,t))R 1;}while(*t++-z);R 0;}n h(x r,x t){if(*r==z)R 1;if(r[1]==42)R s(*r,r+2,
t);if(*r==36&&r[1]==z)R*t==z;R*t-z&&(*r==46||*r==*t)?h(r+1,t+1):0;}n s(n c,x r,
x t){do{if(h(r,t))R 1;}while(*t-z&&(*t++==c||c==46));R 0;}n main(n c,x*v){puts(
c-3?"Usage: ./7regex pattern string":(c=m(v[1],v[2]))?"Match":"No match");R!c;}
#define R return /* 再帰降下アルゴリズム自体はカーニハンとパイクのもの */
typedef char*x;typedef int n;char z=0;n m(x r,x t){if(*r==94)R h(r+1,t);do{if(h
(r,t))R 1;}while(*t++-z);R 0;}n h(x r,x t){if(*r==z)R 1;if(r[1]==42)R s(*r,r+2,
t);if(*r==36&&r[1]==z)R*t==z;R*t-z&&(*r==46||*r==*t)?h(r+1,t+1):0;}n s(n c,x r,
x t){do{if(h(r,t))R 1;}while(*t-z&&(*t++==c||c==46));R 0;}n main(n c,x*v){puts(
c-3?"Usage: ./7regex pattern string":(c=m(v[1],v[2]))?"Match":"No match");R!c;}
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「中国人の訪日熱は冷めた」 人気旅行先から日本外れる 14日で自粛呼びかけ1カ月 [蚤の市★]
- 地震 [Hitzeschleier★]
- 【STARTO ENTERTAINMENT】SUPER EIGHTの横山裕、フジ『ドッキリGP』ロケで全治2ヶ月の重傷 [Ailuropoda melanoleuca★]
- 【話題】好きな鍋は?! 「寄せ鍋」「キムチ鍋」「水炊き」「もつ鍋」「豆乳鍋」「ちゃんこ鍋」「ごま坦々鍋」「トマト鍋」 [ひぃぃ★]
- 【地震】 茨城 栃木 埼玉 千葉 震度4 [KingFisherは魚じゃないよ★]
- 【食】「シャウエッセンは焼くべからず」暗黙のルールを破り売上高過去最高…日本ハム社員たちが「夜味」にかけた情熱 [ぐれ★]
- 自民党、金融所得課税30%で決定か。株を売ったり、配当金が入ると国が30%持って行きます [838847604]
- ムミィ🥺いる❓🏡
- 巨乳にとにかく縁がない
- 新型PSP、ほぼ全てのPS5ソフトをプレイできる?キタ━━━━━━(゚∀゚)━━━━━━!!!!! [303493227]
- 高市さん「おかしいリフレ派の有識者から聞いていた話と全然違う」急速な円安拡大に危機感、利上げや増税容認へ [709039863]
- 兎田ぺこら、とんでもない方法でさくらみこの存在を消してしまう──── [268244553]
