板検索:
プログラミングのお題スレ Part6 (995)
まとめビュー
1
デフォルトの名無しさん[sageteoff]   投稿日:2014/12/11 15:17:14  ID:Ipp+K308.net(2)
プログラミングのお題スレです。

前スレ
プログラミングのお題スレ Part5

【出題と回答例】
1 名前:デフォルトの名無しさん
  お題:お題本文

2 名前:デフォルトの名無しさん
  >1 使用言語
  回答本文

【ソースコードが長くなったら】 (オンラインでコードを実行できる)
http://ideone.com/
http://codepad.org/
http://compileonline.com/
http://rextester.com/runcode
http://runnable.com/
http://code.hackerearth.com/
http://melpon.org/wandbox
https://paiza.io/

宿題は宿題スレがあるのでそちらへ。


2
デフォルトの名無しさん[sage]   投稿日:2014/12/11 15:18:02  ID:Ipp+K308.net(2)

3
デフォルトの名無しさん[sage]   投稿日:2014/12/11 16:09:18  ID:Knr7owVD.net(6)

4
片山博文MZ ◆T6xkBnTXz7B0 []   投稿日:2014/12/11 18:00:40  ID:Knr7owVD.net(6)
お題:日本語でブラウザーの自動操作を行う簡易プログラミング言語を作れ。
その言語では、以下の4つの構文をサポートせよ。
1.ブラウザーでURL「…」を開け。
2.テキスト項目「…」に「…」を入力せよ。
3.ボタン「…」を押せ。
4.ページをファイル「…」として保存せよ。

5
片山博文MZ ◆T6xkBnTXz7B0 [sage]   投稿日:2014/12/11 18:16:25  ID:Knr7owVD.net(6)
上級者向け。インターネットエクスプローラーの有り難みがわかる出題である。

6
デフォルトの名無しさん[sage]   投稿日:2014/12/11 18:40:34  ID:neufFJv8.net
キ印参上!まで読んだ。

7
片山博文MZ ◆T6xkBnTXz7B0 [sage]   投稿日:2014/12/11 18:55:13  ID:Knr7owVD.net(6)
健全でない言葉が含まれているため表示しません 内容を確認する
コメント2件

8
デフォルトの名無しさん[]   投稿日:2014/12/11 19:13:50  ID:zoc9Fj/c.net
お題:ある固定資産の減価償却費を計算して、年度毎の金額をテーブルに格納せよ
コメント1件

9
片山博文MZ ◆T6xkBnTXz7B0 [sage]   投稿日:2014/12/11 19:23:14  ID:Knr7owVD.net(6)
>8 Excel
=DB(取得価額,残存価額,現在の年度-開始年度)

10
デフォルトの名無しさん[sage]   投稿日:2014/12/11 19:24:16  ID:IJmx/E0a.net
お題:言語AのHelloWorldを言語BのHelloWorldに置き換えるプログラムを言語Cで書け。関数、メソッドのみの置き換えでもよい。
例:http://ideone.com/ZAlrKz
(CをCommonLispにCで。関数のみ)
コメント2件

11
デフォルトの名無しさん[sage]   投稿日:2014/12/11 19:27:07  ID:PPtc1ub3.net
マルチリンガル以外お断りという……

12
デフォルトの名無しさん[sage]   投稿日:2014/12/11 20:37:52  ID:2qZGvaHt.net
HQ9+をLuaでBrainCrashにかえる

s = "H"
s = ""
print(s)

13
デフォルトの名無しさん[sage]   投稿日:2014/12/11 20:42:23  ID:aWaBOmKM.net
>10
CでPerlを(Python2/Ruby/PHP)に変換
http://ideone.com/PR3IKT

14
デフォルトの名無しさん[sage]   投稿日:2014/12/11 21:12:10  ID:p+GagzxD.net
健全でない言葉が含まれているため表示しません 内容を確認する

15
デフォルトの名無しさん[sage]   投稿日:2014/12/11 21:27:59  ID:Knr7owVD.net(6)
>7
スクレイピング、スクレイピング、ヤッホーヤッホー♪
(昭和の雰囲気で)

16
デフォルトの名無しさん[]   投稿日:2014/12/12 00:33:12  ID:L50nhIUx.net
音声または楽器音を生成するMATLABのプログラムを作成しなさい

17
デフォルトの名無しさん[sage]   投稿日:2014/12/12 01:40:37  ID:RPnK5rNe.net
>10
shのHelloWorldをEmacs LispのHelloWorldに変換するsedプログラム

% A='echo hello, world!'
% echo $A | sh
hello, world!

% C='s/echo \(.*\)/(progn (princ "\1") (terpri))/'

% B=`echo $A | sed "$C"`
% echo $B
(progn (princ "hello, world!") (terpri))

% emacs -Q --batch --eval="$B"
hello, world!

18
デフォルトの名無しさん[sage]   投稿日:2014/12/12 08:22:02  ID:UtrA0Zej.net
お題:入力された自然数を日本語読みにして出力しなさい


512 ⇒ ごひゃくじゅうに
コメント2件

19
デフォルトの名無しさん[sage]   投稿日:2014/12/12 18:07:02  ID:PAk0/nic.net
>18 Java
http://ideone.com/uRHtEB
とてもとてもひどいソース

20
デフォルトの名無しさん[sage]   投稿日:2014/12/12 18:44:24  ID:hHI9tZtf.net(2)
お題1
麻雀の聴牌の待ちの形を判定するプログラム (ただし手牌は1枚、4枚、7枚、10枚、13枚のいずれかとする)


入力
123m45666p99s111z
出力
3p 6p 両面待ち 123m 45p 666p 99s 111z
6p 9s シャボ待ち 123m 456p 66p 99s 111z

お題2
麻雀の向聴数を計算し、向聴数減少・和了に進む捨て牌候補と対応する受け入れ牌を表示するプログラム
(ただし手牌はツモ等を含めた2枚、5枚、8枚、11枚、14枚のいずれかとする)

入力
123m45666p99s1112z
出力
0向聴(聴牌)
捨て牌候補 2z 受け入れ牌 36p9s

入力
123m45669p99s1112z
出力
1向聴
捨て牌候補 6p 受け入れ牌 789p2z
捨て牌候補 9p 受け入れ牌 345678p2z
捨て牌候補 2z 受け入れ牌 3456789p9s

数牌は、mは満子、pは筒子、sは索子。数字は数牌の数字をそのまま表す
字牌はzで表し1234567はそれぞれ東南西北白發中を表す
たとえば4枚の満子、1m2m3m4mを持っていたら 1234m と表す
コメント1件

21
デフォルトの名無しさん[sage]   投稿日:2014/12/12 18:47:08  ID:hHI9tZtf.net(2)
訂正
お題1
麻雀の聴牌の待ちの形を判定するプログラム (ただし手牌は1枚、4枚、7枚、10枚、13枚のいずれかとする)


入力
123m45666p99s111z
出力
3p 6p 両面待ち 123m 45p 666p 99s 111z
6p 9s シャボ待ち 123m 456p 66p 99s 111z

お題2
麻雀の向聴数を計算し、向聴数減少・和了に進む捨て牌候補と対応する受け入れ牌を表示するプログラム
(ただし手牌はツモ等を含めた2枚、5枚、8枚、11枚、14枚のいずれかとする)

入力
123m45666p99s1112z
出力
0向聴(聴牌)
捨て牌候補 2z 受け入れ牌 36p9s

入力
123m45669p99s1112z
出力
1向聴
捨て牌候補 6p 受け入れ牌 789p9s2z
捨て牌候補 9p 受け入れ牌 345678p9s2z
捨て牌候補 2z 受け入れ牌 3456789p9s

数牌は、mは満子、pは筒子、sは索子。数字は数牌の数字をそのまま表す
字牌はzで表し1234567はそれぞれ東南西北白發中を表す
たとえば4枚の満子、1m2m3m4mを持っていたら 1234m と表す
コメント4件

22
デフォルトの名無しさん[sage]   投稿日:2014/12/12 18:57:11  ID:Lt1ccLbO.net(2)
なんか、最近頭の悪い人が考えそうな題が増えてきたな
それらって
>21全部このひと?

23
デフォルトの名無しさん[sage]   投稿日:2014/12/12 19:04:41  ID:jHo7B2H0.net(2)
ほぼ確実にそうだと思う

24
デフォルトの名無しさん[sage]   投稿日:2014/12/12 19:07:08  ID:jHo7B2H0.net(2)
日付変わってもID固定だといいのにね

25
デフォルトの名無しさん[sage]   投稿日:2014/12/12 19:12:31  ID:oJQhRbPG.net
こーいうの欲しいな→難しいな、どうしよう→あ、お題にしたら誰か作ってくれるんじゃね?俺頭いい!
というのを感じる
コメント6件

26
デフォルトの名無しさん[sage]   投稿日:2014/12/12 19:17:13  ID:6Bn+YJPZ.net
そういう行為する連中は荒らしとして通報できたらいいのに

27
デフォルトの名無しさん[sage]   投稿日:2014/12/12 19:20:22  ID:iYEalHFr.net
もう二度とこのスレに来なくなるように徹底的に叩いて追い出したほうがいいんじゃね

28
デフォルトの名無しさん[sage]   投稿日:2014/12/12 19:29:25  ID:651VE/CG.net
今後は出題時に出題者自身の解答コード(模範コード)を添付するよう義務付ければいい
そうすれば>25のような得を狙った輩なんて現れんだろ
コメント1件

29
デフォルトの名無しさん[sage]   投稿日:2014/12/12 19:35:58  ID:b+XpBRTP.net(3)
ググってピンポイントで答えが出るようなお題は悪問
ググってもピンポイントで答えが出ず自分で思考工夫しないと答えが出ないようなお題は良問
コメント1件

30
デフォルトの名無しさん[sage]   投稿日:2014/12/12 19:36:53  ID:b+XpBRTP.net(3)
すなわち答えが既知の問題はこのスレに投稿してはいけない

31
デフォルトの名無しさん[sage]   投稿日:2014/12/12 19:39:53  ID:b+XpBRTP.net(3)
>21のような麻雀なんて世の中にごまんとアプリが出てんだからググりゃすぐ答えがでる超悪問

32
デフォルトの名無しさん[sage]   投稿日:2014/12/12 19:42:57  ID:w8bD9m+x.net

33
◆QZaw55cn4c [sage]   投稿日:2014/12/12 19:43:03  ID:TCO/XLYY.net
>28
ちょっと前まではそうだったんだけれど‥

34
デフォルトの名無しさん[sage]   投稿日:2014/12/12 19:49:37  ID:AUxPsHKO.net
気に入らなきゃ流せば(無視すれば)いいだけなのにアホか。

言っちゃ悪いけど、お前の掟(笑)をお前が守るのは勝手だが、
それを人に押し付けるなって馬鹿。

最近の若者って押しなべてこういう傾向があるよね。
甘やかされて育ってるから世の中自分を中心に回るべきと本気で思ってる。

2chでブラック企業ガーって吠えてる連中は間違いなくこういうタイプ。
コメント1件

35
デフォルトの名無しさん[sage]   投稿日:2014/12/12 19:54:02  ID:Lt1ccLbO.net(2)
>34
うわぁ
頭悪そう

36
デフォルトの名無しさん[]   投稿日:2014/12/12 19:59:31  ID:7MXQO6uw.net
>21
ググれば君の作りたいアプリの答えがすぐ見つかるよ!やったね!もう2度と来んなカス

37
デフォルトの名無しさん[sage]   投稿日:2014/12/12 20:04:05  ID:wfAPCnd3.net
さあ、さっきからROMってばかりいるそこのキミ!
良問を書きこんでこのスレに活気を取り戻そう!

38
デフォルトの名無しさん[sage]   投稿日:2014/12/13 00:16:10  ID:DBa1UdFN.net(4)
>25のパターンだと言語指定してくるのが普通じゃないの
コメント1件

39
デフォルトの名無しさん[sage]   投稿日:2014/12/13 01:49:39  ID:oJg8v8de.net
>38
結果が欲しいだけなんだから過程はどうでもいいだろ

40
デフォルトの名無しさん[sage]   投稿日:2014/12/13 03:37:59  ID:DBa1UdFN.net(4)
言語指定しなかったばかりにどマイナー言語の回答しか集まらなかったらどうすんのさ

41
デフォルトの名無しさん[sage]   投稿日:2014/12/13 03:56:16  ID:xVemfz4a.net
その言語を勉強して解読するのかな

42
デフォルトの名無しさん[sage]   投稿日:2014/12/13 08:23:02  ID:3ehKG0WS.net(2)
前スレの819
1個または連続した2個の石を取ることを、1手とする
最後に石を取った方が勝ち
つまり、最後の1手を指した方が勝ち

まず石の配置を正規化した、パターンを作る
連続する'_'を一つにまとめてから、両端の'_'を削除する
('o'は石あり、'_'は石の無い所)

両端は必ず、'o'となる
__o___oo_ → _o_oo_ → o_oo

パターンの種類は、'o','_'の数で整理する
また順列ではなく、'o'の数が右方向へ単調増加する、組み合わせとする
ooo_oo_o,oo_o_ooo なども、o_oo_ooo として扱う

o_o_oooo,o_oo_ooo はpat[6][2](o=6,_=2)に、リストとして保持する
ただし実際には、負けるパターンだけを持てば十分

パターンは64ビットマップで表す
(最大で'o'は32個、'_'は31個まで)
o_oo_ooo → 10110111
コメント2件

43
42[sage]   投稿日:2014/12/13 08:24:20  ID:3ehKG0WS.net(2)
最初の数字は'o'の数。W=Win,L=Lose
0 _ L
1 o W
2 oo W, o_o L
3 ooo,o_oo,o_o_o W
4 oooo,o_ooo,o_o_oo W, oo_oo,o_o_o_o L
5 ooooo,oo_ooo,o_oo_oo,o_o_o_oo,o_o_o_o_o W, o_oooo,o_o_ooo L
6 oooooo,以下略

今自分の手番で、'o'の数をnとして、
1,2個の石を取った際に、pat[n-1],[n-2]を走査して、
相手を負けパターンに出来れば、自分が勝てる
o_ooo (2個取る)→ o___o → o_o L

一方、次のパターンでは、どのような取り方をしても、
相手を負けパターンに出来ない
oo_oo →(無理) o_o L

このやり方で正しい?

44
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 13:18:09  ID:rnBmLeLt.net
じゃあ次の課題
「平方根関数を使わずに任意の正の整数および0の根を求めるプログラム作を成せよ」
コメント6件

45
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 13:44:27  ID:3mgTh/5d.net
>44
暇つぶしの材料としては否定しないが、なんか学校の課題感ありありだなあw
大昔Pascal(笑)でそんな課題を出されたぞw
コメント1件

46
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 14:32:46  ID:Pw3nm5GK.net(2)
>44
問題ではなく課題でしかないな

なめとんのか
コメント1件

47
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 15:03:49  ID:64FChpjC.net
>45
まあやったことないけどpascalでも余裕でしょうな

>46
気に入らなけりゃスルーしてればいいんだよ
解答例は用意してあるんであしからず
コメント1件

48
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 15:49:59  ID:toJAZvUP.net(3)

49
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 16:48:47  ID:elgmXnKG.net

50
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 16:58:18  ID:toJAZvUP.net(3)

51
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 17:13:51  ID:KY++hnMi.net(2)
>47
馬鹿はきらいなんだ
レスするなクズ

52
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 18:16:22  ID:Zl6nY2in.net(4)
解答が出揃ったようだから添削といくか

最初に断わっておくが、問題文に平方根関数となっているのは
初心者が「pow関数なら使っていいのか」と質問した時それを拒絶するために仕込んでおいたものなのに
>49のような解答が出てしまうとはwwww

せめて指数対数関数を使ってほしかった
コメント1件

53
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 18:17:35  ID:Pw3nm5GK.net(2)
>52
お題スレを授業スレにしようとしている精神病

お前、バカ凄る

54
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 18:27:15  ID:aWFoLZL3.net
山下さんそろそろVIPに帰ってくれませんか?

55
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 18:34:18  ID:Zl6nY2in.net(4)
解答例

#include<iostream>
using namespace std;

int main(){

int a;
double p,q;
cout << "入力した整数の平方根を求めるプログラム\n";
cout << "正の整数を入力してください。\n";
cin >> a;
p = 10; q = 1;

if(a<0) {cout << "正の整数を入力してください\n";}
else if(a == 0){cout << 0;}
else{
while(q > 0.0001){

q = (p*p-a)/(2*p);
p = p - q;
}

cout << "√" << a << " = " << p << "\n";
}
return 0;

}
コメント2件

56
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 18:42:19  ID:Zl6nY2in.net(4)
どうでもいいけど>44はプログラミング初歩において非常に有名な問題で
>55は微分使ったニュートン法による手法な

57
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 18:44:04  ID:KY++hnMi.net(2)
げ!精神病連投中か!!

58
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 19:16:48  ID:toJAZvUP.net(3)
えー、マジニュートン法?
ちょっとがっかり。
ニュートン法なら奥村先生のが好きだな。

>44 Perl
http://ideone.com/cRklMo

59
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 19:21:35  ID:Zl6nY2in.net(4)
ほかには開平法と呼ばれるテクニックもある

筆算でやるならニュートン法より断然容易
しかしプログラミングでとなると初心者ではまず無理だろう

60
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 22:27:28  ID:D/Sa6FVu.net
二分法でも解けるよ。
コメント1件

61
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 23:06:19  ID:K/9GRqnp.net(2)
前スレのゲキモンとかいうアプリの解法を導く奴が一番やりがいあったな

62
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 23:13:15  ID:DBa1UdFN.net(4)
あれが一番>25くさいけどね

63
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 23:23:45  ID:K/9GRqnp.net(2)
あれも質問スレに貼られてたのを転載されたものだったからね
それでも最初からこっちで人に作らせる>20よりまし

64
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/13 23:37:37  ID:DBa1UdFN.net(4)
麻雀なんかそこらにあり溢れてるから今更感だが
ゲキモンのやつは今ブームが来てんなら解法アプリとか売れるし
より>25ぽいけどなあ

65
デフォルトの名無しさん[sage]   投稿日:2014/12/14 00:29:28  ID:6LJEBlWP.net(3)
解答1問につき100円だっけ?

66
デフォルトの名無しさん[sage]   投稿日:2014/12/14 00:32:52  ID:M93peGup.net(2)
仮に>21の奴が>25で無かったとしても
問題を解くのに必要な麻雀の基本ルールも書かず出題するのは不適当だと思う
麻雀知らない奴は問題に挑戦できないわけだし
麻雀は万人が知っているようなゲームじゃない
コメント2件

67
デフォルトの名無しさん[sage]   投稿日:2014/12/14 00:37:01  ID:nynaMPBw.net
>66
なんか絵に描いたような今時の若者(自己中心バカ)の思考で笑えるなw
コメント1件

68
デフォルトの名無しさん[sage]   投稿日:2014/12/14 01:17:59  ID:Hln0TfNs.net
>67
君は頭の悪さが文章に滲み出てるよ
馬鹿にされて頭に来て出てきちゃったの?

69
デフォルトの名無しさん[sage]   投稿日:2014/12/14 01:39:43  ID:Z+1Tn179.net
クリスマスなせいかどの板のどのスレも殺伐としてるな

70
デフォルトの名無しさん[sage]   投稿日:2014/12/14 01:52:20  ID:5xeR6x0m.net
クリスマスが気になるうちは素人

71
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/14 03:46:37  ID:6LJEBlWP.net(3)
>66
別にguess系のようにルールを伏せているわけじゃないし
こういうスレなんだから事前に調べるのでもおkでしょ
激問の方が麻雀よりも認知度は低いと思いますが前スレの出題にはルールは書かれていませんでいたよ

72
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/14 03:56:46  ID:quX5gTZ+.net
ルール説明するYouTubuの動画のリンクが貼ってあったじゃん
コメント1件

73
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/14 05:13:58  ID:VLT6hKdw.net
>60
二分法だと
http://ideone.com/U94bCS (>55を拝借)
かな。

74
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/14 05:52:21  ID:6LJEBlWP.net(3)
>72
それをクリックして初めてルールを知ることができるんだろ?
何やら言ってるけど単に自分が楽しめたかどうかだけに見える

75
名無しさん@そうだ選挙に行こう[]   投稿日:2014/12/14 15:39:44  ID:rKAd2b/X.net
激問は良問。
ルールはシンプルで解くのは易しくない。
ルービックキューブ、15パズル、オセロに匹敵。
いままで人類がこのゲームを発見しなかったのが不思議。
速度的に良いのはできてないと思う。
ルールわからなくてできないのはいる?

76
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/14 16:57:11  ID:M93peGup.net(2)
ゲキモンの広告スレかよここ
コメント1件

77
名無しさん@そうだ選挙に行こう[sage]   投稿日:2014/12/14 18:05:06  ID:aXRZQwQ1.net
スライドパズルの変形でありながらルールの性質上実物のコマを使ってやるには不向きだから
思い付いたとしても広まらなかっただけだろというか
電子ゲーム時代になってからは類似のものはよくあって
アクションやRPGのちょっとした謎解きにも出てくるレベル

正解率が表示されるとか魅せ方の部分が大きいとは思うが

78
デフォルトの名無しさん[sage]   投稿日:2014/12/15 04:50:44  ID:UQ+hMbpx.net
  |=番兵|_
 (  ・ω・) < オハヨウナノン
  〇={=}〇
  |::::::::::\
、、、し 、、、(((.@)now、snow、、snow

79
デフォルトの名無しさん[sage]   投稿日:2014/12/15 06:54:35  ID:j2Z0Uluh.net
お題:以下の数式のそれぞれの□に 0 〜 9 のいずれか一つを入れて数式を成立させたい。
ただし、一つの数字を二つ以上の□に入れるということはできないとする。
整数の左端に 0 がある場合はそれを略す。例えば「012」は「12」に等しいとする。
□×□□+□□□=□□□□
数式を成立させるような整数の組の総数を求めよう。
コメント5件

80
デフォルトの名無しさん[sage]   投稿日:2014/12/15 07:33:12  ID:GJ+wxPK4.net

81
デフォルトの名無しさん[sage]   投稿日:2014/12/15 12:55:09  ID:UqthbeWt.net
>79 J
f =: 3 : 0
c =. 0
for_i. (i.!10) do.
a =. i A. '0123456789'
w =. (". 6 7 8 9 { a) = ((". 0 { a) * (". 1 2 { a)) + (". 3 4 5 { a)
c =. c + w
end.
c
)

f ''
350

82
デフォルトの名無しさん[sage]   投稿日:2014/12/15 23:20:55  ID:ZEKSsISJ.net
>76
一方スマホアプリ板の本スレはあまり伸びてないらしいという

83
デフォルトの名無しさん[sage]   投稿日:2014/12/15 23:26:01  ID:EAB093cZ.net(2)
そもそもスマホの主なユーザ層の若い世代は2chをあまり見ないのでは…?

84
デフォルトの名無しさん[sage]   投稿日:2014/12/15 23:29:23  ID:EAB093cZ.net(2)
つか専用スレが立つくらいなら
相応の支持のあるゲームですよねえ

85
デフォルトの名無しさん[sage]   投稿日:2014/12/17 01:56:33  ID:1sjT5Wv/.net
  |=番兵|_
 (  ・ω・) < ステンバーイ
  〇={=}〇
  |::::::::::\
、、、し 、、、(((.@)ce、、ice、snow、、ice

86
42[]   投稿日:2014/12/17 03:14:38  ID:ofMhppYe.net
>42-43
前スレの819の問題で、誰もこのやり方で、
負けパターンのリストを、作らずに解いたの?

誰か、リストを作って解いた人いる?
コメント1件

87
デフォルトの名無しさん[sage]   投稿日:2014/12/17 03:25:41  ID:KcR7p2QV.net
前スレに貼り付けられた回答コードを見てけばいいんじゃないの

88
デフォルトの名無しさん[]   投稿日:2014/12/17 07:41:39  ID:LOGJmD8X.net
>86
グランディ数でググるよろし

89
デフォルトの名無しさん[sage]   投稿日:2014/12/22 11:15:57  ID:9OjxlKCG.net
お題:
15パズルの問題を高速に生成するプログラム。
基本形に到達できる入れ替えに限る。
コメント3件

90
デフォルトの名無しさん[sage]   投稿日:2014/12/22 11:37:52  ID:f62n1e8a.net(2)

91
デフォルトの名無しさん[sage]   投稿日:2014/12/22 12:59:20  ID:xGNlmGhJ.net(2)
>89
http://ideone.com/wfUZtq
C++。基本的に解けない問題は出さないはずだが質の悪い問題は結構出す。はず。
実際解くのはメンドくせーのでほぼデバッグしてません。
コメント1件

92
デフォルトの名無しさん[sage]   投稿日:2014/12/22 16:28:08  ID:qbTGJZGl.net
>90
バレたか。 ネタ元は、
新潮選書 「3」の発想 数学教育に欠けているもの 単行本 – 2009/10/24
芳沢 光雄 (著)

>91
なるほど。
コメント1件

93
デフォルトの名無しさん[sage]   投稿日:2014/12/22 16:30:56  ID:/hhsv/vC.net(2)
>90のフォローがなかったら>25

94
デフォルトの名無しさん[sage]   投稿日:2014/12/22 16:33:21  ID:/hhsv/vC.net(2)
問題生成なんかより解なし解ありの判定のほうがお題として面白かったんじゃなかろうか
コメント1件

95
デフォルトの名無しさん[sage]   投稿日:2014/12/22 16:55:55  ID:f62n1e8a.net(2)

96
デフォルトの名無しさん[sage]   投稿日:2014/12/22 17:05:41  ID:4+fOtis+.net
>29-30の流れを維持しようとしてるのは麻雀くんかな?

97
デフォルトの名無しさん[]   投稿日:2014/12/22 18:56:01  ID:/5mhYHra.net
最短手順が長い問題を生成

98
デフォルトの名無しさん[sage]   投稿日:2014/12/22 21:26:44  ID:xGNlmGhJ.net(2)
>92
ゲーム理論と算数で解けてるから数学なんてかんけーねー。と主張したい俺ダメ人間。
数学怖い。

99
デフォルトの名無しさん[sage]   投稿日:2014/12/23 22:03:59  ID:Lhv9book.net
お題:要素数が3個の整数のリスト同士を位置に関係なく要素を比較したとき
一致するものが2個、一致しないものが1個となるかどうか判定する。

[1,2,3],[5,6,7] -> 偽
[1,1,1],[1,1,2] -> 真
[1,1,2],[2,2,1] -> 真
[9,8,9],[8,6,4] -> 偽
[9,7,2],[2,2,9] -> 真
コメント15件

100
デフォルトの名無しさん[sage]   投稿日:2014/12/23 22:07:46  ID:LdSANHZC.net(2)
[123][123]=?
コメント1件

101
デフォルトの名無しさん[sage]   投稿日:2014/12/23 22:09:02  ID:5g0taQsy.net
>100
偽だろそりゃ

102
デフォルトの名無しさん[sage]   投稿日:2014/12/23 22:09:37  ID:gaFUyFOj.net(2)
>一致するものが2個、一致しないものが1個となるか

[123][123]=偽

103
デフォルトの名無しさん[sage]   投稿日:2014/12/23 22:10:15  ID:w8fvNum1.net
>99
なんか手ごたえなさ過ぎてやる気出ないよそれ...

104
デフォルトの名無しさん[sage]   投稿日:2014/12/23 22:13:42  ID:gaFUyFOj.net(2)
学校の宿題と言われても納得のレベル

105
デフォルトの名無しさん[sage]   投稿日:2014/12/23 22:33:00  ID:egk/n0nz.net
>99
ソートしてから前から走査すればいい
おわり。はい次。

106
デフォルトの名無しさん[sage]   投稿日:2014/12/23 22:45:13  ID:LdSANHZC.net(2)
>99
http://ideone.com/AVMmDx
C++。あってるかな。
暇だったので解いた。あってるかどうかは知らん。
速度重視で。

107
デフォルトの名無しさん[sage]   投稿日:2014/12/24 02:13:19  ID:QdJY5kMF.net
[1,1,1],[1,1,2] -> 真
これは一致している数字は 1 だけなのに何で真なんだ?

[1,1,2],[2,2,1] -> 真
これも分からん。1 も 2 も両側にあるから、一致している数字は 2 個で一致しない数字は 0 個では?
コメント1件

108
デフォルトの名無しさん[sage]   投稿日:2014/12/24 03:33:58  ID:Y7j7WALA.net
>107
要素の並び順を考慮しないだけであって
要素の重複は別途数えるってだけっしょ
考え方としては一致したものをリストから除いていくと考えればいいんじゃね
[1,1,1],[1,1,2] -> 1が一致 [1,1],[1,2] -> 1が一致 [1],[2] -> 残り不一致 -> 一致するものが2個、一致しないものが1個なので真
[1,1,2],[2,2,1] -> 1が一致 [1,2],[2,2] -> 2が一致 [1],[2] -> 残り不一致 -> 一致するものが2個、一致しないものが1個なので真

109
デフォルトの名無しさん[sage]   投稿日:2014/12/24 13:40:47  ID:mx5B7sKs.net
>99
こんな判定が何の役に立つんだ?
コメント1件

110
デフォルトの名無しさん[sage]   投稿日:2014/12/24 13:49:50  ID:n8oxVcuc.net
科学技術計算的に必要なのかねー??自分もさっぱりだ。

111
デフォルトの名無しさん[]   投稿日:2014/12/24 16:37:29  ID:ioNhDOiv.net
縦横8*8 マスのチェス盤の、
左上の角の位置に、ナイトがある

その位置を開始点として、
そこから移動できるすべてのマスへの、最短手を答えよ

ナイトは1手で全方向へ、縦1横2、または縦2横1へ移動する
例えば、(5,5)の位置から、(4,3)(7,6)などに移動できる

仮に開始点を、(0,0)とすると、(1,2)(2,1)は1手で行ける
コメント7件

112
デフォルトの名無しさん[sage]   投稿日:2014/12/24 18:07:52  ID:i81GQnYc.net

113
デフォルトの名無しさん[sage]   投稿日:2014/12/24 19:24:43  ID:Wq6i2xwr.net
お題:
A君とB君は二人三脚で100mの直線コースを走る。
コースの途中には赤と青の旗が10本ずつ置かれており、
それぞれ1番から10番までの番号が書かれている。
ただし、旗の位置や番号の並びはランダムである。
A君は赤の旗を、B君は青の旗をそれぞれ番号順に
すべて取らないとゴールできない。各旗の位置が
与えられたとき、2人は最短で何m走る必要があるか求めよ。

10,20,30,40,50,60,70,80,90,99,
90,80,70,60,50,40,30,20,10,1,
=> 278 (0->90->1->100の順に走る)
コメント3件

114
デフォルトの名無しさん[sage]   投稿日:2014/12/24 21:00:33  ID:0pxVS+GL.net
>99 Io
f := method(a, b,
for(i, 0, 2,
c := 0
for(j, 0, 2, if(a at(j) == b at((i + j) % 3), c = c + 1))
if(c == 2, return(true))
)
false
)

Io> f(list(1,2,3),list(5,6,7))
==> false
Io> f(list(1,1,1),list(1,1,2))
==> true
Io> f(list(1,1,2),list(2,2,1))
==> true
Io> f(list(9,8,9),list(8,6,4))
==> false
Io> f(list(9,7,2),list(2,2,9))
==> true
コメント1件

115
デフォルトの名無しさん[sage]   投稿日:2014/12/25 00:05:23  ID:fNYkbBcD.net
>99 Clojure
結構手応えあった。
http://ideone.com/CYKe3K

116
デフォルトの名無しさん[sage]   投稿日:2014/12/25 00:10:05  ID:WpMZaymj.net(3)
>109
プログラミング初心者に出す課題としてはまぁまぁの問題ではある
実用性うんぬんというなら統計データで特定の条件のデータを抜き出したいという事態に応用が・・・というくらいか?

117
デフォルトの名無しさん[sage]   投稿日:2014/12/25 00:51:04  ID:T4hkRg5o.net(2)
>113 Java
http://ideone.com/lHFW4d
出来たが冗長

118
デフォルトの名無しさん[sage]   投稿日:2014/12/25 01:13:18  ID:g3diUBPe.net
チマチマ比較せずに、順列を入れ替えた6通りの比較を並列にやって、一個でも
ヒットしたらtrueでいいだろ。

119
デフォルトの名無しさん[sage]   投稿日:2014/12/25 01:59:26  ID:T4hkRg5o.net(2)
>113 Java
http://ideone.com/BOdzry
色々気にしない場合

120
デフォルトの名無しさん[sage]   投稿日:2014/12/25 02:11:42  ID:WpMZaymj.net(3)
>113
これ↓のように置いて隣の数値との差を順番に足しこんでいくだけじゃねーの?
0,10,20,30,40,50,60,70,80,90,99,100
0,90,80,70,60,50,40,30,20,10,1,100

121
デフォルトの名無しさん[sage]   投稿日:2014/12/25 02:12:21  ID:WpMZaymj.net(3)
訂正、差じゃなくて、差の絶対値な

122
デフォルトの名無しさん[sage]   投稿日:2014/12/25 02:35:46  ID:ELyjKCjH.net

123
デフォルトの名無しさん[sage]   投稿日:2014/12/25 03:47:37  ID:WP7Aod+K.net(2)
>114
失敗した。間違っているのでこのコードは取り下げます

124
デフォルトの名無しさん[]   投稿日:2014/12/25 05:02:38  ID:172BCr7q.net
激問いまから始めたけど、一手戻す局面を生成するのが面倒だな。
前スレでだれかいってたけど。
やればできる程度だけどミスや速度面で問題でやすそう。
コメント1件

125
デフォルトの名無しさん[sage]   投稿日:2014/12/25 09:56:58  ID:LpH5Vq2m.net
>99 Squeak Smalltalk

| fn |
fn := [:a :b |
 (a inject: b asBag into: [:rest :x |
  rest remove: x ifAbsent: []. rest]
 ) size = 1
].

fn value: #(1 2 3) value: #(5 6 7). "=> false "
fn value: #(1 1 1) value: #(1 1 2). "=> true "
fn value: #(1 1 2) value: #(2 2 1). "=> true "
fn value: #(9 8 9) value: #(8 6 4). "=> false "
fn value: #(9 7 2) value: #(2 2 9). "=> true "

126
デフォルトの名無しさん[sage]   投稿日:2014/12/25 11:23:37  ID:QxQ1oAhK.net(2)
>99 Haskell

import Data.List
f xs ys = if 1==length(foldr delete xs ys)then True else False

f[1,2,3][5,6,7] --false
f[1,1,1][1,1,2] --true
コメント1件

127
デフォルトの名無しさん[sage]   投稿日:2014/12/25 11:34:14  ID:fTgFJeSr.net
>126
if-then いらんやんw

128
デフォルトの名無しさん[sage]   投稿日:2014/12/25 11:34:42  ID:QxQ1oAhK.net(2)
if式要らなかったわ。

129
デフォルトの名無しさん[sage]   投稿日:2014/12/25 14:11:33  ID:VT84cn4h.net
>124
1. 現局面から逆向きに動かせるブロックを列挙(ex. 1/2/3)
2. すべての動かしかたに対して(ex. 1/2/3/12/13/23/123)
-2-1 動かすブロックのみを逆に動かしてみる
-2-2 動かしてみた局面全体を順に動かしてみる
-2-3 順に動かした局面が現局面と同じなら、正しい一手戻り局面として登録

としてるけど、ほかにいい方法あるかな?
コメント1件

130
デフォルトの名無しさん[sage]   投稿日:2014/12/25 19:17:53  ID:Qgm6XcOp.net
激問は禁止でいいんじゃなかろうか
コメント1件

131
デフォルトの名無しさん[sage]   投稿日:2014/12/25 19:55:10  ID:WP7Aod+K.net(2)
>99 Io
f := method(a, b,
b foreach(v,
p := a indexOf(v)
if(p, a removeAt(p))
)
a size == 1
)

132
デフォルトの名無しさん[sage]   投稿日:2014/12/25 21:34:07  ID:FmLhwL13.net
健全でない言葉が含まれているため表示しません 内容を確認する

133
デフォルトの名無しさん[sage]   投稿日:2014/12/25 23:12:44  ID:BwvRq+pS.net
>130
アプリの本スレでもおなじ話題になってるから、
ゲキモン話したい奴らはスマホアプリ板に行けばいいと思う

134
デフォルトの名無しさん[sage]   投稿日:2014/12/26 00:07:24  ID:HP9WNxt/.net
ゲキモンゲットーだぜ

135
デフォルトの名無しさん[]   投稿日:2014/12/26 04:46:12  ID:fnDLLhrS.net(2)
なんでゲキモンダメだよ?
専用スレ・携帯板こそ、プログラムでなく人動でゲームとして遊ぶスレではないのか。

136
デフォルトの名無しさん[sage]   投稿日:2014/12/26 05:51:15  ID:RE4uws7P.net(2)
>111 Io
f := method(i, n,
if(n > 6 or a at(i) < nil, return )
a atPut(i,n)
list(-25, -23, -14, - 10, 10, 14,23, 25) foreach(v, f(i + v, n + 1))
)
a := List clone setSize(144) map(0)
for(i, 26, 110, 12, for(j, 0, 7, a atPut(i+j,9)))
f(26, 0)
for(i, 26, 110, 12, for(j, 0, 7, a at(i + j)print) writeln)
----
03232345
34123434
21432345
32323434
23234345
34343454
43434545
54545456

137
デフォルトの名無しさん[sage]   投稿日:2014/12/26 06:10:30  ID:9Bx+rxwu.net
単一ゲームの解法を探すスレではないだろ

138
デフォルトの名無しさん[sage]   投稿日:2014/12/26 10:29:41  ID:5KqGgVdh.net
>79 R
http://ideone.com/eQumEY

>99 R
http://ideone.com/3BECgn

チェスも二人三脚もさっぱり分からん。
コメント1件

139
デフォルトの名無しさん[]   投稿日:2014/12/26 15:34:07  ID:fnDLLhrS.net(2)
ゲキモンの戻す手はこれが最善では?
一列の一方移動だけを予め計算しておけば、回転、反転と列・行の合成で全体移動は簡単に求まる。
8マスに空、パネル、壁の3種がある場合の数は3^8。
それら全ての順方向移動を計算して、移動後の形をインデックスとした配列を求める。

140
デフォルトの名無しさん[sage]   投稿日:2014/12/26 19:59:19  ID:RE4uws7P.net(2)
>99 J
f=: 4 :'+./ 2 = +/"1 x ="1 (i.(! # y)) A. y'

1 2 3 f 5 6 7
0
1 1 1 f 1 1 2
1
1 1 2 f 2 2 1
1
9 8 9 f 8 6 4
0
9 7 2 f 2 2 9
1

141
デフォルトの名無しさん[sage]   投稿日:2014/12/27 04:25:11  ID:wAgkNNIo.net(2)
お題 : 四つの文字 F, G, +, - から成る文字列を次の規則 (1), (2) によって次々と書き換えていくことを考える。
( 一つの文字列に対して規則 (1) と規則 (2) を同時に適用して新しい文字列を得る。その文字列に対してまた規則 (1) と
規則 (2) を同時に適用して新しい文字列を得る。以下同様に繰り返す。 )

規則 (1) … F は F-F-F-GG に変換する、
規則 (2) … G は GG に変換する。

初期文字列 ( 第 0 ステップの文字列 ) を F とする。第 1 ステップの文字列は F-F-F-GG となり、第 2 ステップの文字列は
F-F-F-GG-F-F-F-GG-F-F-F-GG-GGGG となる。第 8 ステップの文字列を求めよ。
コメント7件

142
デフォルトの名無しさん[sage]   投稿日:2014/12/27 04:37:00  ID:/Rtgkvjz.net
>141
+はどこいった?

143
141[sage]   投稿日:2014/12/27 04:52:03  ID:wAgkNNIo.net(2)
+ は旅に出たので探さないでください…

144
デフォルトの名無しさん[sage]   投稿日:2014/12/27 11:40:34  ID:BPM46SyT.net
>99
今更だが
Schemeで

http://codepad.org/zhhogNke

145
デフォルトの名無しさん[sage]   投稿日:2014/12/27 13:07:22  ID:VJUV41TP.net
>141
Scheme
出題者は第8ステップ変換後の文字列の長さを自覚しているのだろうか?
29011文字となり結果を表示できるような長さではない

http://codepad.org/f8xXJWLm

146
デフォルトの名無しさん[sage]   投稿日:2014/12/27 13:29:45  ID:xVA+RyeM.net
ideoneで試してみると表示されたし、3万字くらいブラウザに表示してみると大した長さではない
http://ideone.com/wiQjQj

147
デフォルトの名無しさん[sage]   投稿日:2014/12/27 15:37:59  ID:Tra0DcGu.net

148
デフォルトの名無しさん[sage]   投稿日:2014/12/27 20:30:24  ID:miqkgc9t.net
整数 N が与えられた時に
1 2 3 4 5 6 7 8 9 10 = N
に、適当に + - * / や ( ) を入れて = N に出来るかどうか判定する。
例えばこんな感じ。
(1+(-2))/(-3)*(-4)*(-5)*(-6)*(-7)-(-((+(8*(-9)))*(-10))) = 1000
数字の間に何も入れずに
1 2 3 を 123 と解釈するのは無し。
あんまり面白くないかな。
コメント2件

149
デフォルトの名無しさん[sage]   投稿日:2014/12/27 21:41:08  ID:tOfexSf5.net
カッコの処理がメンドくせーなぁ。うーん。

150
片山博文MZ ◆T6xkBnTXz7B0 [sage]   投稿日:2014/12/27 21:46:54  ID:Cc0RXd7d.net(3)
カッコは連結順序を変えるだけ

151
デフォルトの名無しさん[]   投稿日:2014/12/27 21:55:24  ID:2dHAjI9B.net
逆ポーランド

152
デフォルトの名無しさん[sage]   投稿日:2014/12/27 22:08:53  ID:0/FJBHBn.net
数字の前後に挿入可能な演算記号を総当たりで入れていく。
枝刈りで計算量を抑える。具体的にどうするかは知らん。

演算は加減乗除だけかな。べき乗とかルート記号とか
対数とか剰余とか使えそうな記号なんでも使っていいと
なると大変かな。Nも有理数や実数まで範囲を広げると大変かな。


153
111[sage]   投稿日:2014/12/27 22:13:05  ID:u+dBZrZs.net
>138
ナイトは八方桂馬のこと。
全方向(八方)へ、縦1横2、または縦2横1へ移動できる

例えば、(5,5)の位置から、(4,3)(7,6)など8か所へ移動できる

154
デフォルトの名無しさん[sage]   投稿日:2014/12/27 22:14:04  ID:PYmd3Xah.net
数式をツリーで表現するのは割と簡単でも、結局総当たりでしか解けないから
いまいち面白くないな。

あと全部の組み合わせを列挙すると膨大になるのと、ツリーを式に変換するのが以外と難しい。
コメント1件

155
片山博文MZ ◆T6xkBnTXz7B0 [sage]   投稿日:2014/12/27 22:18:29  ID:Cc0RXd7d.net(3)
>154
演算子の優先順位の比較に従ってカッコを付けるかどうか決める

156
片山博文MZ ◆T6xkBnTXz7B0 [sage]   投稿日:2014/12/27 22:20:25  ID:Cc0RXd7d.net(3)
木構造をなめるのは再帰を使う

157
デフォルトの名無しさん[sage]   投稿日:2014/12/28 09:16:33  ID:GqM4jvZj.net(2)
お題:関数fの引数aが空リストである時,
f(a)が値を返すなら真を返し,
f(a)が値を返さないなら偽を返す関数jdを作れ
(作れない時はプンプン怒れ.ただし俺に怒りを向けないでほしい)

例1 関数f1の場合,
f1(a) = if (a is empty list)

           then answer("empty list")

           else answer("not empty list")

f1は空リストに対し値"empty list"を返すので
jd(f1) -> 真

例2 関数f2の場合
f2(a) = f2(a)
f2は全ての引数に対して値を返さないので
jd(f2) -> 偽
コメント3件

158
デフォルトの名無しさん[sage]   投稿日:2014/12/28 09:23:38  ID:GqM4jvZj.net(2)
>157
補足
関数jdは部分関数ではなく完全関数として定義すること

159
デフォルトの名無しさん[sage]   投稿日:2014/12/28 11:29:43  ID:HTDd5uR9.net
>157
shell
function jd() { $1 | timeout $((548 * 10 ** 10))d grep -q "." }

160
デフォルトの名無しさん[sage]   投稿日:2014/12/28 14:17:01  ID:sYWqNXaa.net
お題: 年越し問題
以下のように「煩」「悩」「空」の文字が8×7に配置されている(あなたの頭の中である)

煩悩煩悩煩煩悩煩
煩煩悩空悩悩悩悩
悩空悩空悩空悩煩
空煩煩悩悩悩煩煩
悩悩悩煩悩煩煩悩
煩悩空空悩煩悩煩
煩煩煩悩煩空悩煩

任意の文字を「鐘」に変えて、
縦・横・斜めに「煩」と「悩」が隣接しないようにしたい
最小の「鐘」の数を求めよ

これはNG(斜めに「煩悩」がある)
空悩
煩空

これはOK
煩鐘悩
煩鐘悩
コメント6件

161
デフォルトの名無しさん[sage]   投稿日:2014/12/28 18:51:21  ID:A4cNcICK.net

162
デフォルトの名無しさん[sage]   投稿日:2014/12/29 02:36:47  ID:OgrteGKW.net(5)
>160 Java
http://ideone.com/5lt5Y6
合ってんのかこれ
コメント1件

163
デフォルトの名無しさん[sage]   投稿日:2014/12/29 02:38:11  ID:OgrteGKW.net(5)
あれ、なんかおかしいわw

164
デフォルトの名無しさん[sage]   投稿日:2014/12/29 02:44:09  ID:OgrteGKW.net(5)
>162
明らかにおかしかった初期化バグは退治された。
だけど結果は合ってんのかこれ。

165
デフォルトの名無しさん[sage]   投稿日:2014/12/29 04:47:36  ID:naIzv4vi.net

166
片山博文MZ ◆T6xkBnTXz7B0 []   投稿日:2014/12/29 05:19:20  ID:k/a0XR+r.net
お題:お使いの言語で次の計算を確かめる。

-zero * +inf == ?
+inf + -inf == ?
-inf / -inf == ?
-nan * +zero == ?
+zero * -zero == ?
+nan - +nan == ?

167
デフォルトの名無しさん[sage]   投稿日:2014/12/29 09:53:22  ID:kUb0OfEc.net
>157
人気ないな、教科書的すぎたか
自己レス、(;´д`)トホホ…
間違ってるかもしれないけど

http://codepad.org/5Z320f07
コメント1件

168
デフォルトの名無しさん[sage]   投稿日:2014/12/29 10:45:02  ID:iQoYiA7Z.net(3)
お題:前に詰めた

初売りのためにお客さんが並んでいます。
店の前の32マスにはお客さん(i)、空き(.)、警備員(P)がいます。

← 前
店 iii.ii.i..ii..P.ii..i..Pii.ii...

混んできたので一歩前に詰めてもらうことにしました。
前方のお客さんから順に前に空きがあれば一歩前に進んでもらいます。
空きが複数あっても、進むのは一歩だけです。
警備員は動かず、お客さんは警備員を越えられません。

店 iii.ii.i..ii..P.ii..i..Pii.ii...

店 iiiii.i..ii...Pii..i...Piiii....

さて、前に詰めた状態が与えられたとき、
詰める前にあり得たすべての状態を示してください。
たとえば、以下のようにあり得た状態がない場合もあります。

店 ......iP(以下略)
コメント3件

169
デフォルトの名無しさん[sage]   投稿日:2014/12/29 10:55:59  ID:OgrteGKW.net(5)
>168
激問の逆方向探索と同じよーな…
コメント1件

170
デフォルトの名無しさん[sage]   投稿日:2014/12/29 10:59:01  ID:iQoYiA7Z.net(3)
>169
バレたw
こうすればいいのかなと思ってw

171
デフォルトの名無しさん[]   投稿日:2014/12/29 11:46:02  ID:Ms14FqLW.net
馬鹿には無理

172
デフォルトの名無しさん[sage]   投稿日:2014/12/29 12:50:15  ID:O818Lvaa.net
激問の他力本願野郎はいい加減消えろよ

173
デフォルトの名無しさん[sage]   投稿日:2014/12/29 15:33:42  ID:onEpMpuY.net
>168
解いてあげたから激問にも活かしてね
http://ideone.com/mEYVT2

174
デフォルトの名無しさん[]   投稿日:2014/12/29 21:20:23  ID:hrQe0PF1.net
ゲキモンは解かせたい奴がいて、そいつが一人で張り切ってるというわけではないだろ?
自分もやってみようとしてるけど完成までいってない。
ルールは簡単で、探索部分は各種ゲームに共通して高速化などの工夫するモデルとして適当。

175
デフォルトの名無しさん[sage]   投稿日:2014/12/29 21:44:31  ID:AXqZfHT5.net(2)
お題を出すからには模範解答を用意しとけって話だよ

176
デフォルトの名無しさん[sage]   投稿日:2014/12/29 21:53:38  ID:ijV2qLIL.net
それはそうだ。

177
デフォルトの名無しさん[sage]   投稿日:2014/12/29 22:02:46  ID:TmQI76a9.net
プログラミングのお題スレ Part6©2ch.net

178
デフォルトの名無しさん[sage]   投稿日:2014/12/29 22:09:48  ID:88bYnTsn.net
解けるのが確かなら、模範解答はいらんけど
コメント1件

179
デフォルトの名無しさん[sage]   投稿日:2014/12/29 22:12:03  ID:ZMsPaQMv.net
解答付ける場合は模範でなくてもいい気が

180
デフォルトの名無しさん[sage]   投稿日:2014/12/29 22:12:15  ID:L6ykxqhk.net(2)
>160
C#
http://ideone.com/gGJjKo
これでいいのかよくわからん。
実行効率は考えずに可読性とコンパクトさだけを考えて書いたから無駄が多い。
コメント1件

181
デフォルトの名無しさん[sage]   投稿日:2014/12/29 22:28:41  ID:AXqZfHT5.net(2)
>178
解けるのが確かなら、模範解答は作れるはずだけどな

182
デフォルトの名無しさん[sage]   投稿日:2014/12/29 22:38:24  ID:OgrteGKW.net(5)
>180
煩煩煩煩煩
煩悩悩悩煩
煩悩煩悩煩
煩悩悩悩煩
煩煩煩煩煩

こういう形だと9個鐘にならん?
コメント1件

183
デフォルトの名無しさん[sage]   投稿日:2014/12/29 22:42:53  ID:L6ykxqhk.net(2)
>182
なっちゃうねw
根本的に考え方が間違ってるのか...

184
168[sage]   投稿日:2014/12/29 22:59:36  ID:iQoYiA7Z.net(3)
>168
模範解答になるかはわからないけど129の方法で作ってはある
C
http://ideone.com/pP7FSv
Prologわけわからんw
コメント1件

185
デフォルトの名無しさん[sage]   投稿日:2014/12/29 23:04:00  ID:MGpqJSmu.net
というか激問は荒れるからサヨナラしたい

186
デフォルトの名無しさん[sage]   投稿日:2014/12/30 03:48:26  ID:8nm/692r.net
>111
みんな、番兵・優先度キュー・ダイクストラなどを、
使って解いたの?

>42-43
連続した空所(石の無い所)を、1つにまとめたり、
両端の空所を削除して、
石のパターンを正規化して保存して、解いた人いる?

__o___oo_ → _o_oo_ → o_oo

187
デフォルトの名無しさん[sage]   投稿日:2014/12/30 05:58:44  ID:NIJEvlrs.net

188
デフォルトの名無しさん[sage]   投稿日:2014/12/30 08:51:31  ID:NxxFJ2Ok.net
>148
誰かお願いします。
こういうのはどんなデータ形式で問題を表現すれば良いのでしょうか?
コメント2件

189
デフォルトの名無しさん[sage]   投稿日:2014/12/30 09:44:30  ID:vPTYHLe9.net
>188
まず出題者が模範解答を書いてから。

190
デフォルトの名無しさん[sage]   投稿日:2014/12/30 16:09:17  ID:VtLWUdXV.net
>167
面白かったですありがとう

191
デフォルトの名無しさん[sage]   投稿日:2014/12/30 20:08:43  ID:+Lnp2Jgo.net(2)
>188
一応書いたけど組み合わせ爆発起こして永延と計算し続けるw

192
デフォルトの名無しさん[sage]   投稿日:2014/12/30 21:16:02  ID:vNwijaqn.net
カッコなかったら、10!^4くらいで終わりそうなんだけど、かっこあったらいくらでも変化有るので厳しい。

193
デフォルトの名無しさん[sage]   投稿日:2014/12/30 21:45:11  ID:+Lnp2Jgo.net(2)
9個の演算子の組み合わせが94143280通り
括弧によって演算順が任意になるので
これを数字の入れ替えで対応して3628800通り
合わせて341627134464000通りじゃない?
コメント1件

194
デフォルトの名無しさん[sage]   投稿日:2014/12/30 22:02:22  ID:cPALYY2N.net
>184
negaいらない

51 unsigned long b = min;
69 } while (b = ((b | nega) + min) & move_R);

51 unsigned long b = move_R;
69 } while (b = (b - min) & move_R);
コメント1件

195
デフォルトの名無しさん[]   投稿日:2014/12/30 22:23:27  ID:tRloJVn4.net
テンパズルの解の探索 - 数学自由研究
http://azisava.sak ura.ne.jp/math/ten_puzzle.html


完全版 テンパズル (10puzzle) 全問題 全解答一覧: はまのおと
http://hama-1987.cocolog-nifty.com/blog/2014/08/10puzzle-3de2.html

196
デフォルトの名無しさん[sage]   投稿日:2014/12/30 22:51:44  ID:XXXHWySa.net
>193
括弧を自由に使えて演算の順序は自由に入れ替えできるんだから
結局等価な二分木で考えて良いってことじゃないか。

そうすると、二分木の形の組み合わせが10 * (9!) * (9!) / 2 通り、
最初の10コの数字を除くノードの数は45、ノード(演算子)の種類は+、*、/の3つ、
符号(-)の組み合わせがノードごとに4通りだから、

5 * (9!) * (9!) * 45 * 3 * 4 = 355,541,114,880,000

このぐらいかなあ。
コメント1件

197
デフォルトの名無しさん[sage]   投稿日:2014/12/30 23:23:41  ID:PNiPHmHi.net
1 2 3 4 = Nの場合だと
N=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,19,20,21,23,24,25,28,36の25個(負数入れたら49個)で合ってるかな?

198
デフォルトの名無しさん[sage]   投稿日:2014/12/31 04:22:45  ID:e3nqTxFR.net
>196
終わらんなー。一目見て嫌気がさすわけだ。

199
デフォルトの名無しさん[sage]   投稿日:2014/12/31 06:13:21  ID:797dGgIL.net(3)
(((((((1+2)+3)+4)-5)*6)+7)*((8+9)+10)) = 999
((((((((1+2)+3)+4)+5)+6)+7)+(8*9))*10) = 1000
-((((((1+2)+3)+4)-5)+6)*((7-8)-(9*10))) = 1001
-(((1+2)*3)*((4-((5*(6+7))*(8+9)))-10)) = 9999
(((((1+2)+3)+4)*((5+((6+7)*8))-9))*10) = 10000
(((1+2)/3)+((4*5)*((6+((7*8)*9))-10))) = 10001
こんなん出来たが不必要な括弧を消していないw

1 2 3 4 5 6 7 8 = Nだと探索完了(Nが見つからなかった場合)まで5,732ms
1 2 3 4 5 6 7 8 9 = Nだと探索完了まで159,835ms
1 2 3 4 5 6 7 8 9 10 = Nだと…?

200
デフォルトの名無しさん[sage]   投稿日:2014/12/31 07:36:12  ID:FZ7B/GlD.net
ここの人ってCodeforcesやTopcoderはやらないの?
Topcoderスレ過疎ってて寂しいんだけど。

201
デフォルトの名無しさん[sage]   投稿日:2014/12/31 07:47:53  ID:J7eQL95T.net
プロコンはtwitterのイメージだが

202
デフォルトの名無しさん[sage]   投稿日:2014/12/31 08:21:19  ID:797dGgIL.net(3)
((1+2+3+4-5)*6+7)*(8+9+10) = 999
(1+2+3+4+5+6+7+8*9)*10 = 1000
-(1+2+3+4-5+6)*(7-8-9*10) = 1001
-(1+2)*3*(4-5*(6+7)*(8+9)-10) = 9999
(1+2+3+4)*(5+(6+7)*8-9)*10 = 10000
(1+2)/3+4*5*(6+7*8*9-10) = 10001
括弧を整理して出力するようにしたらこうなった

ところでコードは出題者の模範解答が出るまで貼らない流れなの?
コメント2件

203
デフォルトの名無しさん[sage]   投稿日:2014/12/31 11:14:56  ID:tbkKnY0y.net
>202
数式の無駄な括弧を除去する
にはどうするんですか?
正規表現とか使うんですか?
コメント1件

204
デフォルトの名無しさん[sage]   投稿日:2014/12/31 13:02:27  ID:nSh+alF0.net(3)
ちょとルールが違うけどC/C++で小町算ならこのコードが速そう
https://gist.github.com/qnighy/276122

205
デフォルトの名無しさん[sage]   投稿日:2014/12/31 13:07:09  ID:nSh+alF0.net(3)
>194
ほんとだ
129で移動候補が少ないほうから列挙されてたから考えずにそう作ったっぽい
ありがとう
直した
http://ideone.com/pP7FSv

馬鹿には無理とか他力本願野郎とか模範解答出せとか言ってた方々は
コードも書けない非効率なとこも指摘できない口だけ野郎なんですかね
コメント2件

206
デフォルトの名無しさん[sage]   投稿日:2014/12/31 13:39:59  ID:ieO8Y+yE.net
>205
激問の攻略は余所でやってください
コメント1件

207
◆QZaw55cn4c [IDもついたしゆるりといきましょうよ]   投稿日:2014/12/31 13:46:02  ID:vgeDgSob.net(2)
>205
>コードも書けない非効率なとこも指摘できない
気持ちはわからないわけでもないが、それは「QZ化」と呼ばれる変態変化(へんげ)の兆候だ
自重したまえ
コメント1件

208
デフォルトの名無しさん[sage]   投稿日:2014/12/31 13:56:53  ID:nSh+alF0.net(3)
>206
>207
ご指摘ありがとう
すまんかった
コメント1件

209
◆QZaw55cn4c [sage]   投稿日:2014/12/31 14:24:32  ID:vgeDgSob.net(2)
>208
気にするな貴様はまだ軽症だ重症例はこちら
【モリタポ有償】C/C++/Java の問題を片付けます(4)
方々から「つける薬もない」とあきれられて早5年
おっと馬鹿が感染るかもしれないから閲覧には注意し給へ

210
デフォルトの名無しさん[sage]   投稿日:2014/12/31 16:06:29  ID:797dGgIL.net(3)
>203
括弧付きの式から何とかするのではなく、合成時の場合分けで何とかした。

211
160[sage]   投稿日:2015/01/01 01:45:24  ID:bYpQjJS4.net
>160の回答ですが、答えは22です
探索して解くことを想定していましたが、
別の方法で簡単に求められてしまいました
愚直に探索すると5秒くらいかかります
コメント1件

212
デフォルトの名無しさん[sage]   投稿日:2015/01/01 03:07:10  ID:0wlrkYtM.net
宋って人、わりとまともなこと言うことが多いけど、
こういう話になるとなぜか共産主義みたいなこと言うよな。

213
デフォルトの名無しさん[sage]   投稿日:2015/01/01 09:36:02  ID:Z/g5TCdZ.net
共産主義はあなたの嫌いな思想の総称ではないぞい

214
デフォルトの名無しさん[sage]   投稿日:2015/01/01 17:10:30  ID:0VU7bj33.net

215
デフォルトの名無しさん[sage]   投稿日:2015/01/01 17:46:38  ID:elhRbHDr.net
まだこういう一つのメソッドに全部突っ込むスタイルの人っているんだなw

216
デフォルトの名無しさん[sage]   投稿日:2015/01/01 20:29:58  ID:sa8NdrXP.net
これを分けて、分かりやすくなるのかな……

217
デフォルトの名無しさん[]   投稿日:2015/01/02 19:36:46  ID:C0yW4Jjr.net
このスレのみんなは↓こういうプログラミングコンテストのサイトに登録してたりするん?

http://atcoder.jp

218
デフォルトの名無しさん[sage]   投稿日:2015/01/03 00:57:40  ID:mNe+vS5s.net
ジャップによるtopcoderのパクリサイト?

219
デフォルトの名無しさん[sage]   投稿日:2015/01/03 05:42:39  ID:EJRvAfwK.net(2)
>141 Io
f : =method(n,
s := "F" asMutable
n repeat(s = s replaceSeq("G", "GG")replaceSeq("F", "F-F-F-GG"))
)

220
デフォルトの名無しさん[sage]   投稿日:2015/01/03 17:34:04  ID:EJRvAfwK.net(2)
お題:「2以上の自然数nについて 2^n-2 がnで割り切れるときnは素数である」の反例を探す。
コメント8件

221
デフォルトの名無しさん[sage]   投稿日:2015/01/03 19:12:05  ID:wE6j5dI1.net
>220
(define (reigai limit)
(let loop ((n 2) (result '()))
(if (> n limit)
result
(loop (inc n) (if (and (zero? (modulo (- (expt 2 n) 2) n)) (not (prime? n)))
(cons n result)
result)))))

222
デフォルトの名無しさん[sage]   投稿日:2015/01/03 20:02:10  ID:XLRg19ve.net
>220
c
途中で桁あふれしてしまうので 52 個まで
http://ideone.com/HWRQfM

223
デフォルトの名無しさん[sage]   投稿日:2015/01/03 22:47:02  ID:Hmq4CGG3.net(2)

224
デフォルトの名無しさん[sage]   投稿日:2015/01/03 23:14:23  ID:Hmq4CGG3.net(2)

225
デフォルトの名無しさん[sage]   投稿日:2015/01/04 01:25:18  ID:ulO+nk3L.net(2)
>141 J
f =: 4 : 0
;@(('F-F-F-GG';'GG';'-') {~ 'FG-'&i.)^:(x) y
)

2 f 'F'
F-F-F-GG-F-F-F-GG-F-F-F-GG-GGGG

# 8 f 'F'
29011

226
デフォルトの名無しさん[sage]   投稿日:2015/01/04 03:46:42  ID:kw9bqH4f.net(2)
>220 Emacs Lisp
(defun hanrei (upto)
(let ((n 3) l)
(while (<= n upto)
(when (and (= (let ((i n)
(r 1))
(while (> i 0)
(setq r (% (* r 2) n))
(setq i (1- i)))
r) 2)
(eq (let ((n n))
(when (= (% n 2) 1)
(let ((i 3)
(r t))
(while (> n (* i i))
(when (= (% n i) 0)
(setq r nil n 0))
(setq i (+ i 2)))
r))) nil))
(push n l))
(setq n (1+ n)))
(reverse l)))

(progn (setq result (hanrei 100000)) nil)
nil

(length result)
78

(nthcdr 51 result)
(42799 46657 49141 49981 52633 55245 57421 60701 60787 62745 63973 65077 65281 68101 72885 74665 75361 80581 83333 83665 85489 87249 88357 88561 90751 91001 93961)
コメント2件

227
デフォルトの名無しさん[sage]   投稿日:2015/01/04 08:31:10  ID:eBd7g4M7.net(2)
>226
再帰で書き直してほしい
コメント1件

228
デフォルトの名無しさん[sage]   投稿日:2015/01/04 08:59:51  ID:Xl8XYZDS.net
再帰が苦手なLisp環境もあるんですよぉ

229
デフォルトの名無しさん[sage]   投稿日:2015/01/04 12:53:40  ID:eBd7g4M7.net(2)
へ?Emacs Lispだろ?
勉強すれば?

230
デフォルトの名無しさん[sage]   投稿日:2015/01/04 15:42:07  ID:ulO+nk3L.net(2)
>220 Io
powerMod := method(a, b, m,
r := 1
for(i, 0, b log2 floor, if(b at(i) == 1, r = r * a % m); a = a * a % m)
r
)
isPrime := method(n,
if(n isEven or n < 2, return(n == 2))
for(i, 3, n sqrt floor, 2, if(n % i == 0, return(false)))
true
)
isPrime2 := method(n,
if(n == 2, (2 ** n - 2) % n == 0, powerMod(2, n, n) == 2)
)
f := method(z,
for(i, 2, z, if(isPrime(i) != isPrime2(i), i println))
)

Io> f(1000)
341
561
645

231
デフォルトの名無しさん[sage]   投稿日:2015/01/04 17:13:50  ID:kw9bqH4f.net(2)
>226は素数の二乗を誤って素数と判定していました。
誤 (> n (* i i))
正 (>= n (* i i))

>227
繰り返しを使わないように書き直してみました。
私の環境だと10585と11305の間でSEGVが発生してしまいました。

(require 'cl-lib)

(defun hanrei (upto)
(let (l)
(cl-labels ((f (n)
(when (<= n upto)
(when (and (= (cl-labels ((f (i r)
(if (<= i 0) r (f (1- i) (% (* r 2) n)))))
(f n 1)) 2)
(eq (when (= (% n 2) 1)
(cl-labels ((f (i)
(if (< n (* i i)) t (when (/= (% n i) 0) (f (+ i 2))))))
(f 3))) nil))
(push n l))
(f (1+ n)))))
(f 3))
(reverse l)))

(let ((max-lisp-eval-depth most-positive-fixnum) (max-specpdl-size most-positive-fixnum)) (hanrei 10703))
(341 561 645 1105 1387 1729 1905 2047 2465 2701 2821 3277 4033 4369 4371 4681 5461 6601 7957 8321 8481 8911 10261 10585)

(let ((max-lisp-eval-depth most-positive-fixnum) (max-specpdl-size most-positive-fixnum)) (hanrei 11054))
Exception Type: EXC_BAD_ACCESS (SIGSEGV)

232
◆QZaw55cn4c [sage]   投稿日:2015/01/04 20:27:19  ID:kU4tFNpU.net
>211
ああん!はまったよぅ‥
std::set に与える比較関数 operator<() を間違えていた‥これで6時間無駄にしたか‥
ふと画面をみると
煩悩煩悩煩煩悩煩煩煩悩‥うるさいわい!
当分年は越せないようだ‥

233
デフォルトの名無しさん[sage]   投稿日:2015/01/05 10:28:48  ID:yGPXja5b.net
>220 Squeak Smalltalk
| ans |
ans := OrderedCollection new.
2 to: Float infinity do: [:n |
 | m |
 m := (2 raisedTo: n) - 2.
 (m isDivisibleBy: n) ifTrue: [n isPrime
  ifFalse: [(ans add: n; size) = 24 ifTrue: [^ans asArray]]]
]

=> #(341 561 645 1105 1387 1729 1905 2047 2465 2701 2821
 3277 4033 4369 4371 4681 5461 6601 7957 8321 8481 8911
 10261 10585)

234
デフォルトの名無しさん[sage]   投稿日:2015/01/05 13:30:10  ID:fxjHSPae.net
>220
Scheme 末尾再帰版
http://codepad.org/Q7cX9QYx

235
デフォルトの名無しさん[sage]   投稿日:2015/01/06 01:33:58  ID:pRP3QEbe.net(6)
>220
pow(2, n-2)は奇数で割り切れるわけないじゃんね。
どういう意味ですか?
コメント1件

236
デフォルトの名無しさん[sage]   投稿日:2015/01/06 01:41:24  ID:pRP3QEbe.net(6)
もしかして−1なんですね

237
デフォルトの名無しさん[sage]   投稿日:2015/01/06 01:48:57  ID:Sc9hEA6r.net(2)
>235
演算子の優先順位

238
デフォルトの名無しさん[sage]   投稿日:2015/01/06 02:03:17  ID:pRP3QEbe.net(6)
偶数は素数じゃないじゃん(2以外)

239
デフォルトの名無しさん[sage]   投稿日:2015/01/06 02:06:24  ID:Sc9hEA6r.net(2)
n=3の場合
2^n-2 = 6
6 % 3 = 0

240
デフォルトの名無しさん[sage]   投稿日:2015/01/06 06:17:42  ID:pRP3QEbe.net(6)
なるほど。ありがとうございます

241
デフォルトの名無しさん[sage]   投稿日:2015/01/06 07:37:46  ID:pRP3QEbe.net(6)
>220
http://codepad.org/afrvIcjs
153 341 1305 1729 1803 3825 4033 4369 8321 10825 12801 16705 33153 34945 46657 49981 63973 65281
なんか違う

242
デフォルトの名無しさん[sage]   投稿日:2015/01/06 08:45:33  ID:8Sq14aUr.net(2)
すまんな
爆笑!!

243
デフォルトの名無しさん[sage]   投稿日:2015/01/06 17:20:48  ID:pRP3QEbe.net(6)
341 561 645 1105 1387 1729 1905 2047 2465 2701 2821
3277 4033 4369 4371 4681 5461 6601 7957 8321 8481 8911
10261 10585 11305 12801 13741 13747 13981 14491 15709
15841 16705 18705 18721 19951 23001 23377 25761 29341
30121 30889 31417 31609 31621 33153 34945 35333 39865
41041 41665 42799 46657 49141 49981 52633 55245 57421
60701 60787 62745 63973 65077 65281
これで良さそう

244
デフォルトの名無しさん[sage]   投稿日:2015/01/06 20:13:33  ID:8Sq14aUr.net(2)
おまえ、きえろ
荒らしに等しい

245
デフォルトの名無しさん[sage]   投稿日:2015/01/06 22:56:32  ID:7yBhbcNM.net
誰にもかまってもらえないの。
かまってかまって。

246
デフォルトの名無しさん[]   投稿日:2015/01/09 02:03:51  ID:TIj1I4KF.net
お題。「ビルゲイツの面接試験」2003を変形。
入社目安、5分??

今、ABCDの4人はStart地点におり、
そこから全員がEnd地点へ、最短時間の17分で行く方法は?

条件
1.S,E間には、橋が架かっており、
同時に橋を渡れるのは2人まで

2.橋を渡る際には必ず、1つしかない懐中電灯を持って、
照らしながら渡る
(最後以外は、誰かがEに行っても、Eにいる誰かが、
懐中電灯を持って、Sに戻るという意味)

3.2人で橋を渡る際には、時間が掛かる方へ合わせる
橋を渡るのに、各人が掛かる時間(分)は、
A:1,B:2,C:5,D:10
コメント6件

247
デフォルトの名無しさん[sage]   投稿日:2015/01/09 03:55:39  ID:KV5nGDYE.net
AB渡るA戻るCD渡るB戻るAB渡る

248
デフォルトの名無しさん[sage]   投稿日:2015/01/09 17:32:10  ID:zPwjNQ6g.net
>246 Squeak Smalltalk

| S E steps queue results |
S := {#A->1. #B->2. #C->5. #D->10} asOrderedCollection.
E := Set new.
steps := OrderedCollection new.
queue := OrderedCollection with: {S. E. steps}.
results := OrderedCollection new.
[queue notEmpty] whileTrue: [
 S := queue first first.
 E := queue first second.
 steps := queue removeFirst third.
 S combinations: 2 atATimeDo: [:pair |
  | currS currE step currSteps |
  currS := S copy. currE := E copy. currSteps := steps copy.
  currE addAll: (currS removeAll: pair).
  step := (pair collect: #key) -> (pair detectMax: #value) value.
  currSteps add: step.
  currS ifEmpty: [results add: currSteps asArray] ifNotEmpty: [
   currSteps add: (currS add: (currE remove: (currE detectMin: #value))).
   queue add: {currS. currE. currSteps} deepCopy
  ]
 ]
].
^results detectMin: [:each | (each collect: #value) sum]

=> {#(#A #B)->2 . #A->1 . #(#C #D)->10 . #B->2 . #(#A #B)->2}

249
デフォルトの名無しさん[]   投稿日:2015/01/11 01:43:47  ID:jQsmpaL2.net(2)
総当たりでプログラミングしたいんだが、どうすればよい?
途中の分岐も覚えておいて、総当たりしたい
BackTrack法? PathTree?

(S,E)(ABCD,nil) → SE(AB) SからEへ 6通り
(CD,AB) → ES(A) EからSへ 2通り
(ACD,B) → SE(AC) 3通り
(D,ABC) → ES(A) 3通り
(AD,BC) → SE(AD) 1通り
(nil,ABCD)
コメント1件

250
デフォルトの名無しさん[sage]   投稿日:2015/01/11 01:54:50  ID:zjPFgjun.net
俺なら普通に再起処理で組むけど。

251
249[sage]   投稿日:2015/01/11 02:23:07  ID:jQsmpaL2.net(2)
再帰か?一本道ならわかるけど、
f(){f()}

6*2*3*3*1 通り

分岐するから、わからんw

252
デフォルトの名無しさん[sage]   投稿日:2015/01/11 09:40:18  ID:qlxz8U33.net
>249
記号のいみわからん

253
デフォルトの名無しさん[sage]   投稿日:2015/01/11 13:46:55  ID:sVpA7dIq.net

254
デフォルトの名無しさん[sage]   投稿日:2015/01/11 19:34:01  ID:a9Qzv2hU.net

255
デフォルトの名無しさん[sage]   投稿日:2015/01/11 20:32:44  ID:jztAy1AOn
【お題】
M円の買い物をしたときに、やりとりする通貨の枚数を最小にするには
いくら支払えばよいか?使用できる通貨の枚数に上限はないものとする

(例1) M=108 → 110円
 お釣りなく支払う場合、硬貨が5枚必要
 110円で支払うと、支払い2枚、お釣り2枚の合計4枚で済む

(例2) M=555 → 555円
 お釣りなく支払うのが最小枚数の3枚

(例3) M=9999 → 10000円

256
デフォルトの名無しさん[sage]   投稿日:2015/01/11 22:20:03  ID:+NAlswWM.net
【お題】
M円の買い物をしたときに、やりとりする通貨の枚数を最小にするには
いくら支払えばよいか?使用できる通貨の枚数に上限はないものとする

(例1) M=108 → 110円
 お釣りなく支払う場合、硬貨が5枚必要
 110円で支払うと、支払い2枚、お釣り2枚の合計4枚で済む

(例2) M=555 → 555円
 お釣りなく支払うのが最小枚数の3枚

(例3) M=9999 → 10000円
コメント3件

257
デフォルトの名無しさん[sage]   投稿日:2015/01/11 23:15:07  ID:LMtWGwUz.net
また宿題?

258
デフォルトの名無しさん[sage]   投稿日:2015/01/12 10:28:17  ID:hpX4ehNn.net
通貨(即位記念10万円コイン)

259
デフォルトの名無しさん[sage]   投稿日:2015/01/12 17:56:26  ID:DhOqG7KA.net

260
デフォルトの名無しさん[sage]   投稿日:2015/01/13 08:20:25  ID:Lq976p7E.net
>259
そして忘れられる2000円札

261
デフォルトの名無しさん[sage]   投稿日:2015/01/13 12:34:36  ID:Ev7UJkAF.net
クレカや電子マネーなら常に0枚

262
デフォルトの名無しさん[sage]   投稿日:2015/01/13 18:52:37  ID:4E9tx8H3.net
>256
お釣りもやろうぜ

263
デフォルトの名無しさん[sage]   投稿日:2015/01/13 20:16:53  ID:5CeIWqhl.net
俺のチンポ使用料は一億円

264
デフォルトの名無しさん[sage]   投稿日:2015/01/14 01:47:17  ID:49lpCiLZ.net(3)

265
デフォルトの名無しさん[sage]   投稿日:2015/01/14 01:50:16  ID:sFNbKbXu.net
vectorはTが同じだったらoperator=が定義されてるよ。

266
デフォルトの名無しさん[sage]   投稿日:2015/01/14 02:09:37  ID:49lpCiLZ.net(3)
はい、コピーメソッドは不要ですね

267
デフォルトの名無しさん[sage]   投稿日:2015/01/14 02:11:06  ID:49lpCiLZ.net(3)
あとjのループは初期値iでした

268
デフォルトの名無しさん[]   投稿日:2015/01/14 02:51:17  ID:LgbjfHh9.net
>264
こんなに複雑なの?

269
デフォルトの名無しさん[sage]   投稿日:2015/01/14 14:43:35  ID:s6p0C0Kn.net

270
デフォルトの名無しさん[sage]   投稿日:2015/01/15 12:18:00  ID:KHkx343q.net
こういう文字列が与えられるので□の中に+/*-のどれが当てはまるか出力しろ
スペース区切りで出力しろ
解が複数ある場合は、改行区切りで出力しろ

出力サンプル
Q:
8□3=24
A:
/

Q:
2□4□10=-4
+ -

271
デフォルトの名無しさん[sage]   投稿日:2015/01/15 16:27:24  ID:TmXAROfd.net
なんかやだ

272
デフォルトの名無しさん[sage]   投稿日:2015/01/16 01:32:36  ID:eHI5YRba.net
♪割っちゃった〜!(空耳アワー)

273
デフォルトの名無しさん[sage]   投稿日:2015/01/16 20:26:42  ID:fDyrbIad.net

274
デフォルトの名無しさん[sage]   投稿日:2015/01/16 21:43:43  ID:cRtXed+o.net
お題:
conwayの数列の第n項を求めるプログラムを書いてください。
3,13,1113,3113,132113,...
数列の意味は
最初は3が1個なので{1,3}です。
今度は1が1個で3が1個なので{{1,1},{1,3}}です。
次は1が連続して3個並んでいて、3は1個なので{{3,1},{1,3}}です。
以下同様の手順です。
コメント6件

275
デフォルトの名無しさん[sage]   投稿日:2015/01/16 22:27:38  ID:E6bJ8cyd.net
1:1
2:2
3:4
4:4
5:6
...
50:1040344

すっごく長くなる?

276
デフォルトの名無しさん[sage]   投稿日:2015/01/16 22:34:05  ID:lBWuATDI.net
つまんなそうだからパス

277
デフォルトの名無しさん[sage]   投稿日:2015/01/17 00:10:13  ID:KOOYDoMc.net(4)
>274 C++
https://ideone.com/UW3yyO
ideoneだとn=39まで
40はRuntime Error

278
デフォルトの名無しさん[sage]   投稿日:2015/01/17 00:20:38  ID:JuBSWUfO.net(2)
What is the size limit for the source code, input and output?
64 kB.

これに引っかかってるんだな
コメント2件

279
デフォルトの名無しさん[sage]   投稿日:2015/01/17 00:25:26  ID:KOOYDoMc.net(4)

280
デフォルトの名無しさん[sage]   投稿日:2015/01/17 00:28:34  ID:KOOYDoMc.net(4)
>278
そうなのか知らなかった
サンクス

281
デフォルトの名無しさん[sage]   投稿日:2015/01/17 07:36:41  ID:mT/cBYCN.net

282
273[sage]   投稿日:2015/01/17 08:33:39  ID:0LKV4/k2.net(8)
お題:
273の追加です。第n項の数はCλ^nに近いそうです。
Cは定数で、λは
λ=1.30373208460257638390068004051191852322256526861420...
です。確かめてください。
コメント3件

283
デフォルトの名無しさん[sage]   投稿日:2015/01/17 08:34:18  ID:AENSvI4Y.net

284
デフォルトの名無しさん[sage]   投稿日:2015/01/17 08:36:14  ID:2qw88r7l.net
>282
アホ

285
デフォルトの名無しさん[sage]   投稿日:2015/01/17 11:01:49  ID:4GRteQNG.net(2)
>274 haskell, とりあえず最初20項 (thx. >278)
https://ideone.com/whe3Ek
コメント1件

286
デフォルトの名無しさん[sage]   投稿日:2015/01/17 11:11:47  ID:0LKV4/k2.net(8)
お題:
数x,yについて、xから+−y以内の有理数のうち
もっとも簡単なものを求めるプログラムを書いてください。
簡単であるとはr1=p1/q1, r2=p2/q2(既約分数)について
|p1|<=|p2|かつ|q1|<=|q2|のとき、r1はr2より簡単とします。
2/3 は3/5より簡単です。
例えばx=0.3, y=1/10のときには答えは1/3となります。
コメント5件

287
デフォルトの名無しさん[sage]   投稿日:2015/01/17 11:24:45  ID:4GRteQNG.net(2)
>285 間違えてた (eleven が 次で two one にならない) けど修正すぐだし許してつかあさい

288
デフォルトの名無しさん[sage]   投稿日:2015/01/17 13:08:49  ID:BluM5a1X.net(4)
>286
2/3と3/2はどちらか簡単か
コメント1件

289
デフォルトの名無しさん[sage]   投稿日:2015/01/17 13:21:54  ID:0LKV4/k2.net(8)
>288
それは比較不能。
しかし、一定の区間において必ず両端より簡単な有理数が
ひとつ存在するはず。

290
デフォルトの名無しさん[sage]   投稿日:2015/01/17 13:27:14  ID:0LKV4/k2.net(8)
ああ、間違えた。端っこの場合もある。
0=0/1 と考えてほしい。

291
デフォルトの名無しさん[sage]   投稿日:2015/01/17 14:10:42  ID:JuBSWUfO.net(2)
>286
XとYの範囲は未規定?
コメント1件

292
デフォルトの名無しさん[sage]   投稿日:2015/01/17 14:14:30  ID:0LKV4/k2.net(8)
>291
実数ってことにして。
複素数までいれるとそもそも大小比較できないし。

293
デフォルトの名無しさん[sage]   投稿日:2015/01/17 14:39:23  ID:BluM5a1X.net(4)
符号の扱いも不明瞭だよね。


294
デフォルトの名無しさん[sage]   投稿日:2015/01/17 14:48:52  ID:0LKV4/k2.net(8)
実数だからもちろん正負ありだよ。

295
デフォルトの名無しさん[sage]   投稿日:2015/01/17 14:51:07  ID:0LKV4/k2.net(8)
コンピューターが扱える範囲の実数ってことにして。
難しく考える人がいるといけないので。

296
デフォルトの名無しさん[sage]   投稿日:2015/01/17 15:32:21  ID:BluM5a1X.net(4)
既約分数って制約がついてるから(-1)/(-3)は不可ってのは良いとしても、
-(2/5)と-(1/5)はどちらがより簡単なんだろう。

(-2)/5と(-1)/5と考えると-(2/5)の方が簡単。
2/(-5)と1/(-5)と考えると-(1/5)の方が簡単。

297
デフォルトの名無しさん[sage]   投稿日:2015/01/17 15:36:12  ID:BluM5a1X.net(4)
>286
あ、絶対値の記号が付いてるかすまんw

298
デフォルトの名無しさん[sage]   投稿日:2015/01/17 16:34:54  ID:0LKV4/k2.net(8)
>274
オレ様仕様言語
https://ideone.com/W3MqDO

出題者でございます。お騒がせしております。
自前の処理系のテストにconwayの数列を使ってました。284さんと答え合わせを
させてもらいました。自由半群という数学を応用した方法があるそうです。

>282は普通には計算困難なのですが誰かうまい方法でやりきる人がいるかも
とお尋ねしてみました。

299
デフォルトの名無しさん[sage]   投稿日:2015/01/17 17:10:46  ID:KOOYDoMc.net(4)

300
デフォルトの名無しさん[sage]   投稿日:2015/01/17 17:38:37  ID:uQW+pF83.net
来年の今日の東京の天気の降水確率を予想するプログラムを書け
コメント1件

301
デフォルトの名無しさん[sage]   投稿日:2015/01/17 18:52:33  ID:vexnPrUX.net(2)
>282
出題者です。すみません。訂正です。
どうも第n項の数字の数、つまり桁数のことを言っているようです。
そこに漸近するということは桁数が収束するのかもしれません。

302
デフォルトの名無しさん[sage]   投稿日:2015/01/17 19:53:24  ID:vexnPrUX.net(2)
>299
あってます。
素晴らしい。こんな短時間で。

303
デフォルトの名無しさん[sage]   投稿日:2015/01/18 02:48:31  ID:BI2B8Wlh.net
>300 C++
https://ideone.com/hfHrF2

http://www.data.jma.go.jp/gmd/risk/obsdl/index.php
↑ここの1985年から2014年の日別データを元に
30年間の同日の降雨日数/30を降水確率として表示する仕様
ざっと調べたところ過去30年の同日降雨日数と
実際の降雨は正の相関だけどかなり弱かった(あたりまえ)から
この降水確率はあまり意味はないw

ちなみに雨が少ない日は 12/20 12/29 12/30 (5日/30年)
雨が多い日は 6/10 7/7 (26日/30年)
七夕……

確率そのものではなく降った降らないのビット列でデータを持ってるのは
過去の年月日を指定してそこから過去10年とかで調べてたのの名残

304
デフォルトの名無しさん[sage]   投稿日:2015/01/18 02:55:49  ID:mpifYpCH.net

305
デフォルトの名無しさん[sage]   投稿日:2015/01/18 03:35:19  ID:w9eH/tSE.net

306
298[sage]   投稿日:2015/01/18 07:08:27  ID:LDt5umkO.net(3)
>304
撃墜されたw
テストケースが甘い俺

307
デフォルトの名無しさん[sage]   投稿日:2015/01/18 12:23:11  ID:vn6LeXxT.net
285の出題者です。
ひょっとしてみなさん、総当りで分子分母を探索してます?
もしも、そうだったらもっと効率の良い方法を検討してみてください。

308
デフォルトの名無しさん[sage]   投稿日:2015/01/18 12:34:00  ID:PizSORX+.net
嫌です

309
デフォルトの名無しさん[sage]   投稿日:2015/01/18 13:09:21  ID:dkh0cG7M.net(2)
お題:
10桁以下の10進数の自然数を対象とします。
各桁の数を上位からdnとしこれについてn番目の素数pn
とのpn^dnの積を返す関数fを考えます。
f(x)=p1^d1*p2^d2*...*p10^d10
例えばf(402) = 2^4*3^0*5^2=400 です。
f(x)=x となる数を探すプログラムを書いてください。

さらに余裕があれば11桁以上の数について調べてください。
コメント6件

310
デフォルトの名無しさん[sage]   投稿日:2015/01/18 15:28:51  ID:hI6c62kN.net
嫌です

311
デフォルトの名無しさん[sage]   投稿日:2015/01/18 20:14:50  ID:s9UNgaar.net(3)
>309
手元で15桁まで計算して81312000だけなんだが合ってるのかな
コメント1件

312
デフォルトの名無しさん[sage]   投稿日:2015/01/18 20:16:09  ID:dkh0cG7M.net(2)
>311
正解

313
デフォルトの名無しさん[sage]   投稿日:2015/01/18 21:18:19  ID:s9UNgaar.net(3)
18桁まで計算しても81312000だけだった
後は任せた

>309 Java
http://ideone.com/m87Se2
コメント1件

314
デフォルトの名無しさん[sage]   投稿日:2015/01/18 21:46:44  ID:LDt5umkO.net(3)
これだね
http://journals.cambridge.org/action/displayAbstract?fromPage=online&;aid=44141&fileId=S0956796897002931

315
デフォルトの名無しさん[sage]   投稿日:2015/01/18 21:48:10  ID:LDt5umkO.net(3)

316
デフォルトの名無しさん[sage]   投稿日:2015/01/18 22:08:19  ID:s9UNgaar.net(3)
関係ないけど積を和にしたら10桁で3個 (43 97752 452965740)
これはもっと上の桁でもあるかな?

>313の*を+にしただけじゃ遅すぎで無理だが

317
デフォルトの名無しさん[sage]   投稿日:2015/01/19 01:02:14  ID:g8UxlMap.net
>309
Gauche
http://ideone.com/Xs0zRe
遅い。。。orz

318
デフォルトの名無しさん[sage]   投稿日:2015/01/19 14:08:59  ID:EfkrzyqH.net
>274 Squeak Smalltalk
| conways |
conways := Generator on: [:g |
 | n |
 g yield: (n := 3).
 1 to: Float infinity do: [:m |
  g yield: (n := (String streamContents: [:ss |
   (n asString as: RunArray) runsAndValuesDo: [:run :val |
    ss nextPut: run asHexDigit; nextPut: val]
   ]
  ) asInteger)
 ]
].
(conways next: 10) asArray

"=> #(3 13 1113 3113 132113 1113122113 311311222113
13211321322113 1113122113121113222113 31131122211311123113322113) "

319
デフォルトの名無しさん[sage]   投稿日:2015/01/19 23:24:26  ID:oesf+0Hj.net(2)
お題:
アラビア数字を受け取り、漢数字を文字列として返すプログラムを書いてください。
例えば f(12345) -> "一万二千三百四十五"
コメント2件

320
デフォルトの名無しさん[sage]   投稿日:2015/01/19 23:51:22  ID:D2xZQOIV.net
それ前に見た...

321
デフォルトの名無しさん[sage]   投稿日:2015/01/19 23:58:24  ID:oesf+0Hj.net(2)
あ、そう。じゃ、取り下げ。
コメント1件

322
デフォルトの名無しさん[sage]   投稿日:2015/01/20 05:20:41  ID:Atw8QFop.net(2)
>321
な、何だって!
せっかく無量大数まで出すように作ったのに。
でもプログラムの出来悪いから。。。
ま、良いかw
コメント2件

323
デフォルトの名無しさん[sage]   投稿日:2015/01/20 08:34:47  ID:GpEarXfw.net
>322
いや〜、たいへん申し訳ない。

324
デフォルトの名無しさん[sage]   投稿日:2015/01/20 09:30:02  ID:h5kDH6MV.net(2)
まあ、俺のそそり立つチンコでも眺めて楽しんでくれ

325
デフォルトの名無しさん[sage]   投稿日:2015/01/20 11:09:40  ID:/4+Xyhri.net
>322
晒してもいいのよ。
コメント1件

326
デフォルトの名無しさん[sage]   投稿日:2015/01/20 22:47:56  ID:h5kDH6MV.net(2)

327
デフォルトの名無しさん[sage]   投稿日:2015/01/20 23:24:13  ID:Atw8QFop.net(2)
>319
>325
へへへ、そんなに見たいなら見せてやる
ガパッ!!!
Gauche
http://ideone.com/AyhZiU

328
デフォルトの名無しさん[sage]   投稿日:2015/01/20 23:25:24  ID:XwfXlsJa.net
お題;
1729はラマヌジャンのタクシーナンバーとして知られています。
自然数の立方和として2通りに表される数の最小のものです。
12^3+1^3=10^3+9^3=1729

では、2番目に小さい同様の数を求めるプログラムを書いてください。
コメント5件

329
デフォルトの名無しさん[sage]   投稿日:2015/01/21 00:44:44  ID:jU9FxBDL.net(2)
適当に書いたら4104だったわ

330
デフォルトの名無しさん[sage]   投稿日:2015/01/21 01:37:17  ID:jhd+CR/o.net
>328
Gauche
(use util.combinations)
(use util.match)

(define (taxi)
(combinations-for-each
(cut permutations-for-each
(match-lambda ((a b c d)
(when (eq? (+ (expt a 3) (expt b 3)) (+ (expt c 3) (expt d 3)))
(format #t "~d^3 + ~d^3 = ~d^3 + ~d^3 = ~d\n" a b c d (+ (expt a 3) (expt b 3))))))
<>)
(iota 50 1) 4))

(taxi)

2^3 + 16^3 = 9^3 + 15^3 = 4104

331
デフォルトの名無しさん[sage]   投稿日:2015/01/21 08:47:31  ID:7RGlVA/V.net(2)

332
デフォルトの名無しさん[sage]   投稿日:2015/01/21 12:13:47  ID:ij8A/lkc.net(2)
>309 Scheme
(define *pr* (primes 10))
;;;sからeまでの自然数を調べ該当する最初の数を得る
(define foo
? (lambda (s e)
(cond
((> s e) #f)
((= s (f s)) s)
(else (foo (1+ s) e)))))

;;; f(x)=p1^d1 * p2^d2 * p3^d3 ....* pn^dn を求める
(define f
? (lambda (n)
(f-help n (int (floor (log n 10))) 1 *pr* ?#f (lambda (x) x))))

(define f-help
? (lambda (n e cnt pr dn col)
(cond
((< n 1) (col 1))
(else
?(set! dn (quotient n (expt 10 e)))
?(f-help
? (- n (* dn (expt 10 e))) (1- e) (1+ cnt) (cdr pr) #f
? (lambda (x) (col (* (expt (car pr) dn) x))))))))

;;;適用例 ;処理に時間がかかる
(foo 80000000 999999999)
81312000
コメント1件

333
デフォルトの名無しさん[sage]   投稿日:2015/01/21 12:15:11  ID:ij8A/lkc.net(2)
>332
空白が文字化けしている

334
デフォルトの名無しさん[sage]   投稿日:2015/01/21 17:11:44  ID:qdz7RRGm.net(2)

335
デフォルトの名無しさん[sage]   投稿日:2015/01/21 17:41:12  ID:jU9FxBDL.net(2)

336
デフォルトの名無しさん[sage]   投稿日:2015/01/21 17:45:11  ID:7RGlVA/V.net(2)
308の出題者でございます。
Meertens数については素朴に書いたものではきついようです。
自前の処理系はダウンです。
0(ゼロ)が各桁にある場合にはゲーデル数には影響しません。
そのあたりをうまく利用して探索範囲を狭めたいと検討中です。
Haskellによる関数プログラミングの本に参考例があるようです。
コメント1件

337
デフォルトの名無しさん[sage]   投稿日:2015/01/21 18:40:39  ID:qdz7RRGm.net(2)
>335
ムツカシイネ。

338
デフォルトの名無しさん[sage]   投稿日:2015/01/22 00:56:58  ID:qDOPECs7.net
>336
例えば 1020300000 見たいな数字を
10203にして計算するような単純なやり方だと
末尾のゼロを取る処理分逆に遅くなるね。
それより冪乗のメモ化で少し早くなる。
コメント3件

339
デフォルトの名無しさん[sage]   投稿日:2015/01/22 06:54:59  ID:2kZH7b8K.net

340
デフォルトの名無しさん[sage]   投稿日:2015/01/22 08:30:12  ID:fuAzJ/zr.net(3)
>338
Haskell本をちょろっと見たのですが、各桁の数を選択する際に
枝刈りをして無駄な探索を避けているような印象です。
それと末尾の0の数は2と5の指数の小さい方なのが使えないかなぁと。

341
デフォルトの名無しさん[sage]   投稿日:2015/01/22 08:37:07  ID:fuAzJ/zr.net(3)
285の出題者でございます。
間に整数や0(ゼロ)がある場合は自明解になります。
そうでない場合には連分数にして比較、効率よく見つけるという方法を
想定していました。ほかにもうまい方法があるかもしれません。
コメント1件

342
デフォルトの名無しさん[sage]   投稿日:2015/01/22 08:48:48  ID:fuAzJ/zr.net(3)
>338
後知恵ですが81312を含む5ケタだけ調べればとりあえずは
見つかるので自前の処理系でもなんとかいけました。
一番よさそうなのは上位桁から調べつつ、調べても無駄な下位の解の
探索を回避する方法ではないかと考えています。

343
デフォルトの名無しさん[sage]   投稿日:2015/01/22 13:45:33  ID:6CVWqQMK.net
>341
>338さんのアイデアでとりあえず10倍ほど早くなったのてますが、まだ、論外の遅さ
勉強中
100万個単位なら良しですが
1000万個の計算が遅すぎる段階
ご示唆を検討しつつ高速化を図ってみます
コメント1件

344
デフォルトの名無しさん[sage]   投稿日:2015/01/22 13:48:14  ID:VatMjg6z.net
>343
アンカーミス
>309さんの問題へのレス

345
デフォルトの名無しさん[sage]   投稿日:2015/01/22 17:21:38  ID:/MwO3ZN1.net

346
デフォルトの名無しさん[sage]   投稿日:2015/01/22 21:48:42  ID:GmO7d68t.net

347
デフォルトの名無しさん[]   投稿日:2015/01/23 04:40:58  ID:zM33mrEj.net
 
お世話になります。
私、責任者の加茂と申します。以後、宜しくお願い致します。
http://www.apamanshop.com/membersite/27009206/images/kamo.jpg
浪速建設様の見解と致しましては、メールによる対応に関しましては
受付しないということで、当初より返信を行っていないようで、今後につい
てもメールや書面での対応は致しかねるというお答えでした。
http://www.o-naniwa.com/index.html 事務員 東条 南野
http://www.o-naniwa.com/company/ 岡田常路
このように現在まで6通のメールを送られたとのことですが、結果一度も
返信がないとう状況になっています。
http://www.apamanshop-hd.co.jp/ 加茂正樹 舟橋大介
http://s-at-e.net/scurl/nibn-apaman.html 大村浩次
私どものほうでも現在までのメール履歴は随時削除を致しております
ので実際に11通のメールを頂戴しているか不明なところであります。
  
 ・ハンガー・ゲーム   http://s-at-e.net/scurl/TheHungerGames-Aircraft.html
 ・スタートレック     http://s-at-e.net/scurl/StarTrek-Aircraft.html
 ・アバター        http://s-at-e.net/scurl/Avatar-Shuttle.html
 
 ・アバター       http://s-at-e.net/scurl/Avatar-Dragon.html
 ・トランスフォーマー http://s-at-e.net/scurl/Transformers-Flyingboat.html
 ・Star Citizen     http://s-at-e.net/scurl/StarCitizen-Starfarer.html
 
 ・T   http://s-at-e.net/scurl/ia-T.html
 ・Zle  http://s-at-e.net/scurl/ia-Zle.html
 
大阪府八尾市上之島町南 4-11 クリスタル通り2番館203
に入居の引きこもりニートから長期にわたる執拗な嫌がらせを受けています。
この入居者かその家族、親類などについてご存知の方はお知らせ下さい。
hnps203@gmail.com
コメント1件

348
デフォルトの名無しさん[sage]   投稿日:2015/01/23 04:48:08  ID:F+B+etzd.net
>347
しね精神病
コメント1件

349
デフォルトの名無しさん[sage]   投稿日:2015/01/23 05:33:10  ID:RelCKqww.net
失敗お題
失敗の原因:問題になっていない

お題
アナログ時計において00:00:00〜11:59:59の間で長針・短針・秒針が重なる時刻を全て挙げよ
長針・短針・秒針は止まることなく常に連続して動いているものとする

答え
http://ideone.com/YmBcmi
コメント1件

350
デフォルトの名無しさん[sage]   投稿日:2015/01/23 18:45:26  ID:emDRVGKQ.net
>348
extern は要らない子っ!

351
デフォルトの名無しさん[sage]   投稿日:2015/01/23 19:33:05  ID:PBlTuNvK.net
お題:
実行から3分経過を通知するタイマーが必要
条件は
・そのためにソフト(バイナリ)をインストールしたりしない
・アラームは音がベスト
・できれば普通のXPのパソコンで動作する
コメント1件

352
デフォルトの名無しさん[sage]   投稿日:2015/01/23 19:41:55  ID:Ust2YlLf.net(6)
お題:
自然数について各桁の数の和でその数を割り切れるならばその数はNiven数
というそうです。例えば81は各桁の数の和は8+1=9であり81=9*9ですからNiven数です。
では、可能な限り大きなNiven数を求めるプログラムを書いてください。
コメント1件

353
デフォルトの名無しさん[sage]   投稿日:2015/01/23 19:43:16  ID:uMcR+6pK.net(2)
>351
timeout.exe

354
デフォルトの名無しさん[sage]   投稿日:2015/01/23 19:47:48  ID:ETPG6twN.net
>349
cos(x)=cos(12x)=cos(43200x)
を満たすxを探すんだろうけど
ちゃんと計算してないけど00:00:00以外ないよな。。。。
コメント1件

355
デフォルトの名無しさん[sage]   投稿日:2015/01/23 19:50:39  ID:Ust2YlLf.net(6)
なんか処理系のbignumの耐久テストみたいでつまんなかったかな。(反省)
コメント1件

356
デフォルトの名無しさん[sage]   投稿日:2015/01/23 19:56:08  ID:Ust2YlLf.net(6)
>354
cos(x)=x のような不動点を求めるものでは?
でもこれは簡単でつまらないので、log(x)=xの方が面白いかも。

357
デフォルトの名無しさん[sage]   投稿日:2015/01/23 19:58:01  ID:uMcR+6pK.net(2)
>352
#include <stdio.h>
#include <limits.h>
typedef unsigned long int uli;

int main(){
for (uli i = ULONG_MAX; i; --i){
uli r = 0;
uli w = i;
while (w){
r += w % 10;
w /= 10;
}
if (i % r == {
printf("%lu¥n", i);
return 0;
}
}
return 0;
}

// 実行結果
// 18446744073709551534

358
デフォルトの名無しさん[sage]   投稿日:2015/01/23 19:59:38  ID:8F2iKi5Y.net(2)
>355
任意の自然数の後ろに0をたくさん並べるだけでよさそうではありませんか?
コメント1件

359
デフォルトの名無しさん[sage]   投稿日:2015/01/23 20:15:23  ID:gEU4m23k.net
https://ja.wikipedia.org/wiki/%E3%83%8F%E3%83%BC%E3%82%B7%E3%83%A3%E3%...
> 間に0が連続して続く数を使って無数にハーシャッド数を作ることができる。例えば21を使うと、21,201,2001,20001 などは全てハーシャッド数になる。

まあ100000000000000000000000000000000・・・なら任意の位置で終われて楽だろうけど

360
デフォルトの名無しさん[sage]   投稿日:2015/01/23 20:16:38  ID:Ust2YlLf.net(6)
>358
1の後に0をたくさん並べたらいくらでも作れるね。これは失敗。
取り下げてください。

361
デフォルトの名無しさん[sage]   投稿日:2015/01/23 20:36:26  ID:Ust2YlLf.net(6)
お題:
アメリカではマックナゲットを小6個、中9個、大20個の
パックで販売されていたそうです。この注文の組み合わせで
購入できるナゲットの数をマックナゲット数ということにします。
例えば44はマックナゲット数です。なぜなら44=6+2*9+20だからです。
では、マックナゲット数ではない最大数を求めるプログラムを書いてください。
コメント2件

362
デフォルトの名無しさん[sage]   投稿日:2015/01/23 20:37:14  ID:Ust2YlLf.net(6)
こんどはだいじょうでしょう。

363
デフォルトの名無しさん[sage]   投稿日:2015/01/23 20:50:53  ID:8F2iKi5Y.net(2)
いや駄目でしょ
素数とかだと

364
デフォルトの名無しさん[sage]   投稿日:2015/01/23 21:28:49  ID:R6X4Juva.net
>361 Perl
http://ideone.com/fezfLw

こういうのでいいのかいな。
コメント1件

365
デフォルトの名無しさん[sage]   投稿日:2015/01/23 21:30:09  ID:tSARhC69.net
プログラムにするまでもないという

366
デフォルトの名無しさん[sage]   投稿日:2015/01/23 22:00:57  ID:v30BfBZP.net
出題者はここにお題を書く前に自分で解いてみたりしないのか?

367
デフォルトの名無しさん[sage]   投稿日:2015/01/23 22:47:35  ID:NB6mp9Bh.net
いいかげんなやついるな
問題になっていない問題をただの思いつきで出している奴
しねよカス
コメント1件

368
デフォルトの名無しさん[sage]   投稿日:2015/01/24 02:09:16  ID:7GYThAmo.net(4)
>367
一応、専門書をあたってはいるのだよ。
6,9,20の最大公約数以上では解はないという定理があることは調べた上で出題している。
Niven数はほんとはその個数のN(x)について考えると面白いことがあるのだけど
あまりにも数学的すぎて馴染まないので変えたら失敗したんだ。

369
デフォルトの名無しさん[sage]   投稿日:2015/01/24 02:12:26  ID:7GYThAmo.net(4)
最近の出題ネタがあまりにも低レベルだったので頭をひねってみたが、もう終わり。
後は誰かよろしく。
コメント1件


370
デフォルトの名無しさん[sage]   投稿日:2015/01/24 02:38:34  ID:macVReAj.net
6,9,20の最大公約数ってーと1かな?

371
デフォルトの名無しさん[sage]   投稿日:2015/01/24 02:39:40  ID:7GYThAmo.net(4)
間違えたよ。最大公倍数だ。

372
デフォルトの名無しさん[sage]   投稿日:2015/01/24 02:40:46  ID:7GYThAmo.net(4)
さらに間違えた。最小公倍数だ。

373
デフォルトの名無しさん[sage]   投稿日:2015/01/24 04:46:00  ID:4DXDFyDt.net
簡単なお題でも私としてはウェルカム。
そうです簡単なお題しか解けないからです。

374
デフォルトの名無しさん[sage]   投稿日:2015/01/24 15:05:30  ID:QRHwUf1W.net
>369
そういうの好きなら
https://projecteuler.net/
でもあさったら?

375
デフォルトの名無しさん[sage]   投稿日:2015/01/24 15:22:59  ID:JqXxaDsh.net
っていうか、いちいち出題者を煽ってモティベーションを奪う馬鹿がいるけど
相手にしないでいいと思うよ。

376
デフォルトの名無しさん[sage]   投稿日:2015/01/24 15:34:20  ID:WCZAZ8R9.net
質の悪い似非問題だされるよりはシーンとしている方がマシ

377
デフォルトの名無しさん[sage]   投稿日:2015/01/24 17:00:21  ID:Zm1Jjf6/.net(3)
>364
その通りです。44〜49が非マックナゲット数であることがわかりば、
43より大きい数のすべてはマックナゲット数であることはコンピューターに
計算させなくてもわかります。6を足せば良いからです。
ディオファントス解析、フロベニウス数と関連するようです。

378
デフォルトの名無しさん[sage]   投稿日:2015/01/24 17:02:40  ID:Zm1Jjf6/.net(3)
さあ、これでおしまい。
こんどはみなさんのお題を楽しませてもらいましょう。

379
デフォルトの名無しさん[sage]   投稿日:2015/01/24 17:05:55  ID:Zm1Jjf6/.net(3)
おっとっと訂正、
44〜49が非マックナゲット数であることがわかりば ×
44〜49がマックナゲット数であることがわかれば ○

380
デフォルトの名無しさん[sage]   投稿日:2015/01/24 23:21:00  ID:IKI29R5M.net
お題
ある自然数nに対して、f(n)を
正のnの倍数で、下9桁が123,456,789になるものが存在すれば、その中で最小のものを
存在しなければ0を
それぞれ返す関数とする
例えばf(123) = 84123456789, f(125) = 0
10^9未満の自然数nに対して、f(n)の最大値はいくつになるか

ちなみに答えは2^60未満です
コメント1件

381
デフォルトの名無しさん[]   投稿日:2015/01/24 23:23:58  ID:bKHMmMiq.net
つまらん

382
デフォルトの名無しさん[sage]   投稿日:2015/01/24 23:51:51  ID:F47SjnxP.net
面白い問題を解きたいならなんでこんなスレに居るの?

383
デフォルトの名無しさん[sage]   投稿日:2015/01/25 05:57:41  ID:ITyso3aB.net
おもしろ問題があるかもって期待でな

384
デフォルトの名無しさん[sage]   投稿日:2015/01/25 07:42:47  ID:TpaFIK4z.net
あのなー、東大入試の数学の問題なんか、
講師連中が1年考えて、
古代ギリシアのパズルと同じ問題を出題している

3つの交わらない円のすべてに、接する円は幾つあるか?
円周率が3.05以上であることを、図で証明せよ

問題を考えるのは、それだけ難しい。
それは数学・情報オリンピックでも同じ。
秋山、ピーター・フランクルも苦労している

作問のプロでも、作問のアイデアが欲しくて、
毎日このスレを見ているぐらいなんだぞ!

魔方陣、虫食い算などで問題を作れないか?
コメント2件

385
デフォルトの名無しさん[sage]   投稿日:2015/01/25 09:18:47  ID:sjrxvez3.net

386
デフォルトの名無しさん[sage]   投稿日:2015/01/25 09:22:43  ID:jonHqlx4.net
じゃあ、辺が4の魔法陣の任意の場所を入れ替えて3種類の魔方陣を作るとする
最小の入れ替え数はいくつか?
回転と線対称とその組み合わせは除く
斜めの線対称は考えなくて良い

387
デフォルトの名無しさん[sage]   投稿日:2015/01/25 13:43:51  ID:p4bIFHjp.net
>384
C/C++の良問題鑑賞スレ
だね‥ここは宿題スレからの発展場、算額や公案を考える者の集うスレ
おっとその前に年越し問題を解かなくては‥

388
デフォルトの名無しさん[sage]   投稿日:2015/01/25 18:15:10  ID:8TvBNMZ1.net
>384
作問オリンピックを開催すればいいんじゃね?

389
デフォルトの名無しさん[sage]   投稿日:2015/01/26 23:04:58  ID:Kv2lHoc0.net
空マス=0,白=1,黒=2として表す8文字8行からなるオセロの盤面データが与えられる
このとき最後に置かれた可能性がある駒を色ごとにそれぞれリストアップする
例外として初期配置の場合は初期配置と表示する

例:
00000000
00000000
00020000
00022000
00111000
00000000
00000000
00000000

白:c5 黒:なし
コメント4件

390
デフォルトの名無しさん[sage]   投稿日:2015/01/27 03:03:43  ID:4hduaAxZ.net(2)
>389
1手目からきちんとルールにのっとって進めていった局面で最後に置かれた可能性があるマス?
それとも最後の一手以外は適当に設置したとしてOK?(最初から進めた場合どうやってもその形にならない盤面とか

俺には後者ならできるかもしれんが前者は序盤以外だったら無理w

391
デフォルトの名無しさん[sage]   投稿日:2015/01/27 03:10:39  ID:kuGEzfaQ.net
1戦の計算量が2^60くらいなので、網羅は大変。

392
デフォルトの名無しさん[sage]   投稿日:2015/01/27 05:30:42  ID:SaWHtS9U.net(2)
>389
取りあえず盤面上のコマの数で最後に打ったのが黒か白か解る。
後はゲーム木たどって行くしかないかな?

393
デフォルトの名無しさん[sage]   投稿日:2015/01/27 05:46:49  ID:4hduaAxZ.net(2)
パスが入った場合を忘れているよ

394
デフォルトの名無しさん[sage]   投稿日:2015/01/27 08:38:33  ID:SaWHtS9U.net(2)
ああ、そういえばパスって有ったな。。。

395
デフォルトの名無しさん[sage]   投稿日:2015/01/27 10:14:45  ID:mZ6XpjU/.net
出題者自ら解いてそのコードさらす準備が終わってから出題してくれ。(全列挙系は特に)

396
388[sage]   投稿日:2015/01/27 20:14:20  ID:YSaUU6oA.net
最低限最後の1手だけチェック出来ていればOK
それを超える精度は余裕があればのつもり
コメント1件

397
デフォルトの名無しさん[sage]   投稿日:2015/01/27 20:53:38  ID:GDvEOGFI.net
初期状態から到達できなくてもいいってことか?

398
デフォルトの名無しさん[sage]   投稿日:2015/01/27 21:55:57  ID:/7J2D32J.net
>396
>最低限最後の1手だけチェック出来ていればOK

3つ以上並んだところは殆どの気がする。

399
デフォルトの名無しさん[sage]   投稿日:2015/01/28 00:20:29  ID:kJv0J0VS.net(2)
市松模様の状態だとしたらどれも斜めに3つ以上並んでるけど
縦横を返さずに置く必要があるので不可能とかそれなりに絞れそう

400
デフォルトの名無しさん[sage]   投稿日:2015/01/28 10:09:21  ID:psA0knd+.net
最後の一手だけのチェックなら>389の例だと白にe5も入るよね?


401
デフォルトの名無しさん[sage]   投稿日:2015/01/28 19:10:34  ID:/EklobZY.net(2)
>389
Scheme (線形代数拡張機能を含む)
https://ideone.com/OD13nl

処理系のデバッグのために利用させてもらいました。
時間がなくてテキトー。バグがあるかも。

402
デフォルトの名無しさん[sage]   投稿日:2015/01/28 19:12:43  ID:/EklobZY.net(2)
チェスボード問題なら円環上の準女王問題の方が面白いのでは?

403
401[sage]   投稿日:2015/01/28 20:28:45  ID:+GNvzRaf.net(2)
失礼、訂正
準女王問題の方が 誤
準女王問題の方も 正

404
デフォルトの名無しさん[sage]   投稿日:2015/01/28 20:58:25  ID:kJv0J0VS.net(2)
初期配置は特別扱いすることになってるんだし
その4つは常に候補から外していいんじゃね

405
デフォルトの名無しさん[sage]   投稿日:2015/01/28 21:15:53  ID:UK1aUFc0.net
ドワンゴのコンテストだそうな
http://dwango2015-prelims.contest.atcoder.jp/

406
デフォルトの名無しさん[sage]   投稿日:2015/01/28 21:44:22  ID:+GNvzRaf.net(2)
4つは外しましょう。

407
デフォルトの名無しさん[sage]   投稿日:2015/01/30 10:20:23  ID:4tpD3Nok.net
2つで十分ですよ。

分かって下さいよ。

408
デフォルトの名無しさん[sage]   投稿日:2015/02/01 21:01:41  ID:7JKts4OY.net
100から999までの三桁の整数の範囲内

A=100の位を10の位にし、10の位を1の位にした数字
B=1の位
C=10の位
A/B=B*C=Dが成り立つ整数を全て出力せよ

(例)726
A=72
B=6
C=2
A/B=B*C=12
コメント2件

409
デフォルトの名無しさん[sage]   投稿日:2015/02/01 21:25:25  ID:TjaWybkk.net
>408 Java
http://ideone.com/ZPM6tB

Dはいずこ・・・?

410
デフォルトの名無しさん[sage]   投稿日:2015/02/02 15:30:23  ID:aSIJhXZn.net(2)
>408
Sapphire
https://ideone.com/aYVv8q

処理系のテストに使わせていただきまいした。

411
デフォルトの名無しさん[sage]   投稿日:2015/02/02 16:21:12  ID:aSIJhXZn.net(2)
お題:
ベルヌーイ数は次の漸化式で与えられる。
b(n) = -1/(n+1)*Σ(k=0 to n-1)n+1Ck * b(k)
b(0)=1

ベルヌーイ数を計算するプログラムを書き、b(8)を求めよ。
効率は考えなくてもよい。
やりたい人は漸化式によらない方法、メモ化する方法など
効率を追求せよ。
コメント4件

412
デフォルトの名無しさん[sage]   投稿日:2015/02/02 19:26:11  ID:CLJS9HuA.net(3)
>411 Java
http://ideone.com/DmVnxn

よくわかっていない

413
デフォルトの名無しさん[sage]   投稿日:2015/02/02 19:27:36  ID:BcFq5BbU.net
1〜99999999999999999999999999999999999999999999999999999999999999999999999999999
までの整数が文字列で与えられる
これが素数かどうか判定しろ
コメント6件

414
デフォルトの名無しさん[sage]   投稿日:2015/02/02 19:47:24  ID:BTw9Mjmb.net(4)
>413
リファレンスプリーズ。

415
デフォルトの名無しさん[sage]   投稿日:2015/02/02 19:51:25  ID:WOqQhALa.net
>413
すごくくだらなく思うのは俺がそれの難しさをしらんから?
コメント1件

416
デフォルトの名無しさん[sage]   投稿日:2015/02/02 20:15:22  ID:14DADSH+.net
くだらないのは出題者が山下だからだとおもう

417
デフォルトの名無しさん[sage]   投稿日:2015/02/02 20:26:03  ID:CLJS9HuA.net(3)
>413 Java
http://ideone.com/wRbfFg
手抜きwwwwwwww

418
デフォルトの名無しさん[sage]   投稿日:2015/02/02 21:50:09  ID:ay8SqXsj.net(2)
>415
自己レス
俺にはとても難しいとこがわかった
atomマシンではあるけれど
50001が素数かどうかを調べるのに25秒もかかった

419
デフォルトの名無しさん[sage]   投稿日:2015/02/02 21:54:43  ID:CLJS9HuA.net(3)
50001を3から223まで試し割りするだけで25秒掛かるか?
コメント1件

420
デフォルトの名無しさん[]   投稿日:2015/02/02 21:56:58  ID:v7wWJREm.net(5)
素数判定はネットで手に入る既製ソフトウェアの速いやつを抜かせたら
専門家として通じるくらいに研究されてるだろ。

421
デフォルトの名無しさん[sage]   投稿日:2015/02/02 22:03:06  ID:BTw9Mjmb.net(4)
俺、C++に多倍長精度演算入ったら、素数表つくって売るんだ!(死亡フラグ)
そすうおーぐとか作ってみたいなー。

422
デフォルトの名無しさん[]   投稿日:2015/02/02 22:05:46  ID:v7wWJREm.net(5)
AKS素数判定法 - Wikipedia
与えられた自然数が素数であるかどうかを決定的多項式時間で判定できる、世界初のアルゴリズム。
AKS素数判定法は2002年8月6日に "PRIMES is in P" と題された論文で発表された。
この素数判定法が発見される以前にも、素数の判定方法は多数知られていたが、リーマン予想などの仮説を用いずに、決定的多項式時間で判定できるアルゴリズムは存在しなかった。
素数判定という重要な問題が実際にクラスPに属することを示した点で理論的には大躍進であった。



ミラー-ラビン素数判定法 - Wikipedia
与えられた数が素数かどうかを判定する素数判定アルゴリズムの一種。
フェルマーの素数判定法や Solovay-Strassen 素数判定法と同じく、乱択アルゴリズムの一種。
Gary L. Miller が最初に開発した手法は未だ証明されていない拡張リーマン予想に基づいた決定的アルゴリズムだったが、
マイケル・ラビンはこれを無条件の確率的アルゴリズムに修正した。

423
デフォルトの名無しさん[sage]   投稿日:2015/02/02 22:07:38  ID:ay8SqXsj.net(2)
>419
49999までの素数リストをつくり
その要素のどれかで50001が割り切れるかどうかで判定した

424
デフォルトの名無しさん[sage]   投稿日:2015/02/02 22:10:48  ID:BTw9Mjmb.net(4)
最適化のヒントとして、与えられたNの√Nまでの素数で試し割りすれば必要十分。
さてそれはなんででしょう。

425
デフォルトの名無しさん[sage]   投稿日:2015/02/02 22:14:59  ID:vLsFqgHc.net
>413
ruby -rprime -e 'p $<.read.chop.to_i.prime?'

426
デフォルトの名無しさん[]   投稿日:2015/02/02 22:15:37  ID:v7wWJREm.net(5)
>413は区間すべての素数でなくて、区間の一つだけで良いんだろ。
すべては確実に無理かとおもうが。
何バイト必要か計算してるか。

427
デフォルトの名無しさん[sage]   投稿日:2015/02/02 22:20:09  ID:BTw9Mjmb.net(4)
つまりAKSを実装しろと。

428
デフォルトの名無しさん[]   投稿日:2015/02/02 22:22:39  ID:v7wWJREm.net(5)
一つの数を1ビットで表現したとして、 10^77/(8*1024^4) = 1.164 * 10^64 テラバイト必要。
キロ < メガ < ギガ < テラ。

429
デフォルトの名無しさん[sage]   投稿日:2015/02/02 22:26:48  ID:iVL53l6K.net(2)

430
デフォルトの名無しさん[sage]   投稿日:2015/02/02 22:31:02  ID:iVL53l6K.net(2)
ラビンミラー法ならその桁数でも可能かも。SICPでやったやつ。

431
デフォルトの名無しさん[]   投稿日:2015/02/02 22:33:19  ID:v7wWJREm.net(5)
カカクコムでHDD単価が最安値のに記録すると、
カネが39737339344962200000000000000000000000000000000000000000兆円ほど掛かる計算。
日本の国家予算は100兆円程度。



SEAGATE(シーゲイト) ST3000DM001  3TB \10,486
1Tあたりの価格 \3495
http://kakaku.com/item/K0000313507/

432
靖国参拝、皇族、国旗国歌、神社神道を異常に嫌うカルト[]   投稿日:2015/02/03 00:03:06  ID:DKP7K11t.net
★マインドコントロールの手法★

・沢山の人が偏った意見を一貫して支持する
 偏った意見でも、集団の中でその意見が信じられていれば、自分の考え方は間違っているのか、等と思わせる手法

・不利な質問をさせなくしたり、不利な質問には答えない、スルーする
 誰にも質問や反論をさせないことにより、誰もが皆、疑いなど無いんだと信じ込ませる手法


偏った思想や考え方に染まっていたり、常識が通じない人間は、頭が悪いフリをしているカルト工作員の可能性が高い


10人に一人はカルトか外国人

「ガスライティング」で検索を!
.....

433
デフォルトの名無しさん[sage]   投稿日:2015/02/03 00:05:47  ID:e/znxUiy.net
コピペマン参上!まで読んだ。

434
デフォルトの名無しさん[sage]   投稿日:2015/02/03 02:24:00  ID:CTwZWZQS.net
チンコ立たないから泣きながらコピペします!まで読んだ

435
デフォルトの名無しさん[sage]   投稿日:2015/02/03 03:32:29  ID:7jR7Eeuq.net

436
デフォルトの名無しさん[sage]   投稿日:2015/02/03 08:47:50  ID:N42LlXKz.net(4)
>413
Scheme
https://ideone.com/EECTGu

SICPを読んでいた頃に書いたもの。内容はもうよく覚えていない。

437
デフォルトの名無しさん[sage]   投稿日:2015/02/03 09:01:53  ID:N42LlXKz.net(4)

438
デフォルトの名無しさん[sage]   投稿日:2015/02/03 10:35:41  ID:yu7MxmeT.net
>411 Squeak Smalltalk

| bernoulli |
bernoulli := nil.
bernoulli := [:n |
 n = 0 ifTrue: [1] ifFalse: [
  -1/(n+1) * ((0 to: n-1)
   inject: 0
   into: [:sum :k | sum + ((n+1 take: k) * (bernoulli value: k))])
 ]
].

bernoulli value: 8 "=> (-1/30) "

439
デフォルトの名無しさん[sage]   投稿日:2015/02/03 12:36:59  ID:N42LlXKz.net(4)
お題:
以下の関係記述からSandyが好きな人、ものを調べるプログラムを書き、
Sandyが好きな人、ものを全部列挙せよ。

Kim likes Robin.
Sandy likes Kim.
Robin likes cats.
Sandy likes people(or animal) who likes cats.
Kim likes people who like Lee and Kim.
Sandy likes Lee.
People(or animal) like myself.
コメント3件

440
デフォルトの名無しさん[sage]   投稿日:2015/02/03 13:52:37  ID:RogaT2hh.net

441
デフォルトの名無しさん[sage]   投稿日:2015/02/03 17:07:00  ID:N42LlXKz.net(4)
>439
Prolog (S式タイプ)
https://ideone.com/nbiXo9
答え確認にどうぞ

442
デフォルトの名無しさん[sage]   投稿日:2015/02/03 19:33:20  ID:Y3wAR2qt.net
>439 GNU Smalltalk

| Kim Robin Sandy Lee cats |
Likes members: {
 Kim := People named: #Kim.
 Robin := People named: #Robin.
 Sandy := People named: #Sandy.
 Lee := People named: #Lee.
 cats := Animals named: #cats
}.

Kim likes: Robin.
Sandy likes: Kim.
Robin likes: cats.
Sandy likes: [:who |
 ((who isKindOf: People) or: [who isKindOf: Animals]) and: [who definitelyLikes: cats]].
Kim likes: [:who |
 (who isKindOf: People) and: [who definitelyLikes: {Lee. Kim}]].
Sandy likes: Lee.
Likes members do: [:who |
 ((who isKindOf: People) or: [who isKindOf: Animals]) ifTrue: [who likes: who]].

Likes members asArray collect: [:each | (each -> each allOneLikes) printNl]

"=>
 Robin->(cats Robin )
 cats->(cats )
 Kim->(Robin Sandy Kim )
 Sandy->(Kim Robin cats Lee Sandy )
 Lee->(Lee )
"
http://ideone.com/9Fxawa

443
デフォルトの名無しさん[sage]   投稿日:2015/02/04 11:35:57  ID:S45dflU0.net
深さ優先探索を使う問題を作ってください
おねがいします
コメント3件

444
デフォルトの名無しさん[]   投稿日:2015/02/04 11:39:31  ID:3h7Zr70+.net
>443
激問で

445
デフォルトの名無しさん[sage]   投稿日:2015/02/04 14:27:29  ID:UjEKY513.net
>443
お題
壁(#)によっていくつの部屋に分断されているか求めるアルゴリズム
(斜めにすり抜けられる空間も一続きとみなす)


##..##
#.###.
###.#.
...###
3rooms
コメント6件

446
デフォルトの名無しさん[sage]   投稿日:2015/02/04 18:38:35  ID:disGJSlY.net

447
デフォルトの名無しさん[sage]   投稿日:2015/02/04 19:15:23  ID:8Sw6mo5N.net
>445
やばいむずかしすぎ
深さ優先探索でかけと言われてもまずこういう問題はどうかんがえていいのかすらわりません
コメント1件

448
デフォルトの名無しさん[sage]   投稿日:2015/02/04 19:37:27  ID:+U2BPPPk.net
>447
集合論と人工知能を勉強しなよ

449
デフォルトの名無しさん[sage]   投稿日:2015/02/04 23:46:42  ID:kCAyOTFX.net
ぱっと見て3部屋だから3って出力するプログラムを書けばええんやで。これでだいたいやっていける


450
デフォルトの名無しさん[sage]   投稿日:2015/02/05 01:30:15  ID:FdXvVIq+.net(2)
穴だらけやがな。

451
デフォルトの名無しさん[]   投稿日:2015/02/05 03:09:39  ID:7CYOAfIQ.net
>443

FutureSoftware開発日誌 Ver2.0 ≫ DevQuizのソースコード(スライドパズル編)
http://blog.futuresoftware.jp/?p=56

452
デフォルトの名無しさん[sage]   投稿日:2015/02/05 08:47:10  ID:Xpo5ppTK.net
>445
良問! 今、解いてる。2値画像の走査みたいなものかな。

453
デフォルトの名無しさん[sage]   投稿日:2015/02/05 10:26:36  ID:FdXvVIq+.net(2)
http://ideone.com/WGvvlW
C++。深さ優先探査じゃない方法で解けたような気がする。再起つかわなかったなぁ。
重複の検出がちょっと重い。メモリ馬鹿食い。
うーん。あんまりいい出来ではない。速度重視というわけでもないし。

454
デフォルトの名無しさん[sage]   投稿日:2015/02/05 11:41:46  ID:9+9QJS59.net(2)
>445ってアルゴリズムとかいう以前のごく単純な問題のように
思っちゃったんだけど違うの?

(1) マップの左上からCRTの走査線状にマスを調べる

(2) そのマスが壁でなく、かつそのマスの左、左上、上、右上がすべて壁なら
  部屋のカウントを+1

これだけのことじゃないの?
コメント1件

455
デフォルトの名無しさん[sage]   投稿日:2015/02/05 11:52:03  ID:6SXQZym/.net
>454
#####
#.#.#
##.##
#####
それこういう形が2部屋に判定されないか?
コメント1件

456
デフォルトの名無しさん[sage]   投稿日:2015/02/05 11:54:12  ID:9+9QJS59.net(2)
>455
なるほどw
思慮が浅かったありがとう

457
デフォルトの名無しさん[sage]   投稿日:2015/02/05 14:32:10  ID:/VVSvCN5.net(2)

458
デフォルトの名無しさん[sage]   投稿日:2015/02/05 17:29:19  ID:/VVSvCN5.net(2)
2値画像のラベリングの問題だよね。昔、Winston本で読んだことがあるよ。

459
デフォルトの名無しさん[sage]   投稿日:2015/02/05 20:31:02  ID:yEh0kGG/.net
>445 F#

let points (x, y) = seq { for x in [x-1; x; x+1] do for y in [y-1; y; y+1] -> x, y }
let spaces map p = points p |> Seq.filter(fun p -> Set.contains p map)
let findRoom map p = Seq.tryFind (Set.intersect (Set(spaces map p)) >> Seq.isEmpty >> not)

let lookup map rooms p =
 match findRoom map p rooms with
 | None -> Set.add (Set [p]) rooms
 | Some room -> Set.remove room rooms |> Set.add (Set.add p room)

let charsi data =
 (data+"").Split '\n'
 |> Seq.mapi(fun y -> Seq.mapi(fun x c -> (x,y),c))
 |> Seq.collect id

let makeMap = charsi >> Seq.choose(function p, '.' -> Some p | _ -> None) >> Set.ofSeq

let printCount data =
 let map = makeMap data
 Seq.fold (lookup map) Set.empty map
 |> Set.count
 |> printfn "%s\n%d rooms" data
 
printCount "#####
#.#.#
##.##
#####"

460
デフォルトの名無しさん[sage]   投稿日:2015/02/06 03:34:26  ID:3SQvVc9i.net

461
デフォルトの名無しさん[sage]   投稿日:2015/02/10 05:15:05  ID:aHCuz8yF.net(13)
お題:あの悪名高いLZW実装してみましょう。

リファレンス
http://ideone.com/cF0kDA
有ってるか知らんけど下のペーじ参照して実装してみた。
独自解釈が入っているので作法は知らん。
デバッグはあんまりやってない。

参考リンク。
http://kano.arkoak.com/2014/07/lzw/

おひとついかが?
コメント5件

462
デフォルトの名無しさん[sage]   投稿日:2015/02/10 05:47:47  ID:Ae/h3GWY.net(2)
ものすごくシンプルなアルゴリズムなんだな
びっくりした

463
デフォルトの名無しさん[sage]   投稿日:2015/02/10 06:32:51  ID:aHCuz8yF.net(13)
シュリンクしながら書いてたから、時間は結構かかってるんだぜ。
頭のいい人の考えることは基本シンプルだけどだから難しい。

464
デフォルトの名無しさん[sage]   投稿日:2015/02/10 16:37:06  ID:aHCuz8yF.net(13)
反応悪いなー。おもしろくなかったかにゃ?
>461のコードあってるかもよくわからんので盲信しないでくれ。

465
デフォルトの名無しさん[sage]   投稿日:2015/02/10 18:33:46  ID:Ae/h3GWY.net(2)
>461 Common Lisp
http://ideone.com/yQhpY6
伸張アルゴリズムは自分で考えて書いてみたけど楽しかった
実用性は無視

466
デフォルトの名無しさん[sage]   投稿日:2015/02/10 18:35:12  ID:vmUJGgdk.net
>461
C++読めないから勘違いかもしれないが、
エンコードの結果に辞書を含めてはいけなくて、
デコードも辞書無しでやるんじゃないの
コメント1件

467
デフォルトの名無しさん[sage]   投稿日:2015/02/10 18:50:36  ID:aHCuz8yF.net(13)
>466
え?マジで?辞書破棄するの?
えぇええええええええええ。え?
初耳ですわ。盲信して実装したんで何が何だかさっぱり。
ちょ、サンプルプリーズ。

えええええええええええーーーーーーーーーーーーーーーーーーー。

468
デフォルトの名無しさん[sage]   投稿日:2015/02/10 19:01:34  ID:aHCuz8yF.net(13)
げげ。間違ってたか。>461のリファレンスは取り下げで。Orz

469
デフォルトの名無しさん[sage]   投稿日:2015/02/10 19:20:37  ID:aHCuz8yF.net(13)
辞書をクラウドで生成する方法がよくわからん。。。Orz=3
俺はもうだめだー!!むー。
コメント1件

470
デフォルトの名無しさん[sage]   投稿日:2015/02/10 20:35:06  ID:2nvcEMv/.net
お題:
1からnまでの自然数の値を記したカードがS枚ずつある。
このs*n枚のカードを1列に並べ、各k(1<=k<=n)に対して
、値kの相隣るカードの中間に必ずk枚ずつ他のカードがある
ようにする。s,nを与えられその解を計算するプログラムを書け。
例えばs=2、n=3の解としては
2,3,1,2,1,3がある。2と2の間に2つカードがあり、3と3の間に3枚の
カードがあり、1と1の間に1枚のカードがある。
コメント1件

471
デフォルトの名無しさん[sage]   投稿日:2015/02/10 21:26:15  ID:aHCuz8yF.net(13)
数列作ってパーミテーショングルグルすればいいけど、重すぎるな。
結構大変そう。

472
デフォルトの名無しさん[sage]   投稿日:2015/02/10 21:48:28  ID:n5o/EWol.net(2)
>469
decompress(chars, indexes) という関数の中で辞書は
m = sizeof(chars) とすると
dict[n]
= chars[n] // n < m の場合
= dict[indexes[n-m]] + dict[indexes[n-m+1]][0] // n >= m の場合
というような定義になる。
もちろん再帰的な定義になってるから順序を気をつけないといけない。
コメント1件

473
デフォルトの名無しさん[sage]   投稿日:2015/02/10 22:17:31  ID:n5o/EWol.net(2)

474
デフォルトの名無しさん[sage]   投稿日:2015/02/10 22:36:00  ID:aHCuz8yF.net(13)
>470
http://ideone.com/8yRkdv
C++。サンプルが少なくてあってるかよくわからん。一回やらかしてるので注意してくだせー。
コメント1件

475
デフォルトの名無しさん[sage]   投稿日:2015/02/10 22:43:22  ID:aHCuz8yF.net(13)
>472
解説ありがとう。
やっぱ再帰性を担保に構築しないとダメですよね。
頭が悪いとこういう時ツライ。Orz
うーん。なんかできそうなきがする。むー。
コメント1件

476
デフォルトの名無しさん[sage]   投稿日:2015/02/10 22:46:47  ID:aHCuz8yF.net(13)
速度稼ぐためにMAP使ったけどダメなのか。Vecterでやらないと。
重たいなー。ソートされてないから2分探査も使えないし。
分不相応だったか。

477
デフォルトの名無しさん[sage]   投稿日:2015/02/10 22:49:11  ID:cHYpWE0N.net
再帰性を担保?
なにそれ?

タンポンの再使用はやめましょう
タンポポの花で耳かきするのはやめましょう
湯たんぽはタオルで包んで使いましょう
ダリホー!イスラム国の兵隊さんみっけ、撃っちゃうぞぉ

478
デフォルトの名無しさん[sage]   投稿日:2015/02/10 23:07:40  ID:gtqcUBDl.net
>475
再帰的って言っても単にループでいけるで

479
デフォルトの名無しさん[sage]   投稿日:2015/02/10 23:12:18  ID:aHCuz8yF.net(13)
頭のなか最適化しなきゃ(使命感
うーん。

480
デフォルトの名無しさん[sage]   投稿日:2015/02/10 23:13:48  ID:F4EjuKl7.net(3)
再帰的とは言っても再帰性とは言わないし、
再現性を担保っていう言い方があるようにも思えない。

481
デフォルトの名無しさん[sage]   投稿日:2015/02/10 23:16:48  ID:aHCuz8yF.net(13)
これぞ型破り。とかお茶を濁す。

482
デフォルトの名無しさん[sage]   投稿日:2015/02/10 23:27:41  ID:fRDEvoke.net
よくわかっていないことを適当に表現してわかっているつもりになる癖がついてるかな?

イメージあれども概念なし

じゃあかんよ

483
デフォルトの名無しさん[sage]   投稿日:2015/02/10 23:30:55  ID:aHCuz8yF.net(13)
はい。

484
デフォルトの名無しさん[sage]   投稿日:2015/02/10 23:31:05  ID:+AoXQCtw.net
そんな説教せんでも

485
デフォルトの名無しさん[sage]   投稿日:2015/02/10 23:33:59  ID:F4EjuKl7.net(3)
文系ってそういう連中の群

486
デフォルトの名無しさん[sage]   投稿日:2015/02/10 23:35:37  ID:F4EjuKl7.net(3)
頂点に君臨する池上さんら慶應閥

487
デフォルトの名無しさん[sage]   投稿日:2015/02/11 08:29:05  ID:GrZGa77a.net(3)
>474
出題者です。
この問題はランフォードの問題というものです。1979年の数セミに紹介されました。
すべてのs,nについて解が存在するわけではなく、必要条件として
n=0,-1(mod4)があるそうです。

488
デフォルトの名無しさん[sage]   投稿日:2015/02/11 08:35:45  ID:GrZGa77a.net(3)
訂正
必要条件 s=2のとき、n=0,-1(mod 4)

489
デフォルトの名無しさん[sage]   投稿日:2015/02/11 10:25:54  ID:x6JgCX17.net
Aチケットの価格1500円
Bチケットの価格700円
今日のチケットの売上は462300円
この内,Aチケットの売上は75%, Bチケットの売上は25%である。
Bチケットを購入した人数を求めなさい
コメント2件

490
デフォルトの名無しさん[sage]   投稿日:2015/02/11 12:46:25  ID:Mm+0MgAx.net
解なし
コメント1件

491
デフォルトの名無しさん[sage]   投稿日:2015/02/11 15:05:05  ID:sJPqGjE7.net(3)
>490
売り上げが枚数と金額のどちらを言ってるか、しかも一人一枚限定かどうかを言ってるか
が判然としないと言ってるのか

492
デフォルトの名無しさん[sage]   投稿日:2015/02/11 15:50:14  ID:GrZGa77a.net(3)
1500x+700y=462300 のディオファントス方程式だと
gcd(1500,700)=100 で 100|462300 だから解はあるはずなのだけど。
後の要件がじゃまをしているような。
コメント1件

493
デフォルトの名無しさん[sage]   投稿日:2015/02/11 16:24:42  ID:PYSPfi0Q.net
SPIの問題にも出ているので解けない人はアホです

494
デフォルトの名無しさん[sage]   投稿日:2015/02/11 16:32:13  ID:jFiZ2Wwb.net
ちょいとループさせたら、76%,24%はあった。
アホでいいや。

495
デフォルトの名無しさん[sage]   投稿日:2015/02/11 17:03:42  ID:bo8wnUTr.net
解の有無以前に"プログラミング"のお題ではない

496
デフォルトの名無しさん[sage]   投稿日:2015/02/11 18:00:23  ID:pkcVw/Y+.net
いやお題ではあるけど数字がおかしい

497
デフォルトの名無しさん[sage]   投稿日:2015/02/11 18:08:57  ID:eG3WPcOI.net
出題とは置いといて、算数や数学でもプログラミングは使うのでこれがお題ではないと主張する事自体は間違っている

498
デフォルトの名無しさん[sage]   投稿日:2015/02/11 18:26:49  ID:sJPqGjE7.net(3)
うん、概数しか出ないね

ダメだなこりゃ

499
デフォルトの名無しさん[sage]   投稿日:2015/02/11 18:35:18  ID:O46sppaP.net
>492
間違えた。非負整数だから関係なかった。
でも、75%ってのはわからんなぁ。

500
デフォルトの名無しさん[sage]   投稿日:2015/02/11 18:47:28  ID:FK0tEpRi.net(4)
連立方程式で解けそうだけど、頭悪いからわからない。

501
デフォルトの名無しさん[sage]   投稿日:2015/02/11 19:12:44  ID:jyDGL2pz.net
釣りだろ

502
デフォルトの名無しさん[sage]   投稿日:2015/02/11 19:48:50  ID:sJPqGjE7.net(3)
total = 462300
price_a = 1500
price_b = 700

for i in range(164, 168):
  print "ticket b amount %d" % i
  b_sum = i * price_b
  b_per = (float(b_sum) / total) * 100
  print "ticket b percent %3.2f%%" % b_per
  a_sum = total - b_sum
  a_amt = a_sum / price_a
  print "ticket a amount %d" % a_amt
  a_per = (float(a_sum) / total) * 100
  print "ticket a percent %3.2f%%" % a_per
  print "recalc total %d" % (a_amt * price_a + i
* price_b)
  print "-" * 30

合計を再計算しても元に戻らない
ダメだね

503
デフォルトの名無しさん[sage]   投稿日:2015/02/11 21:00:27  ID:7W5HZePL.net
出題者さんそろそろ解答例お願いします

504
デフォルトの名無しさん[sage]   投稿日:2015/02/11 21:21:32  ID:FK0tEpRi.net(4)
A = 462300*0.75/1500 = 231.15
B = 462300*0.25/700 = 165.10714285714285714285714285714

人間を半分にはできないので165人買って0.107人分ボッタクリした。
でFA?

なんだよ。連立方程式すらいらねーじゃん。

505
デフォルトの名無しさん[sage]   投稿日:2015/02/11 21:25:46  ID:FK0tEpRi.net(4)
ダフ屋じゃねーか。
正確には1人分に満たないくらい過払いがある。か?

506
デフォルトの名無しさん[sage]   投稿日:2015/02/11 23:37:21  ID:FK0tEpRi.net(4)
>489
http://ideone.com/xcF0ak
C++。これでどうよ。75%きっかりじゃねーじゃねーか。
コメント1件

507
デフォルトの名無しさん[sage]   投稿日:2015/02/12 00:04:04  ID:Q9MlxYPD.net(4)
まあ(234,159)の所が一番近そう

誤差としてはでか過ぎるけども

508
デフォルトの名無しさん[sage]   投稿日:2015/02/12 08:46:16  ID:MVgfbUe4.net(5)
連立方程式が不能であることを示せという問題だったのかもしれないなぁ。

509
デフォルトの名無しさん[sage]   投稿日:2015/02/12 08:46:59  ID:MVgfbUe4.net(5)
お題:
n*nの碁盤にn個の碁石を置く。
このときいずれの碁石2個の距離は異なっていなければならない。
距離とは直線距離である。(ピタゴラスの定理)
例3*3の場合
.___
._|_|
|_._|

5*5の碁盤に5個の碁石を配置するプログラムを書け。
8*8あるいは9*9の碁盤でも配置を見つけられるだろうか?調べよ。
コメント4件

510
デフォルトの名無しさん[sage]   投稿日:2015/02/12 08:49:20  ID:MVgfbUe4.net(5)
見づらいので直した。
例3*3の場合
._____
.__|__|
|__.__|

5*5はちゃんと答えはあります。

511
デフォルトの名無しさん[sage]   投稿日:2015/02/12 10:23:34  ID:Q9MlxYPD.net(4)
てすと

print"●□●□□"
print"□□□□□"
print"□□□□●"
print"□□●□□"
print"●□□□□"

512
デフォルトの名無しさん[sage]   投稿日:2015/02/12 13:37:24  ID:YANs7tq6.net(3)
一見簡単そうに見えて、適当に書くと処理が終わらないっていうパターンか

513
デフォルトの名無しさん[sage]   投稿日:2015/02/12 14:27:50  ID:YANs7tq6.net(3)
>509 Common Lisp
http://ideone.com/hgmA7b
手元の処理系なら7*7が限界
あとは任せた
コメント1件

514
デフォルトの名無しさん[sage]   投稿日:2015/02/12 14:28:27  ID:/TeAiWQJ.net(2)
n=5で鏡像とか回転とか除外しない場合280パターンであってるかな?
コメント1件

515
デフォルトの名無しさん[sage]   投稿日:2015/02/12 14:46:31  ID:YANs7tq6.net(3)
>514のおかげで一番大事な枝刈りするの忘れてたことに気づいた
>513の修正 http://ideone.com/rX6mUV
俺も280パターンになった
8*8, 9*9 共にないことを確認した

516
デフォルトの名無しさん[sage]   投稿日:2015/02/12 15:07:14  ID:/TeAiWQJ.net(2)
>509 Java
http://ideone.com/lnlm7p
酷いコードが出来上がった

517
デフォルトの名無しさん[sage]   投稿日:2015/02/12 15:49:17  ID:ChcW/t7D.net
>489は学校の課題なのですが、やはり
見られたらまずいので問題文や数値は変えておきました

>506
サンキューガッツ
コメント2件

518
デフォルトの名無しさん[sage]   投稿日:2015/02/12 17:16:56  ID:Q9MlxYPD.net(4)
>509 python2
http://ideone.com/inumf7
肝心の探索アルゴリズムが出来んw

519
デフォルトの名無しさん[]   投稿日:2015/02/12 17:22:01  ID:G7IOQrQS.net
最大の埋め込み数の配置のほうがいいんでは。

520
デフォルトの名無しさん[sage]   投稿日:2015/02/12 21:15:45  ID:MVgfbUe4.net(5)
>509 Sapphire
https://ideone.com/2ZrG1W
出題者の責任として書いたが、処理系が非力で5だとメモリ不足を起こす。
コメント1件

521
デフォルトの名無しさん[sage]   投稿日:2015/02/12 21:22:19  ID:MVgfbUe4.net(5)
元ネタは1976年に別冊数理科学パズル気箸いλ椶坊悩椶気譴
「もう一つの碁石パズル」というもので著者は中村義作先生という方です。
さらにその先駆はアメリカのクラヴィッツという人の出題だそうです。
n>=16の場合に置けないことが証明されています。
まだまだパソコンが非力な時代にn=7までは見つかっていたそうです。

522
デフォルトの名無しさん[sage]   投稿日:2015/02/12 22:12:00  ID:Q9MlxYPD.net(4)
うーむ、オライリーの数学パズル系の本でも読み直そう・・・

523
デフォルトの名無しさん[sage]   投稿日:2015/02/12 23:16:31  ID:BXnkoFsz.net
>517
また一人不幸のズンドコへ落としてしまった。罪な俺。

524
デフォルトの名無しさん[sage]   投稿日:2015/02/12 23:19:10  ID:gWTW3ML0.net(3)
>520
なんでメモリ不足かと思ったら継続、call/ccだった。
本腰をいれて直すか。

525
デフォルトの名無しさん[sage]   投稿日:2015/02/12 23:21:35  ID:gWTW3ML0.net(3)
あ、そうか。大域脱出だけだからcall/ecにすれば解決か。
さっさとSchemeの呪縛から逃れたい。

526
デフォルトの名無しさん[sage]   投稿日:2015/02/12 23:25:35  ID:gWTW3ML0.net(3)
>517
プログラミングの上達は学校でやる数学や物理をちゃんと勉強するのが近道だよ。

527
デフォルトの名無しさん[sage]   投稿日:2015/02/14 14:52:51  ID:BzTqHYpH.net
お題:ふたつの素数の和が素数になるものを好きなだけ求める。

528
デフォルトの名無しさん[sage]   投稿日:2015/02/14 14:57:14  ID:xvNWKp27.net(2)
解なし。必ず一桁目が偶数になるから。奇数+奇数=偶数。

529
デフォルトの名無しさん[sage]   投稿日:2015/02/14 14:59:19  ID:xvNWKp27.net(2)
って、唯一2が偶数か。うーん
うほ。いきなり間違えた。
素数+2が素数を考えればOKかな?

530
デフォルトの名無しさん[sage]   投稿日:2015/02/14 15:12:02  ID:xKwFGR7n.net
5+2

531
デフォルトの名無しさん[sage]   投稿日:2015/02/14 15:26:58  ID:BF7Hz1F1.net
双子素数

532
デフォルトの名無しさん[]   投稿日:2015/02/14 15:29:01  ID:kPt70RJT.net
用途不明な整数論の問題が増え過ぎ。

533
デフォルトの名無しさん[sage]   投稿日:2015/02/14 15:50:45  ID:hFs/AfD2.net(2)
宿題の季節ですから。

534
デフォルトの名無しさん[sage]   投稿日:2015/02/14 15:52:53  ID:L/dx5qmH.net(2)
実用的である程度面白いお題ってなんだろう?

535
デフォルトの名無しさん[sage]   投稿日:2015/02/14 16:00:11  ID:hFs/AfD2.net(2)
っオートマトン

536
デフォルトの名無しさん[sage]   投稿日:2015/02/14 16:00:14  ID:muFMlXYO.net
HTMLソースをできるだけ正規表現で
DOMオブジェクトに変換するとか

537
デフォルトの名無しさん[sage]   投稿日:2015/02/14 16:03:51  ID:L/dx5qmH.net(2)
マトン食った事ない

538
デフォルトの名無しさん[sage]   投稿日:2015/02/14 16:16:04  ID:QZdIRAT/.net
だっちゃ

539
デフォルトの名無しさん[]   投稿日:2015/02/14 23:10:51  ID:LPbLDSyd.net(2)
有名どころだとナップサック問題だな
変数の制約によってさまざまなバージョンが存在する
下の(1)〜(3)はすべて解法が異なるので腕試しにどうぞ

お題
個数と重さと価値がそれぞれn[i] w[i], v[i], (1 <= i <= N) であるようなN種類の品物がある
重さの総和がWを超えないように選んだ時の、価値の総和の最大値を求めなさい

(1)n[i] = 1, 1 <= w[i] <= 100, 1 <= v[i] <= 100, 1 <= N <= 100, 1 <= W <= 10000

(2)n[i] = 1, 1 <= w[i] <= 10^15, 1 <= v[i] <= 10^15, 1 <= N <= 40, 1 <= W <= 10^15

(3)1 <= n[i] <= 10000, 1 <= w[i] <= 100, 1 <= v[i] <= 100, 1 <= N <= 100, 1 <= W <= 10000
コメント1件

540
デフォルトの名無しさん[sage]   投稿日:2015/02/14 23:50:09  ID:LPbLDSyd.net(2)
>539
おっと、(1)の条件訂正

(1)n[i] = ∞, 1 <= w[i] <= 100, 1 <= v[i] <= 100, 1 <= N <= 100, 1 <= W <= 10000

541
デフォルトの名無しさん[sage]   投稿日:2015/02/15 15:19:15  ID:Qwk5nQv8.net
3 not problem http://parametron.blogspot.jp/2008/07/3-not-problem.html

x,y,zの3入力, x',y',z'の3出力を持つブラックボックスがある. 入出力の関係は
x'=not x
y'=not y
z'=not z
である. ブラックボックスには, andとorは好きなだけ使われているが, notは2つしかないことが分かっている.

内部はどうなっているか.
コメント1件

542
デフォルトの名無しさん[sage]   投稿日:2015/02/15 17:03:44  ID:3ebY1fvj.net
そんなのカルノー図書けば一発だろと思ったら違ったw

543
デフォルトの名無しさん[sage]   投稿日:2015/02/15 18:35:21  ID:95bkybK9.net
俺の探索アルゴリズムじゃ歯が立たない

544
デフォルトの名無しさん[sage]   投稿日:2015/02/15 18:37:12  ID:pLajBfKs.net
自力で答え考えるほうが楽だった

545
デフォルトの名無しさん[sage]   投稿日:2015/02/16 11:49:48  ID:f7brl41S.net
not2つも使わなきゃいけないのか

546
デフォルトの名無しさん[sage]   投稿日:2015/02/16 12:51:04  ID:o9E9nO+7.net
オライリーのアルゴリズムパズル読んでるけどチュートリアルがまだ読みおわらねw

547
デフォルトの名無しさん[sage]   投稿日:2015/02/16 17:55:57  ID:1x+didfY.net(3)
>541 Java
http://ideone.com/sVPIDp
5秒じゃ収まらんかった
コメント2件

548
デフォルトの名無しさん[sage]   投稿日:2015/02/16 18:07:14  ID:1x+didfY.net(3)
>547があってるかどうかの確認 Java
http://ideone.com/BLNvZn

549
デフォルトの名無しさん[sage]   投稿日:2015/02/16 18:22:10  ID:1x+didfY.net(3)
>547の遅そうな部分を修正
http://ideone.com/l0txFu

550
デフォルトの名無しさん[sage]   投稿日:2015/02/17 02:23:01  ID:ajwgnA0x.net
2ちゃんねる用ブラウザ「ギコナビ」 Part69 [転載禁止]&copy;2ch.net
2ちゃんねる用ブラウザ「ギコナビ」 Part69 /ソフトウェア板

551
デフォルトの名無しさん[sage]   投稿日:2015/02/17 09:01:36  ID:d+hn81Dl.net
お題としては重すぎるな

552
デフォルトの名無しさん[sage]   投稿日:2015/02/19 14:36:02  ID:PbZ3mXOh.net(3)
ギコナビが使えなくなるので3/31一杯で撤退します。
ギコナビそのものはSCでも読めるようなのでそっちに移住するかもしれんです。
裏の利権なんか知らんです。安住の地さえあれば・・・。

553
デフォルトの名無しさん[sage]   投稿日:2015/02/19 14:54:07  ID:KcgCnV2U.net(2)
思いっきりスレ違いだけれども、データ取ってきてローカルでビューを加工するって
発想が前時代的だと思う。

人も減ったことだし、サーバーで直接見やすいhtml吐くようにすりゃいいのに。
コメント2件

554
デフォルトの名無しさん[sage]   投稿日:2015/02/19 14:56:57  ID:PbZ3mXOh.net(3)
datより小さいHTML吐ければいいけどね。上位の転送料って従量制だから。

555
デフォルトの名無しさん[sage]   投稿日:2015/02/19 15:17:41  ID:7oFSdK4O.net
>553
今時の方法との違いってViewerがHTMLで実装されてるかネイティブで実装されてるかの違いしか無いと思うんだけど。
データを取ってきてクライアント側で表示内容を生成するのは変わらないでしょ。

今時の方法はデータのフォーマットをJSONにしたりするのかもしれないけど
コメント1件

556
デフォルトの名無しさん[sage]   投稿日:2015/02/19 15:50:18  ID:KcgCnV2U.net(2)
>555
確かに...

557
デフォルトの名無しさん[sage]   投稿日:2015/02/19 15:59:01  ID:lpMh0T0h.net(2)
>553
てか2ch.netはそうなってるんだけどさ。
昨日たまたまスマホ用の2chを、ブラウザで覗いたら、
実は専用アプリは不要だった、という事実に気づいた。

558
デフォルトの名無しさん[sage]   投稿日:2015/02/19 16:00:45  ID:lpMh0T0h.net(2)
ただあまりにも下品な広告の洪水に辟易したけどね。
乗っ取った側ってやっぱヤクザ的な人たちなのかねえ。

559
デフォルトの名無しさん[sage]   投稿日:2015/02/19 16:04:33  ID:PbZ3mXOh.net(3)
元々はヒロユキの傀儡だったがヒロユキがへまして乗っ取られた。相手は外人なのに信用しすぎた。
一応、2chは日本の英知に近い部分があるので、そういうのに興味があるやつに乗っ取られたんだと思ってるよ。

560
デフォルトの名無しさん[sage]   投稿日:2015/02/19 17:34:36  ID:06K6cuzM.net
本家がopenやscに移行への手を貸す形になりそうw
アホやんw

561
デフォルトの名無しさん[sage]   投稿日:2015/02/19 17:49:09  ID:AJBvTtK0.net
まつもとひろゆき

562
デフォルトの名無しさん[sage]   投稿日:2015/02/21 14:38:24  ID:WPC2wl2D.net
【実況】向かいの部屋に住んでいる女子高生が窓を開けたままオナニーしているんだが
お前は騙されて通信技術板へやってきたわけだが2 /通信技術板

563
デフォルトの名無しさん[sage]   投稿日:2015/02/21 14:39:39  ID:lleGAg6p.net
コピペマン参上!まで読んだ。

564
デフォルトの名無しさん[]   投稿日:2015/02/27 14:31:48  ID:wMAAsYaL.net
お題を…お題をくれっ

簡単すぎない簡単なやつを頼む
コメント2件

565
デフォルトの名無しさん[sage]   投稿日:2015/02/27 14:35:00  ID:HpQtp076.net
チンコ萎えましたぁ

復活アルゴリズムきぼんぬ

566
デフォルトの名無しさん[sage]   投稿日:2015/02/27 15:24:09  ID:SSnJx+o0.net
18禁注意
http://www.amazon.co.jp/dp/4799200550/
最近買ったなかではこれが良かった。
特殊趣向なところあるけどな。

567
デフォルトの名無しさん[sage]   投稿日:2015/02/27 16:45:28  ID:UWbFrZRi.net(2)
>564
ファミコン上で動くOS
エミュ可

568
デフォルトの名無しさん[sage]   投稿日:2015/02/27 16:52:54  ID:vP93htBG.net(3)
ファミコンより安いARMでOSが動く環境があるのにどうなんだろうな?

569
デフォルトの名無しさん[sage]   投稿日:2015/02/27 17:25:58  ID:iHoQTjKY.net
OS作ったって誰も検証できないじゃん
コメント1件

570
デフォルトの名無しさん[sage]   投稿日:2015/02/27 17:32:54  ID:vP93htBG.net(3)
健全でない言葉が含まれているため表示しません 内容を確認する

571
デフォルトの名無しさん[sage]   投稿日:2015/02/27 17:34:26  ID:vP93htBG.net(3)
健全でない言葉が含まれているため表示しません 内容を確認する

572
デフォルトの名無しさん[sage]   投稿日:2015/02/27 18:48:22  ID:UWbFrZRi.net(2)
>569
配布してエミュで動かしてもらえばいいと思ったんだけど

573
デフォルトの名無しさん[]   投稿日:2015/02/28 14:04:57  ID:+gtkzrQz.net
>564

お題
じゃんけんの手のリストが文字列で与えられるので
その中で勝ちの手がいくつあるか答えよ
(g=グー、c=チョキ、p=パー)

gpgpgppppg -> 6
ggggggggggggggg -> 0
ccpcpppcccpppcppcpcc -> 10
ggcgcgcggggcpgcggcgcggggcgcgcc -> 0
コメント7件

574
デフォルトの名無しさん[sage]   投稿日:2015/02/28 14:29:49  ID:XdlzGyk5.net
勝ちの手ってどういうことだ

575
デフォルトの名無しさん[sage]   投稿日:2015/02/28 14:51:34  ID:WGZr43/X.net
計算問題

http://codepad.org/pCMF5uBs

計算例
1: 2.998654
2: 3.150284
3: 3.485522
4: 4.071366
5: 5.000000
以下略
コメント1件

576
デフォルトの名無しさん[sage]   投稿日:2015/02/28 14:54:02  ID:MwE2cKVB.net
答えはチョキ?となると最後は0ではなく1にならなければいけないから
違うな

というかプログラムにならんしw

577
デフォルトの名無しさん[]   投稿日:2015/02/28 15:06:38  ID:yAjdu5nl.net
最後はp1人いるからあいこで0
他は順にgの数、あいこ、cの数
大勢で一度にジャンケンして勝った人数じゃね

578
デフォルトの名無しさん[sage]   投稿日:2015/02/28 18:03:13  ID:LQWoRAlQ.net


579
デフォルトの名無しさん[sage]   投稿日:2015/02/28 19:34:39  ID:Mpzn4DGR.net(2)
>573
http://ideone.com/sp7Wdh
C++。適当に書いた。漏れがあったらごめん。

580
デフォルトの名無しさん[sage]   投稿日:2015/02/28 21:11:55  ID:k8/PfXcG.net(2)

581
デフォルトの名無しさん[sage]   投稿日:2015/02/28 21:22:58  ID:k8/PfXcG.net(2)
バグってるな…

582
デフォルトの名無しさん[sage]   投稿日:2015/02/28 22:34:07  ID:pM+RKKwV.net

583
デフォルトの名無しさん[sage]   投稿日:2015/02/28 22:48:27  ID:Mpzn4DGR.net(2)
じゅんけん。じゃなくて、じゃんけんな。

584
デフォルトの名無しさん[sage]   投稿日:2015/03/01 11:48:28  ID:KO4EdtEI.net(3)

585
デフォルトの名無しさん[sage]   投稿日:2015/03/01 17:15:21  ID:lheYQzbz.net
参加人数N(1から10の10乗)
「どちらにしようかな 天の神様の言う通り」
最後の「り」に当たる人は何番目の人か出力しなさい
コメント6件

586
デフォルトの名無しさん[sage]   投稿日:2015/03/01 18:12:58  ID:5J5cY+ZW.net(5)
>585
常に22番目じゃね?詳細。
コメント1件

587
デフォルトの名無しさん[sage]   投稿日:2015/03/01 18:18:59  ID:KO4EdtEI.net(3)
>586
そうじゃなくて
((N div 22) * 22) + (N mod 22)番目の人じゃないか?
最後の「り」に当たる人は何番目?
だと思うよ

div -> 商をもとめる演算とする
コメント1件

588
デフォルトの名無しさん[sage]   投稿日:2015/03/01 18:24:15  ID:KO4EdtEI.net(3)
>587
補足
とぉっても大きな数の場合、具体的にどう処理するのか?が出題の眼目だと思うけどね

アアン、大きすぎてぇ入らないのぉ
グゥェヘヘ、工夫しろや!欲しいんやろ?これがほしいんやろ?
コメント1件

589
デフォルトの名無しさん[sage]   投稿日:2015/03/01 18:26:40  ID:5J5cY+ZW.net(5)
そんな何順もするもん?ローカルルールがありすぎて統一するの難しそうだな。
10の10乗って10億か?そこまで到達しないだろう。

590
デフォルトの名無しさん[sage]   投稿日:2015/03/01 18:28:38  ID:5J5cY+ZW.net(5)
>588
どう頑張っても不平等だな。まいったなぁ。

591
デフォルトの名無しさん[sage]   投稿日:2015/03/01 19:30:21  ID:5J5cY+ZW.net(5)
>585
http://ideone.com/mrCKcD
C++。一応それっぽいの書いてみた。
最初D分割されたグループを再帰的に選んで行って最後のウイナーを決める。感じ?
なんか、小さいころに習得した事ってあんまり整理されてなくてぐちゃぐちゃだな。
すげー、頭こんがらがった。
これでいいか?あっては無いと思うが。デバッグテキトー。

592
デフォルトの名無しさん[sage]   投稿日:2015/03/01 19:51:13  ID:5J5cY+ZW.net(5)
感想募集中。

593
デフォルトの名無しさん[sage]   投稿日:2015/03/01 20:18:38  ID:StRWusym.net
>573 Squeak Smalltalk

#('gpgpgppppg'
'ggggggggggggggg'
'ccpcpppcccpppcppcpcc'
'ggcgcgcggggcpgcggcgcggggcgcgcc'
) collect: [:str |
 | bag |
 bag := str asBag.
 str -> (bag occurrencesOf: (
  bag asSet caseOf: {
   ['gp' asSet] -> [$p].
   ['gc' asSet] -> [$g].
   ['cp' asSet] -> [$c]
  } otherwise: [$z]))
]

"=> {
 'gpgpgppppg'->6 .
 'ggggggggggggggg'->0 .
 'ccpcpppcccpppcppcpcc'->10 .
 'ggcgcgcggggcpgcggcgcggggcgcgcc'->0
} "

594
デフォルトの名無しさん[sage]   投稿日:2015/03/01 20:39:15  ID:VH/O77/u.net

595
デフォルトの名無しさん[sage]   投稿日:2015/03/01 22:00:38  ID:uBqQu6I9.net
>573 Haskell
http://ideone.com/8tuhZi

こういう問題、他の人の実装を見るのが楽しい

596
デフォルトの名無しさん[sage]   投稿日:2015/03/02 00:51:48  ID:u8KCJCBk.net(2)

597
デフォルトの名無しさん[sage]   投稿日:2015/03/02 01:51:05  ID:u8KCJCBk.net(2)

598
デフォルトの名無しさん[sage]   投稿日:2015/03/02 14:47:23  ID:qt+uKgff.net
>573 Perl
http://ideone.com/TDGfOR

アレスグーテ!

599
デフォルトの名無しさん[sage]   投稿日:2015/03/02 17:06:34  ID:ssnAt4RV.net(3)
>585は最後の一人になるまで “り” に当たった人を減らしていくって問題な気がする
出題者の意図を考える問題ww

Java
http://ideone.com/GQ6cIU
線形時間ではこんな感じで。
これ計算で求めるのは如何するん?
コメント1件

600
デフォルトの名無しさん[sage]   投稿日:2015/03/02 18:29:26  ID:ssnAt4RV.net(3)
>585 Java
>599のループ回数減らして高速化
http://ideone.com/KK41n4

601
デフォルトの名無しさん[sage]   投稿日:2015/03/02 18:40:59  ID:kcGDdoVo.net(2)
出題したものだけど計算で一発で求める方法があるか知りたくて問題出しただけだよ

602
デフォルトの名無しさん[sage]   投稿日:2015/03/02 18:41:33  ID:kcGDdoVo.net(2)
ループなら21回で済む
10^10は釣りで入れただけ
コメント2件

603
デフォルトの名無しさん[sage]   投稿日:2015/03/02 18:43:52  ID:ssnAt4RV.net(3)
>602
りふぁれんすぷりーず

604
デフォルトの名無しさん[sage]   投稿日:2015/03/02 18:56:13  ID:uwKuVIvd.net(7)
>602
リファレンスぷりーず

605
デフォルトの名無しさん[sage]   投稿日:2015/03/02 18:58:13  ID:uwKuVIvd.net(7)
っていうか、仕様に釣りとか入れないで。
問題変わっちゃうじゃん。
コメント1件

606
デフォルトの名無しさん[sage]   投稿日:2015/03/02 19:05:45  ID:dDkAzPg+.net
さよならNG
誠意のない問題はクズ
ID:kcGDdoVo

607
デフォルトの名無しさん[sage]   投稿日:2015/03/02 21:38:42  ID:pFGTGZil.net
>605
問題をそのまま見ればわかる
コメント1件

608
デフォルトの名無しさん[sage]   投稿日:2015/03/02 21:43:57  ID:kaLsZZuA.net
久しぶりにNG宣言してるかまってちゃん奴見たわ
コメント1件

609
デフォルトの名無しさん[sage]   投稿日:2015/03/02 21:47:50  ID:uwKuVIvd.net(7)
>607
じゃあ、常に22番目じゃねーか。

610
デフォルトの名無しさん[sage]   投稿日:2015/03/02 21:52:03  ID:9xnlax9t.net
1 ど
2 れ
3 に
4 し
5 よ
6 う
7 か
8 な
9 て
10 ん
11 の
12 か
13 み
14 さ
15 ま
16 の
17 い
18 う
19 と
20 お
21 り
コメント1件

611
デフォルトの名無しさん[sage]   投稿日:2015/03/02 21:56:52  ID:uwKuVIvd.net(7)
あら、でも常に定数じゃないか。
正直すまんかった。
21%min(N,22)で済む話か?

612
デフォルトの名無しさん[sage]   投稿日:2015/03/02 22:15:18  ID:uwKuVIvd.net(7)
なんか微妙に違う気がする。あれ?

613
デフォルトの名無しさん[sage]   投稿日:2015/03/02 22:26:31  ID:uwKuVIvd.net(7)
21%min(N+1,22)かな?

614
デフォルトの名無しさん[sage]   投稿日:2015/03/02 22:33:33  ID:3sD289zB.net
普通に 21%N だろ
ただしN番目の人は0番目扱いになるから
そこだけ注意が必要だな

615
デフォルトの名無しさん[sage]   投稿日:2015/03/02 22:39:16  ID:uwKuVIvd.net(7)
あぁ、喉のつっかえ取れたわ。
そういえばNって別にいくつでもいいのか。
選ばれるのは1開始だけど、21%21=0なので+1しないとだめかな?
まぁ0番目はdevBYzeroでけられる可能性があるので対策しないとだけどな。
1基準だとPGの通例と変わってくる可能性がある。

616
デフォルトの名無しさん[sage]   投稿日:2015/03/02 23:51:16  ID:0LD623h0.net
>608
は?精神病?
どこをどうすればかまってちゃんになるんだか
精神病の発想はよくわからん

617
デフォルトの名無しさん[sage]   投稿日:2015/03/03 14:35:00  ID:D8QZLzb7.net
>610
>585
どちら どれ wwww

618
デフォルトの名無しさん[sage]   投稿日:2015/03/04 12:00:16  ID:siY0+JXs.net(2)
お題:小文字のアルファベットからなる文字列を圧縮して。文字列は複数行あるから。

aabbcc

a2b2c2

abcde
aabbb

a1b1c1d1e1
a2b3

aaa
bbb
ccc

a3
b3
c3
コメント4件

619
デフォルトの名無しさん[sage]   投稿日:2015/03/04 12:05:34  ID:6Z36/r8C.net
圧縮出来てねえ

620
デフォルトの名無しさん[sage]   投稿日:2015/03/04 12:13:37  ID:siY0+JXs.net(2)
aaaaaaaaaa

a10

621
デフォルトの名無しさん[sage]   投稿日:2015/03/04 12:31:31  ID:aiebJTF+.net
3つ以上の連続性無いと意味無いな
アルファベット以外の、例えば数字自体は考えなくてもいいって事?

あと復元のことも考えないとな

622
デフォルトの名無しさん[sage]   投稿日:2015/03/04 12:51:35  ID:XT2eiHg0.net
『一回の場合'1'は省略する』
くらいのことを思いつかない奴が
プログラムに手を出すなとか思う

623
デフォルトの名無しさん[sage]   投稿日:2015/03/04 13:31:56  ID:p/ReeUop.net
省略するかしないかは別にいいんじゃないかな

624
デフォルトの名無しさん[sage]   投稿日:2015/03/04 14:22:53  ID:E/p47b86.net(2)
圧縮したらぁ
abcの三文字がぁ
a1b1c1って倍になっちゃったぁ

それを圧縮というかい!!!!
それに数字の部分はもろに数字かい!!
それに使用文字をアスキー文字に限定してるんかどうか?

仮に、話を簡単にするため
1.圧縮対象文字は英語小文字のaからzとする
2. 指定文字からなる文字列を圧縮せよ。
3. 当然復元できるものとする
さあ、効率と速度を競え

かなぁ。


とりあえず文字種を表すのに5bitでたりるな。残り3ビットで連続回数を指定す


すると(文字種 ・ 長さ)を1バイトで表現できる

もし、連続回数が8文字以上の場合は
次の1バイトを長さ情報バイトとして付加する。

最後の長さ情報バイトの値は255未満としておけば、次のバイトは(文字種 長さ)バイトだと認識できる。
圧縮文字列の最後は(0 ・0)で終端すれば良い

どうかなぁ

625
デフォルトの名無しさん[sage]   投稿日:2015/03/04 14:26:29  ID:E/p47b86.net(2)
上をワンパスとして
さらに同一パターンの検出をかますともっと圧縮できるなぁ
abcdeabcxy
これは
p1 cd p2 xy
となるな
真面目な圧縮プログラムはいろいろ工夫してるんだろな

626
デフォルトの名無しさん[sage]   投稿日:2015/03/04 15:56:04  ID:D1jSwNUW.net
>618 Squeak Smalltalk

| compress |
compress := [:str |
 String streamContents: [:ss |
  str lines do: [:line |
   self assert: [Character alphabet includesAllOf: line].
   (line as: RunArray) runsAndValuesDo: [:run :val | ss nextPutAll: '', val, run]
  ] separatedBy: [ss cr]
 ]
].

compress value: 'aabbcc'.

"=> 'a2b2c2' "

compress value: 'abcde
aabbb'.

"=> 'a1b1c1d1e1
a2b3' "

compress value: 'aaa
bbb
ccc'.

"=> 'a3
b3
c3' "
コメント1件

627
デフォルトの名無しさん[sage]   投稿日:2015/03/06 11:14:35  ID:uBYudlMK.net
>618
Sceme リスト変換版 冗長になったああ
http://codepad.org/Q3eeiyeO

628
デフォルトの名無しさん[sage]   投稿日:2015/03/06 20:10:15  ID:U9T/oBTW.net(2)
>618
ruby
$ echo aabbccc | ruby -pe '$_.gsub!(/(.)(\1*)/){$1+"#{$2.size+1}"}'
a2b2c3

629
デフォルトの名無しさん[sage]   投稿日:2015/03/06 20:16:07  ID:U9T/oBTW.net(2)
ついで
$ echo -e "a3\nb3\nc3" | ruby -pe '$_.gsub!(/(.)(\d+)/){$1*$2.to_i}'
aaa
bbb
ccc

630
デフォルトの名無しさん[]   投稿日:2015/03/06 21:07:24  ID:oJtnjCND.net
>626
閉じ括弧の位置がきもちわるい

631
デフォルトの名無しさん[sage]   投稿日:2015/03/06 22:35:31  ID:YBksKqE2.net
>618
http://ideone.com/k9ARJx
C++。今頭腐ってるから手抜きで。
頭腐ってても暇なもんは暇だな。はぁ・・・。
あってるかなー。

632
デフォルトの名無しさん[]   投稿日:2015/03/06 23:55:15  ID:MtMWpDAX.net

633
デフォルトの名無しさん[sage]   投稿日:2015/03/07 12:41:43  ID:JmbQJgEM.net(6)
>632
プログラマ余らせるくらいなら別のプロジェクト当てるんじゃね?

634
デフォルトの名無しさん[sage]   投稿日:2015/03/07 13:35:07  ID:/5K+qj6/.net
1からN未満の自然数で、3または5の倍数の合計を求めよ
ただし、9で割り切れる数は除外すること
コメント9件

635
デフォルトの名無しさん[sage]   投稿日:2015/03/07 14:52:07  ID:hGoDGKC0.net(2)

636
デフォルトの名無しさん[sage]   投稿日:2015/03/07 14:53:25  ID:JmbQJgEM.net(6)
なんか前にも見た覚えあるなー。

637
デフォルトの名無しさん[sage]   投稿日:2015/03/07 15:43:28  ID:JmbQJgEM.net(6)
>634
http://ideone.com/hN1PIT
C++。一応書いたけど、遅いよ。もう滅茶苦茶遅いよ。それでも・・・いい?
コメント4件

638
デフォルトの名無しさん[sage]   投稿日:2015/03/07 16:11:12  ID:lbaOW+/n.net
ダメよダメダメって言えばいいの?

639
デフォルトの名無しさん[sage]   投稿日:2015/03/07 16:21:20  ID:bJg/o0s7.net(4)
チンコ萎えますぅ

640
デフォルトの名無しさん[sage]   投稿日:2015/03/07 16:38:26  ID:JmbQJgEM.net(6)
最近テレビは見てないのでそのネタはわからんかった。Orz

641
デフォルトの名無しさん[sage]   投稿日:2015/03/07 20:52:26  ID:bJg/o0s7.net(4)
>634
Scheme

http://codepad.org/q3DokK52
atomの8インチタブレットでNが百万で5秒くらいの速度

642
デフォルトの名無しさん[sage]   投稿日:2015/03/07 20:59:14  ID:bJg/o0s7.net(4)
>637
あれ? 君と答えが違う

↓ Schemeで

(foo 300000 (lambda (x y) x))
17000049996
コメント1件

643
デフォルトの名無しさん[sage]   投稿日:2015/03/07 21:10:39  ID:bJg/o0s7.net(4)
>642
>637
問題文よみちがえていた
間違い 5の倍数と 3の倍数で9の倍数ではないもの
訂正 5の倍数または3の倍数で かつ 9の倍数ではないもの

それでも >637 と300000の時の答え違う
http://codepad.org/gnMxD2Zf

俺がまちがってるのかなあ

644
デフォルトの名無しさん[sage]   投稿日:2015/03/07 21:27:24  ID:O2EfnUy2.net(3)
>634 Squeak Smalltalk

| fn |
fn := [:N |
 ((1 to: N) select: [:x |
  ((x isDivisibleBy: 3) or: [x isDivisibleBy: 5])
   and: [(x isDivisibleBy: 9) not]]
 ) sum
].

fn value: 300000 "=> 16000100001 "
コメント2件

645
デフォルトの名無しさん[sage]   投稿日:2015/03/07 21:51:42  ID:JmbQJgEM.net(6)
あれ?間違ってるか。あれ?
すまん。>637は取り下げ。
コメント1件

646
デフォルトの名無しさん[sage]   投稿日:2015/03/07 21:52:24  ID:O2EfnUy2.net(3)
>644
未満か…orz

×1 to: N → ○1 to: N-1
×16000100001 → ○15999800001
コメント2件


647
デフォルトの名無しさん[sage]   投稿日:2015/03/07 22:14:39  ID:fJ4fWqRj.net(2)
>646
(*´σー`)エヘヘ
だんな、おいらも未満にきづかなかったべ
ま、いいやないの
コメント1件

648
デフォルトの名無しさん[sage]   投稿日:2015/03/07 22:15:43  ID:fJ4fWqRj.net(2)
>645
>647
すまんかったね

649
デフォルトの名無しさん[sage]   投稿日:2015/03/07 22:20:36  ID:8nTZ5hf2.net
> [*1...300000].delete_if{|x|x%9==0}.select{|x|x%3==0||x%5==0}.reduce(:+)
=> 15999800001

650
デフォルトの名無しさん[]   投稿日:2015/03/07 22:32:09  ID:FS79VVDG.net
>644
なんで閉じカッコの場所をSmalltalkらしくしないの?

651
デフォルトの名無しさん[sage]   投稿日:2015/03/07 22:36:52  ID:/Hf1PLs3.net
つうか1からNまでループするのは賢くない気がする

652
デフォルトの名無しさん[sage]   投稿日:2015/03/07 22:53:14  ID:e+qxg0mC.net
健全でない言葉が含まれているため表示しません 内容を確認する

653
デフォルトの名無しさん[sage]   投稿日:2015/03/07 23:06:13  ID:hGoDGKC0.net(2)
ループや再帰要らんじゃろ
>635のf2参照

Java 多倍長整数版
http://ideone.com/n5XLyh
コメント1件

654
デフォルトの名無しさん[sage]   投稿日:2015/03/07 23:21:46  ID:JmbQJgEM.net(6)
>646-647
なんだ、そういうミスか。びっくりした。
どこ直そうか全然わからなかった。

>653
こういう一発技を捻れなかったからループを使いました。(偉そう)
今、滅茶苦茶調子悪いの。Orz

655
デフォルトの名無しさん[sage]   投稿日:2015/03/07 23:40:23  ID:4czvFiqV.net
俺はScheme勉強中だから何が何でも再帰や!
あはは

656
デフォルトの名無しさん[sage]   投稿日:2015/03/07 23:45:40  ID:O2EfnUy2.net(3)
>634 GNU Smalltalk

Interval extend [
 sum [^self first + self last * self size / 2]
]

fn := [:N |
 ((3 to: N-1 by: 3) sum + (5 to: N-1 by: 5) sum - (3*5 to: N-1 by: 3*5) sum - (9 to: N-1 by: 9) sum)
].

(fn value: 300000) printNl => 15999800001

http://ideone.com/F6y8M2

657
デフォルトの名無しさん[sage]   投稿日:2015/03/08 15:14:08  ID:Zck1rhOd.net
深さ優先探索と幅優先探索ってどうやって使い分けていいのかおしえて

658
デフォルトの名無しさん[sage]   投稿日:2015/03/08 15:32:45  ID:mBgBNV1f.net
健全でない言葉が含まれているため表示しません 内容を確認する

659
デフォルトの名無しさん[sage]   投稿日:2015/03/08 15:34:44  ID:7Ai8lzeX.net
キモヲタ丸出しw
馬鹿じゃねえの

660
デフォルトの名無しさん[sage]   投稿日:2015/03/08 15:41:41  ID:dM1B/3iR.net
俺のそそり立つチンコ見てもそう言えるか?ああん?
コメント1件

661
デフォルトの名無しさん[sage]   投稿日:2015/03/08 15:46:07  ID:qIBf1HTy.net
自分は、メモリケチりたいときは深さ優先検索でメモリ有り余ってる時は幅検索かな。
問題の質にもよるけど、全幅検索して万能解出したいときは幅検索しないときついときがある。
最適解でいいなら深さ優先検索のほうが早いと思う。

662
吐いた[sage]   投稿日:2015/03/08 17:17:12  ID:ZWLsQWi0.net

663
デフォルトの名無しさん[sage]   投稿日:2015/03/08 18:13:53  ID:fVwUy8ph.net(2)
>634
Python3で。
https://paiza.io/projects/tCMqV9kBbJY5JgXYfF-jNw
手元PCで 0.11s user 0.02s system 93% cpu 0.139 total

664
デフォルトの名無しさん[sage]   投稿日:2015/03/08 21:23:41  ID:fVwUy8ph.net(2)

665
デフォルトの名無しさん[sage]   投稿日:2015/03/08 21:41:30  ID:4v0KO8Ne.net(2)
数学の知識が無くても解けるがあると効率良くなる問題を出題してください
コメント2件

666
デフォルトの名無しさん[sage]   投稿日:2015/03/08 21:43:26  ID:HpC0rxgi.net
>665
>634とかいい例じゃないの

667
デフォルトの名無しさん[sage]   投稿日:2015/03/08 22:47:49  ID:4v0KO8Ne.net(2)
それ、おれですよ出題したのおれなんですよ
その問題しか知りません

668
片山博文MZ ◆T6xkBnTXz7B0 [sage]   投稿日:2015/03/08 22:58:12  ID:mm6WxmZr.net
お題:Lisp風の丸かっこ( )で構造化されたデータをてきとーにXMLに変換する
コメント1件

669
デフォルトの名無しさん[sage]   投稿日:2015/03/08 23:59:50  ID:5ixTzgyd.net

670
デフォルトの名無しさん[sage]   投稿日:2015/03/09 00:30:47  ID:tnx2P+0y.net
>665
もうやっていらっしゃる気もするけど Project Euler の最初の方とかいいんじゃなかろうか

671
デフォルトの名無しさん[sage]   投稿日:2015/03/09 01:56:41  ID:qBPlQWAy.net
お題:ネイピア数eを十進数で表記すると0から9までのすべての数字があらわれるのは小数点以下20桁目ですが、
"000"から"999"までのすべての文字列があらわれるのは小数点以下何桁目かを求めてください。
("718"と"182"は小数点以下4桁目までにともに含まれるものとします)

(substring e 1 (+ 20 2))
".71828182845904523536"

(apply #'max (loop for i from 0 to 9 collect (search (format "%d" i) (substring e 1 (+ 20 2)))))
20

(substring e 1 (+ 4 2))
".7182"

(+ (search "718" (substring e 1 (+ 4 2))) 2)
3

(+ (search "182" (substring e 1 (+ 4 2))) 2)
4
コメント1件

672
デフォルトの名無しさん[sage]   投稿日:2015/03/09 13:20:22  ID:EbdUqU5/.net
>671 Squeak Smalltalk

| N M epsilon e x max |
N := 10000.
M := 3.
epsilon := 10 raisedTo: N negated.
e := 2 asScaledDecimal: N.
x := 1.
[ | delta | e := e + (delta := 1 / (x := x + 1) factorial). delta < epsilon] whileFalse.
e := e printString.
e := e copyFrom: 3 to: e size - 1 - N printString size.
max := 0.
($0 to: $9) asDigitsToPower: M do: [:digits |
 | loc |
 loc := e indexOfSubCollection: digits.
 loc = 0 ifTrue: [^'not found ', (digits as: String), '. try larger N'].
 loc > max ifTrue: [max := loc]
].
^max "=> 8089 "
コメント1件

673
デフォルトの名無しさん[sage]   投稿日:2015/03/09 14:15:47  ID:/CoHYqtD.net
>668 F#

open System
let rec manyAcc p xs = p xs |> function
 | None -> [], xs
 | Some(x, xs) -> let rs, xs = manyAcc p xs in x::rs, xs
let (<|>) l r xs = (l xs, r xs) |> function
 | Some x, _ | _, Some x -> Some x
 | _ -> None
let (|>>) p f = p >> Option.map (fun (x, xs) -> f x, xs)
let (.>.) l r = l >> Option.bind (fun (x1, xs) -> (r |>> fun x2 -> (x1, x2)) xs)
let wrap o c p = o .>. p .>. c |>> (fst >> snd)
let many p = manyAcc p >> Some
let many1 p = p .>. many p |>> List.Cons
let such p = function x::xs when p x -> Some(x, xs) | _ -> None
let (~%) c = such <| (=) c
let space = such Char.IsWhiteSpace
let token p = wrap (many space) (many space) p
let putChars xs _ = Seq.iter (printf "%c") xs
let putElem n xs _ = printf "<"; n(); printf ">"; xs(); printf "</"; n(); printf ">"
let string = wrap %'\'' %'\'' (many (such ((<>) '\''))) |>> (putChars >> putElem (putChars "str"))
let int = many1 (such Char.IsNumber) |>> (putChars >> putElem (putChars "int"))
let name = many1 (such Char.IsLetter) |>> putChars
let _expr = ref <| failwithf "%A"
let expr = fun xs -> !_expr xs
let list = wrap (token %'(') (token %')') (name .>. many expr) |>> fun (n, xs) -> putElem n (fun () -> for e in xs do e())
_expr := list <|> token int <|> token string
let printXml = Seq.toList >> expr >> Option.iter (fst >> (|>) ())

printXml "(data 'ten')" // <data><str>ten</str></data>
printXml "(res 774 (body 'test'))" // <res><int>774</int><body><str>test</str></body></res>

674
デフォルトの名無しさん[sage]   投稿日:2015/03/09 15:02:44  ID:bBnu/gt8.net
>672
あ、すみません。最後 + 2 するの忘れました。orz

× ^max → ○ ^max + M - 1
× => 8089 → ○ => 8091

675
デフォルトの名無しさん[sage]   投稿日:2015/03/09 17:18:44  ID:gk6yvFxP.net(3)
仕様
・a要素の中にはb要素とテキストを挿入できる
・b要素にはテキストのみ挿入できる。
・要素は閉じなければならない<要素名></要素名>

制約
・テキストは[a-zA-Z0-9]のみで最大100文字の長さである事が保証される
・要素はaとbの二つしか存在しないことが保証される。
・テストに使われる文字列は[<>/a-z-A-Z0-9]のみが保証される

以下は正しい構造である
<a>ruby<b>php</b>python</a><a><b></b></a><a></a>

お題
与えられた文字列が正しい構造であれば1、正しくなければ0を出力しなさい
<a>ruby<b>php</b>python</a><a></b></a><a></a>
<a>ruby<b>php</b>python</a><a><b></a><a></a>
<a>ruby<b>php</b>python</a><a><b></b></a><a>
vvvc<a>ruby<b>php</b>python</a><a><b></b></a><a></a>
コメント7件

676
674[sage]   投稿日:2015/03/09 17:20:18  ID:gk6yvFxP.net(3)
HTMLパーサー等のライブラリの仕様禁止

677
デフォルトの名無しさん[sage]   投稿日:2015/03/09 17:24:21  ID:a4rJAsDL.net(3)
テキストは要素の外にあってもいいんかね?

678
デフォルトの名無しさん[sage]   投稿日:2015/03/09 17:58:02  ID:gk6yvFxP.net(3)
はい、かまいません

679
デフォルトの名無しさん[sage]   投稿日:2015/03/09 19:37:51  ID:a4rJAsDL.net(3)
>675 Java
http://ideone.com/5t4pMZ
酷いコードになったぜ

680
デフォルトの名無しさん[sage]   投稿日:2015/03/09 20:51:05  ID:Jn+3c0fJ.net

681
デフォルトの名無しさん[sage]   投稿日:2015/03/09 21:51:58  ID:a4rJAsDL.net(3)
>680
なるほど勉強になる
http://ideone.com/SfLTn3

682
デフォルトの名無しさん[sage]   投稿日:2015/03/10 00:31:08  ID:6esjUope.net

683
デフォルトの名無しさん[sage]   投稿日:2015/03/10 01:16:47  ID:MirLuamm.net
>675 JavaScript
http://ideone.com/GeKkDG
楽をしようと思ったらイマイチだったでござる
コメント1件

684
デフォルトの名無しさん[]   投稿日:2015/03/10 12:39:28  ID:WQWlRlS8.net(2)
メモリ512MのPCで、改行区切りのサイズ500M程度の2つのテキストの共通部分、差分を速く計算するにはどうしたらいいですか。
コメント3件

685
デフォルトの名無しさん[]   投稿日:2015/03/10 12:48:35  ID:WQWlRlS8.net(2)
>684
unix系でむかしから知られてる方法は遅いんです。


sort moto.txt del.txt | uniq -d > union.txt
sort moto.txt union.txt | uniq -u > difference.txt


uniq
-d : 元のファイルで繰り返し出現した行だけを出力
-u : 元のファイルで繰り返し出現しない行だけを出力
コメント1件

686
デフォルトの名無しさん[sage]   投稿日:2015/03/10 23:52:33  ID:wO0+V1lV.net
ファイル処理の問題かあ

500Mだけど1行のファイルの場合

687
681[sage]   投稿日:2015/03/11 11:56:44  ID:qwMaOuz+.net
>682
バグってたのでsage

688
デフォルトの名無しさん[sage]   投稿日:2015/03/12 05:22:58  ID:oUCLN3I3.net

689
デフォルトの名無しさん[sage]   投稿日:2015/03/12 20:59:36  ID:Df+IQ8v8.net(2)
>675
http://ideone.com/8J7SB3
C++。Cの方のisalnumを使うアイディアをパクらせてもらったらだいぶん短くなった。
扱いやすい中間形式に変換してパースしてます。正規表現なにそれおいしいの?Orz
白状すると正規表現わかりません。(ToT

こんな感じであってるかな?

690
デフォルトの名無しさん[sage]   投稿日:2015/03/12 21:22:48  ID:kfyJIopR.net
674のをjavascriptかphpかpythonでも頼む

691
デフォルトの名無しさん[sage]   投稿日:2015/03/12 21:45:39  ID:Df+IQ8v8.net(2)
>683 ha?

692
デフォルトの名無しさん[sage]   投稿日:2015/03/13 13:42:50  ID:aDdxIROK.net
2chの仕様変わったのか

693
デフォルトの名無しさん[sage]   投稿日:2015/03/13 15:35:01  ID:hdb/BW20.net
>675 javascript ( ES6 アロー関数使用 )

var i = 0, xs = ""
var alt = (l, r) => () => {
 var i2 = i
 return l() || (i = i2, r())
}
var many = p => () => {
 var i2 = i
 return (!p()) ? (i = i2, true) : many(p)()
}
var such = pred => () => (i < xs.length && pred(xs.charAt(i)) && (i++ , true))
var sym = s => () => (xs.indexOf(s, i) === i) && (i += s.length, true)
var join = (l, r) => () => (l() && r())
var many1 = p => join(p, many(p))
var between = (open, close, p) => join(join(sym(open), p), sym(close))

var text = many1(such(c => c !== "<" && c !== ">" && c !== "/"))
var b = between("<b>", "</b>", many(text))
var a = between("<a>", "</a>", many(alt(b, text)))
var data = many1(alt(alt(a, b), text))
var check = src => (xs = src, i = 0, console.log(data() && i === src.length ? 1 : 0))

check("<a>ruby<b>php</b>python</a><a><b></b></a><a></a>") // 1
check("<a>ruby<b>php</b>python</a><a></b></a><a></a>") // 0
check("<a>ruby<b>php</b>python</a><a><b></a><a></a>") // 0
check("<a>ruby<b>php</b>python</a><a><b></b></a><a>") // 0
check("vvvc<a>ruby<b>php</b>python</a><a><b></b></a><a></a>") // 1

694
デフォルトの名無しさん[sage]   投稿日:2015/03/13 17:02:03  ID:tCCzgFOI.net
パーサコンビネータってやつか。

695
デフォルトの名無しさん[sage]   投稿日:2015/03/13 20:22:12  ID:5+Y+ymKY.net
Live2chテスト

696
デフォルトの名無しさん[sage]   投稿日:2015/03/14 09:39:08  ID:dIU+dE4A.net

697
デフォルトの名無しさん[sage]   投稿日:2015/03/14 09:44:07  ID:CKcS8mmw.net
超高速ワロタ

698
デフォルトの名無しさん[sage]   投稿日:2015/03/14 11:09:27  ID:N6U7sObe.net
#include <stdio.h>
int main(void){
puts("179424673");
return 0;
}

出来る限りってことはプリプロセスとか何らかの方法でここまで持ってくるのが最低ラインとして
より速くするためには・・・

699
デフォルトの名無しさん[sage]   投稿日:2015/03/14 23:15:03  ID:2sFyhS5H.net
コンパイルタイム演算しかなくね?

700
デフォルトの名無しさん[sage]   投稿日:2015/03/14 23:29:49  ID:VNpI/kxi.net
お使いの言語であるメソッドが3秒以内に処理を返すをユニットテストを書いて下さい
コメント2件

701
デフォルトの名無しさん[sage]   投稿日:2015/03/15 00:02:38  ID:yuUWBvb7.net(3)
>700
ttp://ideone.com/mDtxqP
C++。口で説明するんだったらこんな感じだが、もっといいユニットツールが存在すると思う。
俺メインユニットだから、デバッガ眺めながら手動修正してるが。
それがVCを手放せない理由でもある。
コメント1件

702
デフォルトの名無しさん[]   投稿日:2015/03/15 00:08:13  ID:WZYV6Z2R.net
>700
君の日本語大丈夫?

703
デフォルトの名無しさん[sage]   投稿日:2015/03/15 00:52:45  ID:hbQPfywq.net
>701
どうでもいいけどassertな。
コメント1件

704
デフォルトの名無しさん[sage]   投稿日:2015/03/15 00:55:46  ID:6Edz2jsN.net
>148 Java
http://ideone.com/llfj8w

>202のコードを今更貼ってみるテスト

705
デフォルトの名無しさん[sage]   投稿日:2015/03/15 01:10:28  ID:yuUWBvb7.net(3)
>703
いつも迷うんだよ。どっちだっけなーって。
かき捨てだからうろ覚えでやった。反省はしていない。Orz

706
デフォルトの名無しさん[sage]   投稿日:2015/03/15 01:34:02  ID:yuUWBvb7.net(3)
あー、間に合ったので修正しておいた。

707
デフォルトの名無しさん[sage]   投稿日:2015/03/15 22:42:13  ID:61SsT7gm.net
点A,Bと線分ABの同じ距離で交差する点C,Dの座標を求めてください
ちなみに自分まだわかってませんw

http://jsfiddle.net/sj78k3am/7/
コメント3件

708
デフォルトの名無しさん[sage]   投稿日:2015/03/16 01:11:01  ID:MBZ0xd5q.net
>707
要するにABを底辺とする2つの正三角形の頂点を求めよってこと?

しかし酷い文章だなw
飛んだ先を見るまで何を言ってるのかまったく分からなかった。
コメント3件

709
706[sage]   投稿日:2015/03/16 09:35:55  ID:8YwSKdrn.net(2)
>708
あーそうそうゴメン
文章下手でスマン(汗

710
デフォルトの名無しさん[sage]   投稿日:2015/03/16 10:31:48  ID:jlR7htby.net(4)
atan2/sin/cos使う方法しか思いつかないから困る

711
デフォルトの名無しさん[sage]   投稿日:2015/03/16 11:24:35  ID:vTi+39xu.net
二次方程式とけばいいのやで

712
デフォルトの名無しさん[sage]   投稿日:2015/03/16 11:29:32  ID:jlR7htby.net(4)
頭悪いからわからないんやでorz

713
デフォルトの名無しさん[sage]   投稿日:2015/03/16 12:28:51  ID:jlR7htby.net(4)
var rad = Math.atan2(x2 - x1, y2 - y1);
var x3 = x1 + Math.sin(rad + 60 * (Math.PI / 180)) * r;
var y3 = y1 + Math.cos(rad + 60 * (Math.PI / 180)) * r;
var x4 = x1 + Math.sin(rad - 60 * (Math.PI / 180)) * r;
var y4 = y1 + Math.cos(rad - 60 * (Math.PI / 180)) * r;
drawCircle(x3, y3, 4, "#f00");
drawCircle(x4, y4, 4, "#f00");

var sqrt3 = Math.sqrt(3);
var cx = (x1 + x2) / 2;
var cy = (y1 + y2) / 2;
var x5 = cx - (y2 - y1) / 2 * sqrt3;
var y5 = cy + (x2 - x1) / 2 * sqrt3;
var x6 = cx + (y2 - y1) / 2 * sqrt3;
var y6 = cy - (x2 - x1) / 2 * sqrt3;
drawCircle(x5, y5, 2, "#0f0");
drawCircle(x6, y6, 2, "#0f0");

うん、あたまわるい
コメント2件

714
706[sage]   投稿日:2015/03/16 12:36:47  ID:8YwSKdrn.net(2)
あ、いや、思いつかない私より全然いいです(汗
ちなみに春休みの宿題ではありませんので

forkを押してもらえると別バージョンとして追記可能ですよ
勿論他の言語で解のみの表示も全然ありです

715
デフォルトの名無しさん[sage]   投稿日:2015/03/16 15:45:09  ID:gjop/0w3.net
pi/3 と -pi/3 回せば良い

716
デフォルトの名無しさん[sage]   投稿日:2015/03/16 16:36:14  ID:zcXVR0aC.net(3)
http://jsfiddle.net/c6jbo6w5/3/
>713の方法ってこうか?
三角関数で回す方法しかわからなかった。

717
デフォルトの名無しさん[sage]   投稿日:2015/03/16 16:40:55  ID:zcXVR0aC.net(3)
C++でGUIはきついのでこのサービスいいなー。
デバッグ大変だけど、文字表示できるから根性でデバッグするしかないな。LOL

718
デフォルトの名無しさん[sage]   投稿日:2015/03/16 18:04:00  ID:jlR7htby.net(4)
>713の下段を解りやすいように書こうとしたが変わらんね
http://jsfiddle.net/04tqbabk/2/

719
デフォルトの名無しさん[sage]   投稿日:2015/03/16 20:27:03  ID:VGc0qM86.net
if( 階.在( "D:/temp/" ) == 否 ) 階.作( "D:/temp/" );

なんかいまいちだな

720
デフォルトの名無しさん[sage]   投稿日:2015/03/16 20:51:19  ID:etHn2x+s.net
お題:
UCS4コードをutf-8に変換するプログラムを及びその逆関数を書け。


(今、必要があって書いてるところ)
コメント1件

721
デフォルトの名無しさん[sage]   投稿日:2015/03/16 21:15:34  ID:zcXVR0aC.net(3)
VCだとめんどい。UCS4ってASCIIのレンジだよね。
GCCあたりだと、u8'a'ってやればウニコードなるはずなんだけど。
それをMapあたりに食わせてやれば変換自体は楽なんだけど、プラットフォームに備わってないのでパス。
それにそれは本来標準ライブラリとかに入ってるべきだろう。

722
デフォルトの名無しさん[sage]   投稿日:2015/03/17 01:01:40  ID:02ciAWXG.net(4)

723
デフォルトの名無しさん[sage]   投稿日:2015/03/17 15:33:30  ID:+ROms8Zy.net(5)
>722
すまん、お題の書き方が曖昧だった。
単に文字コードが与えられたらそれをUTF-8の2文字や3文字に変換するという
のが題意だった。申し訳ない。

724
デフォルトの名無しさん[sage]   投稿日:2015/03/17 15:42:05  ID:+ROms8Zy.net(5)
>720
C
https://ideone.com/59YnQF
5バイト、6バイトの場合は省略。
片方向のみ。とりあえず。
GCCのライブラリにあるんかいなぁ?
コメント1件

725
デフォルトの名無しさん[sage]   投稿日:2015/03/17 16:00:48  ID:02ciAWXG.net(4)
>723
そうしてるんだけど・・・
テストコードの箇所変えたよ
出力のところ見てくれ
http://ideone.com/mICUp4

726
デフォルトの名無しさん[sage]   投稿日:2015/03/17 16:09:14  ID:02ciAWXG.net(4)
>724
で出題者のレベルを察したのでこれ以上は言わない

727
デフォルトの名無しさん[sage]   投稿日:2015/03/17 16:34:35  ID:+ROms8Zy.net(5)
まあ、そういうなよ。言語処理系をUnicode対応にするのに
不慣れなCで四苦八苦している。
Windowsではそもそもコンソールがunicode向きではないので
苦労している。

728
デフォルトの名無しさん[sage]   投稿日:2015/03/17 16:37:46  ID:bib3wHS8.net
C++
http://ideone.com/4ALTDl

標準ライブラリで楽勝・・・のはずだがideoneではヘッダが読み込めない

729
デフォルトの名無しさん[sage]   投稿日:2015/03/17 16:39:13  ID:+ROms8Zy.net(5)
一応、動いたのでC++のコードを参考に洗練させるよ。
コメント1件

730
デフォルトの名無しさん[sage]   投稿日:2015/03/17 17:08:47  ID:02ciAWXG.net(4)
>729
コードの質とかじゃなくideoneでCのコードなのにJavaで張ってる所とかその関数の使ったサンプルすら書いてないのがね
あと実用にするなら環境が許せばcodecvt使った方がいいよ

731
デフォルトの名無しさん[sage]   投稿日:2015/03/17 17:14:59  ID:+ROms8Zy.net(5)
ああ、そういうことか。
普段、超マイナー言語しか使わないのでideoneでまともに動かないんだ。
ライブラリを探すより自分で書いた方が早いかもと思ったもので。
codecvtか。

732
デフォルトの名無しさん[sage]   投稿日:2015/03/17 22:37:44  ID:HmgYB+Xw.net
>685
可変長バッファを固定長にしたらちょっとは早くなるのかなぁ
コメント1件

733
706[sage]   投稿日:2015/03/18 12:57:28  ID:KRBoHZKS.net
回答してくださった方々どうも、自分ももう少し
計算幾何の事勉強してみます。

http://jsfiddle.net/6pb0mqqp/
こういうのはpaper.jsとか使えば早いんだろうけど
それでは勉強になりませんよね(汗

734
デフォルトの名無しさん[]   投稿日:2015/03/20 11:11:34  ID:K1QvfZng.net
お題:辺の長さが整数の長方形がある。長辺の長さは短辺の長さより6大きい。
この長方形の面積が与えられたとき長辺の長さ求める。

735
デフォルトの名無しさん[sage]   投稿日:2015/03/20 11:20:26  ID:wFOg5cKF.net
整数ってことはループして1からあたるのが早いな

736
デフォルトの名無しさん[sage]   投稿日:2015/03/20 12:25:08  ID:/igQYEhI.net(2)
l(l-6) = (l-3)^2 + 9 = S

∴l = √(S -9) + 3

737
デフォルトの名無しさん[sage]   投稿日:2015/03/20 12:29:30  ID:/igQYEhI.net(2)
あ、符号が違うなw

738
デフォルトの名無しさん[sage]   投稿日:2015/03/20 12:35:36  ID:4/NnHRAl.net
プログラムを使うまでもなかったね

739
デフォルトの名無しさん[]   投稿日:2015/03/21 16:48:04  ID:qCyHbsLB.net
>732
sortで遅いのならawkを使えば
コメント1件

740
デフォルトの名無しさん[sage]   投稿日:2015/03/22 12:59:12  ID:xanshObH.net(5)
>684 C++
http://ideone.com/sC1HyX
>739
を受けてmapを使ってみた
コメント1件

741
デフォルトの名無しさん[sage]   投稿日:2015/03/22 13:04:32  ID:xanshObH.net(5)
と思ったら仕様を満たしてなかった

742
706[sage]   投稿日:2015/03/22 13:12:12  ID:+U+vfFwl.net(3)
http://jsfiddle.net/foobarboo/dxtsfd7s/

管理が面倒なんでとりあえず垢作った。
そのうちタートルグラフィックやフラクタル、曲線の補間法とかも試してみよう

743
707[sage]   投稿日:2015/03/22 13:56:24  ID:+U+vfFwl.net(3)
すみません。>708でしたw

2chの仕様変更の影響でSCの方からみてるから間違えたかな?
コメント1件

744
デフォルトの名無しさん[sage]   投稿日:2015/03/22 13:57:26  ID:xanshObH.net(5)
>740
あれ?sortしてから連続した行を出力するならこれでいいの?

745
デフォルトの名無しさん[sage]   投稿日:2015/03/22 14:03:09  ID:xanshObH.net(5)
やっぱり色々だめでした。

746
デフォルトの名無しさん[sage]   投稿日:2015/03/22 14:03:49  ID:xPoW41or.net
>743
どうでもいいけど706で合ってると思う。
だって>708は私ですw
コメント1件

747
デフォルトの名無しさん[sage]   投稿日:2015/03/22 14:06:52  ID:+U+vfFwl.net(3)
>746
あ、本当だwやっぱりscで見てるからずれたのか
jimのおかげで色々面倒になった・・・


748
デフォルトの名無しさん[sage]   投稿日:2015/03/22 14:16:01  ID:t93Sz0z/.net
串使えばいいじゃない

749
デフォルトの名無しさん[sage]   投稿日:2015/03/22 14:24:06  ID:xanshObH.net(5)
自信がないので>684さんの答え合わせを待ってみる

750
デフォルトの名無しさん[sage]   投稿日:2015/03/24 02:02:55  ID:dFQCthj3.net(2)
>696 J
p:1e7-1
179424673
p:1e8-1
2038074743
p:1e9-1
|limit error
| p:1000000000-1

751
デフォルトの名無しさん[sage]   投稿日:2015/03/24 19:29:13  ID:1OPYZFvy.net
>696 Squeak Smalltalk

(Integer primesUpTo: 180000000) at: 10000000 "=> 179424673 "

Core i7-4650U 1.7-2.3GHz で 7.5 秒。

752
デフォルトの名無しさん[sage]   投稿日:2015/03/24 23:31:02  ID:dFQCthj3.net(2)
>707 J
点を複素数で表してyってみた

f =: 3 : 0
e =. -: +/ y
e + (%: 3) * 0j1 * y - e
)


f 2j0 4j0
3j_1.73205 3j1.73205

f 1j1 5j5
6.4641j_0.464102 _0.464102j6.4641

f 5j_3 _2j1
4.9641j5.06218 _1.9641j_7.06218

753
デフォルトの名無しさん[sage]   投稿日:2015/03/25 11:36:00  ID:Z77MlZqb.net(2)
>707 Squeak Smalltalk

| fn |
fn := [:x :y | Float pi / 3 * #(1 -1) collect: [:theta | (y - x rotateBy: theta about: 0@0) + x]].

fn value: 2@0 value: 4@0.
"=> {3.0@ -1.732050807568877 . 3.0@1.732050807568877} "

fn value: 1@1 value: 5@5.
"=> {6.464101615137755@ -0.464101615137754 . -0.464101615137754@6.464101615137755}"

fn value: 5@ -3 value: -2@1.
"=> {4.964101615137754@5.06217782649107 . -1.964101615137754@ -7.06217782649107} "
コメント1件

754
デフォルトの名無しさん[sage]   投稿日:2015/03/25 12:09:43  ID:Z77MlZqb.net(2)
>753 差し替え。orz

| fn |
fn := [:A :B | Float pi / 3 * #(1 -1) collect: [:theta | B rotateBy: theta about: A]].

755
デフォルトの名無しさん[sage]   投稿日:2015/03/25 17:03:41  ID:80U2ZB0Y.net
知ってのとおり表計算のセルを参照するときに"A"とか"AD"とか使われる。
アルファベットは全部で26文字。"Z"の次は"AA"となる。
0番目は無い。

"DBA"は何番目の列になるか?
125番目はどのような文字列になるか?
関数と逆関数を作って答えを出せ
コメント14件

756
デフォルトの名無しさん[sage]   投稿日:2015/03/25 17:13:56  ID:N4cEhh/y.net
基数変換ですか?

757
デフォルトの名無しさん[sage]   投稿日:2015/03/25 17:36:48  ID:6iAVibo4.net(2)
ずいぶん前に書いたことあるわこれ
ゼロがないから単純な26進数じゃないんだよねw

758
デフォルトの名無しさん[sage]   投稿日:2015/03/25 18:22:21  ID:H06Hko84.net(2)
26進計算でいいだろう。
A=0, B=1, …, Y=24, Z=25
として、
・文字→数値:変換後 +1
・数値→文字:数値-1後文字に

759
デフォルトの名無しさん[]   投稿日:2015/03/25 18:23:32  ID:H06Hko84.net(2)
間違いた。
それじゃ AA = 1 になっちゃうん

760
デフォルトの名無しさん[sage]   投稿日:2015/03/25 18:42:50  ID:6iAVibo4.net(2)
うん。
最下位桁だけ特別扱いする必要がある。

761
デフォルトの名無しさん[sage]   投稿日:2015/03/25 19:12:14  ID:vt8qdq9T.net
>755 Squeak Smalltalk

| decode encode |
decode := [:code |
 (26 raisedTo: (0 to: code size - 1)) sum asInteger
 + (code reversed asByteArray - 65 polynomialEval: 26)
].

encode := [:N |
 | size M digits |
 size := 0.
 [N >= (M := 26 raisedTo: size)] whileTrue: [N := N - M. size := size + 1].
 digits := (N radix: 26) forceTo: size paddingStartWith: $0.
 ((digits asArray collect: #digitValue) + 65) asByteArray asString
].

decode value: 'A'. "=> 1 "
decode value: 'Z'. "=> 26 "
decode value: 'AA'. "=> 27 "
decode value: 'DBA'. "=> 2757 "

encode value: 2757. "=> 'DBA' "
encode value: 125. "=> 'DU' "
コメント1件

762
デフォルトの名無しさん[sage]   投稿日:2015/03/25 22:59:35  ID:ovi4DFcr.net
>761
c++
でもお願いします。
コメント1件

763
デフォルトの名無しさん[sage]   投稿日:2015/03/25 23:20:07  ID:proRqoBt.net
お願いしますてw

764
デフォルトの名無しさん[sage]   投稿日:2015/03/26 00:09:26  ID:YojhVKRt.net(4)

765
デフォルトの名無しさん[sage]   投稿日:2015/03/26 00:35:11  ID:DVfty8jF.net(4)
ZZZが復号できないよ〜。
なんでだよ〜。
難しいなぁ・・・。
コメント1件

766
デフォルトの名無しさん[sage]   投稿日:2015/03/26 01:07:30  ID:7QpaiPyE.net

767
デフォルトの名無しさん[sage]   投稿日:2015/03/26 01:23:17  ID:YojhVKRt.net(4)
>765
ありゃ本当だ
>764 sageます

768
デフォルトの名無しさん[sage]   投稿日:2015/03/26 01:29:35  ID:DVfty8jF.net(4)
なんで1起点なんだよ。0起点にしてくれよ〜。(TT
境界線系のエラーがとれねー。

769
デフォルトの名無しさん[sage]   投稿日:2015/03/26 01:56:14  ID:DVfty8jF.net(4)
>755
http://ideone.com/MGjJTI
C++。4時間位涙目になりながら作った。賃金払ってくれ。
まぁ、冗談だが。超汚くなった。
もう触りたくない(TT
コメント1件

770
デフォルトの名無しさん[sage]   投稿日:2015/03/26 02:14:36  ID:YojhVKRt.net(4)

771
デフォルトの名無しさん[sage]   投稿日:2015/03/26 02:17:23  ID:YojhVKRt.net(4)
>770 C

772
デフォルトの名無しさん[sage]   投稿日:2015/03/26 02:46:29  ID:wzg/LgHT.net

773
デフォルトの名無しさん[sage]   投稿日:2015/03/26 04:54:36  ID:CAW+eRdC.net
>755 Io
a2n := method(a,
n := 0
a foreach(v, n = n * 26 + v - 64)
n
)

n2a := method(n,
a := ""
while(n > 0,
a = ((n - 1) % 26 + 65) asCharacter .. a
n = ((n - 1) / 26) floor
)
a
)

Io> a2n("DBA")
==> 2757

Io> n2a(125)
==> DU

774
デフォルトの名無しさん[sage]   投稿日:2015/03/26 04:59:01  ID:xiBnTdtx.net

775
デフォルトの名無しさん[sage]   投稿日:2015/03/26 09:30:07  ID:qBGRNxEY.net
関係ないけどIdeoneのドメイン名見る度にイデオン連想してしまう俺はおっさんw
正に思考結果の集合体だわ

776
デフォルトの名無しさん[sage]   投稿日:2015/03/26 13:36:12  ID:fp05WbSk.net
普通でしょ。俺もイデオンて読んでる

777
デフォルトの名無しさん[]   投稿日:2015/03/26 13:46:54  ID:IJASSi0s.net
イデオンとは?

NHK海外ドラマ「ミステリアスアイランド」のギデオンを思いだしてけど、そういうのはオレだけだろうな。

778
デフォルトの名無しさん[sage]   投稿日:2015/03/26 15:34:58  ID:8HDliiWB.net
アイディーイーワン

779
デフォルトの名無しさん[sage]   投稿日:2015/03/26 18:05:27  ID:DVfty8jF.net(4)
イデポン宮森発動編

780
デフォルトの名無しさん[sage]   投稿日:2015/03/27 01:00:23  ID:JGziY7id.net

781
デフォルトの名無しさん[sage]   投稿日:2015/03/28 14:14:49  ID:XLghex9W.net(2)
>774さんや他の人のコードを読んでて思ったが、やはりシンプルなロジックには数学的な考えが必要なのかな
コメント1件

782
デフォルトの名無しさん[sage]   投稿日:2015/03/28 15:23:44  ID:ouLE6oGR.net
>781
数学も役に立つけど、シンプルさのためには、計算モデルについて描いた、以下の本がおすすめ。

Concepts, Techniques, and Models of Computer Programming
「コンピュータプログラミングの概念・技法・モデル」
コメント1件

783
デフォルトの名無しさん[sage]   投稿日:2015/03/28 15:57:51  ID:XLghex9W.net(2)
>782
869ページってすごいボリュームですね。
羊数える代わりに読んでみようかな。ありがとう。

784
765[sage]   投稿日:2015/03/28 18:08:05  ID:p+oUvV+T.net
>769
負けた‥5時間だ、そんな時間間隔や意識がまったくないのは、なにか悪い病気なのかもしれない
コメント1件

785
デフォルトの名無しさん[sage]   投稿日:2015/03/28 18:48:13  ID:LEMMFsQ5.net(2)

786
784[sage]   投稿日:2015/03/28 19:01:01  ID:LEMMFsQ5.net(2)
ドキュメントセンターで関数探しながら、15分で。

http://reference.wolfram.com/language/

787
デフォルトの名無しさん[sage]   投稿日:2015/03/28 21:35:26  ID:WrLMXSwN.net
>784
それだけ集中してたんでしょ。よくあるさ。
>785
単純変換なら30分でできたんだけど、そこからバグを二つも見つけてしまって泥沼・・・。Orz

788
デフォルトの名無しさん[sage]   投稿日:2015/03/29 20:40:40  ID:oTCwOtrh.net
>755
C#
http://ideone.com/RswjZk
これで合ってる?
コメント1件

789
デフォルトの名無しさん[sage]   投稿日:2015/03/30 01:26:13  ID:+lKo0XBW.net(3)
>755 Octave
function n = a2n(a)
n = polyval([a - 64], 26);
end

function a = n2a(n)
a = "";
while n > 0
a = [mod(n - 1, 26) + 65, a];
n = fix((n - 1) / 26);
end
end

> a2n("DBA")
ans = 2757

> n2a(125)
ans = DU

790
デフォルトの名無しさん[sage]   投稿日:2015/03/30 17:27:10  ID:+lKo0XBW.net(3)
>755 Julia
function a2n(a)
n = 0
for i= 1:length(a)
n = n * 26 + int(a[i]) - 64
end
return n
end

function n2a(n)
a = ""
while n > 0
a = string(char((n - 1) % 26 + 65)) * a
n = div(n - 1, 26)
end
return a
end

julia> a2n("DAB")
2732

julia> n2a(125)
"DU"

791
デフォルトの名無しさん[sage]   投稿日:2015/03/30 19:53:36  ID:ijMma7CQ.net
このネタでゴルフするならString.succでRubyが強いのかな

792
デフォルトの名無しさん[sage]   投稿日:2015/03/30 22:17:59  ID:vDmNFgKG.net(2)
小ネタをひとつ
お題:
10進法表示で4桁の自然数がある
その数の千の位の数を一の位にもってきた数は、もとの数の 3/4 倍に1を加えた数に等しいという
その数は?
コメント4件

793
デフォルトの名無しさん[sage]   投稿日:2015/03/30 22:22:49  ID:J389JLUs.net(2)
お題:入力された分数を記録して昇順ソート後に出力。

 I> 1/2
 O> '1/2'
 I> 1/3
 O> '1/3' '1/2'
 I> 2/3
 O> '1/3' '1/2' '2/3'

次の条件は取捨選択自由です。

a. 帯分数(1 1/2等)の入出力に対応。
 I> 1 1/3
 O> '1 1/3'

b. 等しい値をグループ化して出力。
 O> '1/3' ('2/4' '1/2')

c. 仮分数(2/2, 3/2等)の入力を帯分数または整数に変換してから出力。
 I> 2/2
 O> '1'
 I> 3/2
 O> '1' '1 1/2'
 I> 4/2
 O> '1' '1 1/2' '2'
コメント9件

794
デフォルトの名無しさん[sage]   投稿日:2015/03/30 22:29:54  ID:AInhYm7h.net

795
デフォルトの名無しさん[sage]   投稿日:2015/03/30 22:45:23  ID:s5ciux35.net(2)
>792は存在するのか?

796
デフォルトの名無しさん[sage]   投稿日:2015/03/30 22:51:21  ID:gWRpw4Dc.net
>792
http://ideone.com/4FpVad
C++。答えなかったんだけど、このコードあってるか?
返答求む。
コメント1件

797
デフォルトの名無しさん[sage]   投稿日:2015/03/30 23:00:24  ID:J389JLUs.net(2)
>793
条件c. に約分を追加します。
 I> 2/8
 O> '1/4'
 I> 9/6
 O> '1/4' '1 1/2'
コメント1件

798
デフォルトの名無しさん[sage]   投稿日:2015/03/30 23:06:54  ID:vDmNFgKG.net(2)
>796
>(i / 1000) == static_cast<std::uint64_t> ...

問題文が悪かったかな?
>その数の千の位の数を一の位にもってき
て元の一の位の数を十の位に、十の位の数を百の位に、百の位の数を千の位にシフトさせた数は

とさせてほしい。
コメント4件

799
デフォルトの名無しさん[sage]   投稿日:2015/03/30 23:12:55  ID:yIGGY1Mf.net
>798
プログラマならローテイトって言ってよそういうのw

800
デフォルトの名無しさん[sage]   投稿日:2015/03/30 23:13:29  ID:s5ciux35.net(2)

801
デフォルトの名無しさん[sage]   投稿日:2015/03/30 23:44:44  ID:+lKo0XBW.net(3)
>792 >798 Julia
julia> for i=1000:9999 if i*3/4+1==i%1000*10+div(i,1000) println(i)end end
4324

802
デフォルトの名無しさん[sage]   投稿日:2015/03/31 00:08:17  ID:mOW7a5j3.net(7)
>793
http://ideone.com/K4Dcri
C++。>797はやってない。C++は最大公約数を出すのの面倒なんだよ。
GCDがライブラリに入ったらやってくれ。
コメント2件

803
デフォルトの名無しさん[sage]   投稿日:2015/03/31 00:20:19  ID:9BMi81XW.net(2)
>793 Java
http://ideone.com/T9g2Ea

>802
下はjavaだが
> int gcd(int a, int b) { return b == 0 ? a : gcd(b, a % b); }
コメント2件

804
デフォルトの名無しさん[sage]   投稿日:2015/03/31 00:23:22  ID:mOW7a5j3.net(7)
>792 >798
http://ideone.com/gQvg47
C++。これであってるかな?

805
デフォルトの名無しさん[sage]   投稿日:2015/03/31 00:26:02  ID:9BMi81XW.net(2)
>802
てかソートするところ整数型の除算で切り捨てられてちゃんとソートできてないんじゃね?
コメント1件

806
デフォルトの名無しさん[sage]   投稿日:2015/03/31 00:36:37  ID:mOW7a5j3.net(7)
>793
http://ideone.com/DIYIrK
C++。>803のGCDパクって実装した。適当に実装したので間違ってるかも。
グルーピングはめんどくさいのでやってない。
std::map<double,std::vector<Data>>とかやればできるけど、今日は無理。

807
デフォルトの名無しさん[sage]   投稿日:2015/03/31 00:39:40  ID:mOW7a5j3.net(7)
>805
言われてからシレっと直しておいた。Orz

808
デフォルトの名無しさん[sage]   投稿日:2015/03/31 02:11:11  ID:XpnSzaSp.net(2)
>793
CLISPで。
(let ((x
'()))
(loop
(print `i>)
(let((w
(eval(read))))
(setq x(cons w x)))
(print `o>)
(print (sort x #'<) )
))

実行例:
I> 1/2
(1/2)
I> 4/1
(1/2 4)
I> 2/2
(1/2 1 4)
I> 6/4
(1/2 1 3/2 4)
I> 1
(1/2 1 1 3/2 4)
I> 3 4/5
(1/2 1 1 3/2 3 4)
(1/2 4/5 1 1 3/2 3 4)

809
デフォルトの名無しさん[sage]   投稿日:2015/03/31 07:55:54  ID:j73ohXrG.net(2)
>793 Io
f:=method(x,x sortBy(block(a,b,doString(a)<doString(b))))

Io> f(list("1/2","1/3","2/3"))
==> list("1/3", "1/2", "2/3")

810
デフォルトの名無しさん[sage]   投稿日:2015/03/31 09:10:17  ID:GGQhc+lc.net
>793 C
http://ideone.com/3ghkXS
無駄に長くてすんません

811
デフォルトの名無しさん[sage]   投稿日:2015/03/31 12:40:09  ID:mOW7a5j3.net(7)
>793
http://ideone.com/CNRO9H
C++。グルーピング対応?
>803には、GCDありがとう。っていうの忘れてた。ありがとう。

812
デフォルトの名無しさん[sage]   投稿日:2015/03/31 12:57:53  ID:PVjNVX85.net
>793 Squeak Smalltalk

| dict sorted input |
dict := Dictionary new.
sorted := [(dict associations sortBy: [:a :b | a key < b key]) asArray
 collect: [:assoc | assoc value size = 1
  ifTrue: [assoc value anyOne] ifFalse: [assoc value asArray]]].
[(input := FillInTheBlank request: sorted value asString) notEmpty] whileTrue: [
 | elems value |
 elems := input findTokens: ' /'.
 value := elems size caseOf: {
  [1]->[elems first asInteger].
  [2]->[elems first asInteger / elems last].
  [3]->[elems second asInteger / elems third + elems first]}.
 value >= 1 ifTrue: [
  true caseOf: {
   [value isInteger]->[input := value asString].
   [value isFraction]->[
    input := value truncated asString, ' ',
     (value - value truncated) asString unparenthetically]}].
 (dict at: value ifAbsentPut: Set new) add: input].
^sorted value

入力 => 出力
1/2 => #('1/2')
1/3 => #('1/3' '1/2')
2/3 => #('1/3' '1/2' '2/3')
1 1/3 => #('1/3' '1/2' '2/3' '1 1/3')
2/4 => #('1/3' #('1/2' '2/4') '2/3' '1 1/3')
2/2 => #('1/3' #('1/2' '2/4') '2/3' '1' '1 1/3')
3/2 => #('1/3' #('1/2' '2/4') '2/3' '1' '1 1/3' '1 1/2')
4/2 => #('1/3' #('1/2' '2/4') '2/3' '1' '1 1/3' '1 1/2' '2')

813
デフォルトの名無しさん[sage]   投稿日:2015/03/31 17:56:37  ID:86+ozzAp.net
このスレ見てると可読性ってものに価値を置かないプログラマが
いまだにいかに多いか痛感するなw
コメント2件

814
デフォルトの名無しさん[sage]   投稿日:2015/03/31 17:57:23  ID:mOW7a5j3.net(7)
どこらへん?
知らない言語だったら可読性もなんもないぞ。

815
デフォルトの名無しさん[sage]   投稿日:2015/03/31 18:52:51  ID:jIkoyFTK.net
どうすれば可読性があがるのだろう?

816
デフォルトの名無しさん[sage]   投稿日:2015/03/31 18:59:19  ID:mOW7a5j3.net(7)
俺は変数の多重使用はしないようにしてる。
意味が変わったら新しく宣言してる。変数名適当だけど。
あと、変数は減らすようにしてる。
それと、基本的に細かいことはデータ構造にお任せしてるかな。
クイックソート手で書けない人だからね俺。

817
デフォルトの名無しさん[sage]   投稿日:2015/03/31 19:07:48  ID:XpnSzaSp.net(2)
>813
可読性のあるものに書き換えて見せなよ。
それも出来ないでイチャモンだけじゃあるまい?

818
デフォルトの名無しさん[sage]   投稿日:2015/03/31 19:49:51  ID:Ap5TJl/7.net(3)
>813
まあ、こんな短いソースだとなあ
可読性意識しなくても十分に可読的なものが多いような
それをいちいち時間をかけて構造化的記述とか変数名の一意性を確保とかやるとメンドイし、記述量が増えてかえって読むのに時間がかかる!って場合もあるぞ
記述を構造化する訓練目的なら別だが、ここはそういうスレじゃないし

というわけで、リーダビリティというのは実践上は「固定的な記述規則の適用」とはちょいちがうよ

819
デフォルトの名無しさん[sage]   投稿日:2015/03/31 20:02:37  ID:/tmN4sxh.net
AA職人的なものを求めてるんじゃないの?

820
デフォルトの名無しさん[sage]   投稿日:2015/03/31 20:04:11  ID:Ap5TJl/7.net(3)
次の例なんか、読む人の力量によって、読みやすいか読みにくいかが別れる例だな

(progn
(setq x 10) (setq y 20) ;環境
(defmacro /m (x y)
(list '+ x 'x y 'y)) ;マクロ定義
(/m (* 2 3 ) 1)) ;マクロ適用

ちなみに走らせてないけど結果は37のはず
ま、一般論から言えば変数の使い方はクソだけど
コメント1件

821
デフォルトの名無しさん[sage]   投稿日:2015/03/31 20:06:54  ID:Ap5TJl/7.net(3)
>820
誤 変数
正 変数名

822
デフォルトの名無しさん[sage]   投稿日:2015/03/31 23:08:41  ID:j73ohXrG.net(2)
豆電球を点灯させたいとき私の場合、乾電池に手で線をおえてつないで
ああ点いた、で満足している気がする。
ちゃんとケースに入れてスイッチつけて商品名も付けないと嫌だとう人も
いるだろうけど。
コメント1件

823
デフォルトの名無しさん[sage]   投稿日:2015/04/01 02:42:37  ID:lJt3I89n.net
自分も動けばいい。動かすときにバグさえ出なければOK。
そのための施策もやってるはず。
コメント1件

824
デフォルトの名無しさん[sage]   投稿日:2015/04/01 03:28:23  ID:Oi1NEZSS.net
あわよくば商品名まで付けたい派だけどシンプルさを維持するのがむずかしい。
豆電球もシャンデリアもどっちも好きかな自分は。

825
デフォルトの名無しさん[sage]   投稿日:2015/04/01 20:25:32  ID:4GC0YTad.net
題意を満たすことのみを目的として
晒す前にわざわざそれ以外の部分を削ったりしてる

826
デフォルトの名無しさん[sage]   投稿日:2015/04/01 21:19:06  ID:uAmxK3gz.net
>822
場合によって電球がつかないようなこと(>823)をするのはマズいが
確実につく手順を踏んでいるなら良いんだよ

827
デフォルトの名無しさん[sage]   投稿日:2015/04/01 21:58:41  ID:+Gvnwt7L.net
何の話をしてるのか訳わからんが、

>確実につく手順を踏んでいるなら
だから誰がそれを保証するんだよw

可読性に無頓着なコーダーって自分の主観で十分だと思ってるんだろうね。
俺はそう思わないから、後から自分や他人が検証しやすくなるように可読性に気を使う。
コメント1件

828
デフォルトの名無しさん[sage]   投稿日:2015/04/01 23:45:20  ID:RZ2eoSfu.net
こんな独りよがりで終わるようなところで可読性とか考えたってしょうがないだろ

829
デフォルトの名無しさん[sage]   投稿日:2015/04/02 00:01:50  ID:gJpqUGiZ.net
>827
あははははは
スレチ

俺はリーダビリティ講座を何年もしていたけれど、こんなスレでリーダビリティ云々述べる気はないな
こんな短く、そして、あくまでアルゴリズムアイデアを問題とするスレでリーダビリティ!!
あたまおかしいんじゃね?

830
デフォルトの名無しさん[sage]   投稿日:2015/04/02 00:15:17  ID:Rb/VTf7B.net
そういえばリーダビリティなお題ってのは出てないな

831
デフォルトの名無しさん[sage]   投稿日:2015/04/02 06:58:53  ID:mly0Vlsl.net
お題:以下の問題提起に対してリーダビリティを優先したコードを示せ、コードの実際の内容は適宜定めよ
推薦図書/必読書のためのスレッド 76 ,141
コメント7件

832
デフォルトの名無しさん[sage]   投稿日:2015/04/03 00:06:55  ID:4xe5j0Xk.net

833
片山博文MZ ◆T6xkBnTXz7B0 [sage]   投稿日:2015/04/03 00:26:57  ID:d2wNb10R.net(2)
お題:n次元ベクトル空間VにおいてVの基底をなすn個のベクトルv_1,...,v_nが与えられているとき、
V上の二点をいくつかの連続した最短の線分で結べ。
ただし、線分はそれぞれ、基底をなすベクトルの一つと平行である。

834
デフォルトの名無しさん[sage]   投稿日:2015/04/03 00:30:52  ID:QvsW2vdT.net
プログラム以前に問題が何言ってんだこいつ状態

835
片山博文MZ ◆T6xkBnTXz7B0 [sage]   投稿日:2015/04/03 00:54:31  ID:d2wNb10R.net(2)
ごめん。言い替える。

お題:平面上の異なる二点を結ぶ、二つの連続した最短の線分を求め、それらの始点と終点の組を出力せよ。
ただし、それぞれの線分は、与えられた2個の1次独立なベクトルv_1,v_2のいずれかと平行である。

836
デフォルトの名無しさん[sage]   投稿日:2015/04/03 01:24:26  ID:dleY0YhY.net(3)
点Aからベクトルv_1と平行に線を伸ばす
点Bからベクトルv_2と平行に線を伸ばす
交差した場所を調べる

だけでいいんかね

837
デフォルトの名無しさん[sage]   投稿日:2015/04/03 01:39:23  ID:tvdSBltH.net(2)
*「2個の1次独立なベクトルv_1,v_2」が平行な場合解なし
*「平面上の異なる二点を結ぶ」直線と「ベクトルv_1,v_2のいずれか」が平行な場合解が無限に存在する

838
デフォルトの名無しさん[sage]   投稿日:2015/04/03 01:42:45  ID:tvdSBltH.net(2)
ああ1次独立だったな
まあいいか

839
デフォルトの名無しさん[sage]   投稿日:2015/04/03 02:17:29  ID:dsV57OoU.net(10)
>831
http://ideone.com/lTOnWX
多分C。こういうコードって読みやすいと思う?
C++は楽だなー。
コメント4件

840
デフォルトの名無しさん[sage]   投稿日:2015/04/03 03:45:15  ID:dsV57OoU.net(10)
ちょ、誰か反応してよ。
Ping!Ping!!

841
デフォルトの名無しさん[sage]   投稿日:2015/04/03 04:41:45  ID:KTkPgi8n.net(3)
>839
見やすいけど、個人的に
・構造体 Memory を扱う関数だから Memory_XXXX(); みたいな名前にしてほしい
・ConstructMemory(); は Memoryをコピーで返すのではなく、他の関数同様
  bool ConstructMemory(Memory *M, size_t Length, size_t ElementSize);
 のようにMemory構造体へのポインタを渡した方が見やすい
・main()でM.Memoryにアクセスするつもりなら、IsMemoryNull(); 必要?

ちなみにMemory構造体を文字列(char *)だけにしか使わないなら良いけど、
汎用で使いたいなら、要素elementのために確保されている数 Lengthの他に、
データとして有効なelement数もメンバにあった方がいいと思う。というか必要
コメント3件

842
デフォルトの名無しさん[sage]   投稿日:2015/04/03 05:09:14  ID:dsV57OoU.net(10)
>841
こういう感じが読みやすいのかな。
型にはまってて自分はあんまり好きじゃないんだけど。
エレメント数がlengthで全体サイズ取りたいときは、Length*ESizeする。
IsMemoryNullはまぁ、無いよりまし程度。
ConstructMemoryがコピーを返すのは、ポインタ渡しだと解放とか書かないといけないので面倒だった。
コピーでも速度以外の副作用ってほぼないからこれがベターだと思っている。
命名規則は、ムーブ->コンテキストの感じで書いている。これは癖なので何とも。
まぁ、インテリセンスには乗りにくいかもね。

まぁ、反論ばっかしててもしょうがないので、ちょっと考えてみる。
ご意見ありがとう。
コメント2件

843
デフォルトの名無しさん[sage]   投稿日:2015/04/03 05:26:33  ID:+nPn+M4W.net(3)
>841
うわぁぁぁぁ!

やっぱり精神病だろ
「僕の意味の感性にあう規則が宇宙の普遍なんだもん」
コメント1件

844
デフォルトの名無しさん[sage]   投稿日:2015/04/03 05:28:19  ID:+nPn+M4W.net(3)
この精神病のせいでスレが汚れる汚れる
何にファシズムやってんだ、この馬鹿

845
デフォルトの名無しさん[sage]   投稿日:2015/04/03 05:37:48  ID:+nPn+M4W.net(3)
>841
この阿呆のリーダビリティとは単に変数の命名規則を指しているのか!
構文の記述スタイルと制御記述こそがリーダビリティの核だろうに。
一意的に意味をとりうる名前にしか言及してないんじゃないか!!
まるでアホ学生が
「英語力を上げるには使える単語を増やすことだ」
と言うに等しい物を感じるな

全く、精神病はメンヘルスレで語ってろよ。長年リーダビリティをうるさく言ってきた俺だが、こんなリーダビリティ自体が自己目的化している主張は初めて見た
誰が従うか、ファシズム野郎
どあほ

846
デフォルトの名無しさん[sage]   投稿日:2015/04/03 05:55:12  ID:dsV57OoU.net(10)
>843-845
貴方のコードに期待します。

847
デフォルトの名無しさん[sage]   投稿日:2015/04/03 06:47:45  ID:ZtmCnQSu.net
だからあ、こんなスレで書くような短いコードでは
他者にとっての可読性や、バグ予防のためや 、今後の拡張性やデバックのしやすさためのリーダビリティ確保なんていちいちするかい
言語コミュニティーで一般的なリーダビリティのための方策というモノもあるが、結構狭い集団、乃至、個人における定形的なスタイルによってリーダビリティを確保している場合も多い。
上の精神病は自分のそれの感覚を普遍化してるんだな。
その結果、このスレを見ているとリーダビリティを意識していない人が多いことがわかるなんてたわごとからこの話題は始まった。

たかがこんなスレのソース、つまり、超短いソースを見て
「リーダビリティを意識していない人が多い」
ということがどれだけお馬鹿な発言か考えたほうが良い
ソースにリーダビリティのための工夫が見られないといことと、ソースを書いた人間にリーダビリティ意識がないということは別だ。馬鹿または
精神病はそこが区別てできない。
そもそも俺が見る限り短いソースのなかでも、各人、リーダビリティを意識した書き方してるよ
この精神病のバカがいってるのは
何度も書いたが名前の命名基準だけだろ
それで可読性だあ?
精神病!としか言いようがない
コメント2件

848
デフォルトの名無しさん[sage]   投稿日:2015/04/03 06:53:31  ID:dsV57OoU.net(10)
まぁ確かに、この規模では判断は難しいわな。
ふーむ。

849
デフォルトの名無しさん[]   投稿日:2015/04/03 06:53:31  ID:rSWPypFh.net(4)
>839
1. あまり優れたインターフェースとはいえない calloc() の呼び出し方法を、踏襲するはどうかね?
calloc(n, sizeof(char)) とするんだったら、sizeof char を隠蔽したもの
というか、なんのための M.ESize なんだ??

2. main() でも直に M.Memory を触りまくるのか?なんか大事なところを外に触らせるとか大丈夫か?
言語的に隠蔽できなくても作法として外からべたべたやるのは気持ち悪い、というかそんなことを自ら実践とは安全か?
strcat() もサブ関数に持ってきたほうがいいのでは?

3. >831 は、もっともっと文字列をべたべた張ったときでも main() の記述をかるくしたいんだと思うよ
>831 は一回しか追加貼り付けしていないにもかかわらず、main() が重過ぎる
コメント1件

850
デフォルトの名無しさん[]   投稿日:2015/04/03 06:57:42  ID:rSWPypFh.net(4)
>847
いやいや「リーダビリティ」を意識させたときに、微妙にかわる何かをみたかったんですよ、多分
>831 はメモリー(リ)アロケートという泥臭い部分だから、リーダビリティと絡むとわりと面白い
それに >831 はリーダビリティもさることあがら、エラー処理の記述も重要

851
デフォルトの名無しさん[sage]   投稿日:2015/04/03 07:08:18  ID:dsV57OoU.net(10)
>849
1、Memory構造体は別にCharのために設計したわけではないです。Callocは個人的には好きですよ。
2、まぁ、そこはもうちょっと真面目に関数増やすべきでしたね。
3、AppendStirng書くべきでしたかね。メモリのインタフェース書いたら力尽きちゃった面もあって微妙に後悔してます。

AppendString関数書けば5行位圧縮できるかなー??
表示関数も結構場所食うんだよなぁ。
うーん。マダマダ。

余裕があったらサンプル書いてください。お願いします。

852
デフォルトの名無しさん[sage]   投稿日:2015/04/03 07:19:47  ID:dsV57OoU.net(10)
今日は寝ます。なんかあったら書いておいてください。

853
デフォルトの名無しさん[sage]   投稿日:2015/04/03 07:49:55  ID:dsV57OoU.net(10)
>831 >839
http://ideone.com/Nbn7ND
寝る前に思い付いた分だけ修正。
オヤスミ。

854
デフォルトの名無しさん[sage]   投稿日:2015/04/03 12:19:50  ID:XJDjNk3c.net
>847
こういうスレだからこそ可読的に書こうよ。
他人の考えたアルゴリズムを理解するだけでもやっかいなのに
その上コードそれ自体が暗号みたいだったらわざわざ他人に見せる意味が半減だ。

ちなみに俺が最近ここにポストしたコードは>788

一時間ぐらいで書いて書きっぱなしのコードだから当然突っ込みどころはあるが、
それでも読めば誰でも何をやってるのか分かるだろうと自分で思える程度には
命名や機能分割には気を使って書いてる。

855
デフォルトの名無しさん[]   投稿日:2015/04/03 13:06:09  ID:/gPIw7xI.net(2)
文字リテラルに[helowrdHELOWRD ]の文字を使わずに Hello Worldを表示するプログラムを書きなさい
コメント1件

856
Lv2[]   投稿日:2015/04/03 13:06:43  ID:/gPIw7xI.net(2)
文字リテラルに[helowrdHELOWRD 0123456789]の文字を使わずに Hello Worldを表示するプログラムを書きなさい
コメント10件

857
デフォルトの名無しさん[sage]   投稿日:2015/04/03 14:21:59  ID:qCJXkSXO.net
>856
Python3で。
print(''.join(list(map(lambda x: chr(ord(x) - 2), "Jgnnq¥"Yqtnf"))))

858
デフォルトの名無しさん[sage]   投稿日:2015/04/03 16:14:50  ID:dleY0YhY.net(3)

859
デフォルトの名無しさん[]   投稿日:2015/04/03 17:14:32  ID:0EmLzw+t.net
>856
以前Common Lispで書いたのがあったけど文字列に R を含んでた
http://ideone.com/JK0OGo
同じネタをRubyで
http://ideone.com/jgmtzd
コメント1件

860
デフォルトの名無しさん[sage]   投稿日:2015/04/03 17:19:09  ID:2J3LeOys.net
>856 C
#include <stdio.h>
struct table {
char pad0[32], _, pad1[32];
char A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, pad2[6];
char a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z;
};
int main() {
struct table table;
#define p(c) putchar((void *)&amp;table.c - (void *)&amp;table)
p(H);p(e);p(l);p(l);p(o);p(_);p(W);p(o);p(r);p(l);p(d);
#undef p
return 0;
}
コメント1件

861
デフォルトの名無しさん[sage]   投稿日:2015/04/03 17:53:47  ID:dsV57OoU.net(10)
>856
http://ideone.com/SXl0o0
C++。あんまり面白い感じに書けなかった。
文字列リテラル使ってないからいいよね。

862
デフォルトの名無しさん[]   投稿日:2015/04/03 18:25:35  ID:rSWPypFh.net(4)
>860
はじめ、A, B, C, ..., a, b, c に数値をいれるのかと思ったら、アドレス計算なんですね‥、メンバ変数って順序は保障されているのですか?

863
デフォルトの名無しさん[sage]   投稿日:2015/04/03 18:34:14  ID:KTkPgi8n.net(3)
>839
・型のMemoryとメンバのMemoryがまぎらわしい

>842
> 型にはまってて自分はあんまり好きじゃないんだけど。
え?
> エレメント数がlengthで全体サイズ取りたいときは、Length*ESizeする。
Memory構造体は文字列に特化してないんでしょ?(void *Memory;としているのは)
確保したメモリ(レコード)は増える一方なんでしょ?
だったら、記憶されている有効なレコード(要素)が減った時にどうするの?って言ってるの。
Lengthは「確保されたレコード数」。「有効なレコード数」
> IsMemoryNullはまぁ、無いよりまし程度。
一貫性をそこねる。
> ConstructMemoryがコピーを返すのは、ポインタ渡しだと解放とか書かないといけないので面倒だった。
それはお好きなように。
> まぁ、反論ばっかしててもしょうがないので、ちょっと考えてみる。
反論と言える論が無い。内容にではなく言われたことそのものに脊髄反射して
口答えしているだけの姿勢なので喧嘩売っていると客観的に判断できる。

断言する。このままだとあなたはいずれ、見通しが悪く何書いてるかすぐに分からない
自分の書いたコードに自ら苦しみ自滅するか、他の人に多大な迷惑をかけて職場を追い出される。
コメント2件

864
デフォルトの名無しさん[sage]   投稿日:2015/04/03 18:39:11  ID:roc5cKjr.net
>863
揚げ足取るようだけど、真面目な話あんたのその文章もかなり見通し悪いよw
こういう文章書く人って、他人の目からこれがどう見えるだろうかとか考えないのかね。

断言するけど、文書を書くときに可読性に留意できないような人が
コードを書く時に限って可読性に気を使うとかありえないと思う。
コメント1件

865
デフォルトの名無しさん[sage]   投稿日:2015/04/03 19:09:14  ID:KTkPgi8n.net(3)
>864
あなたが読んでも分からんだろうさ。相手の眼の付け所(思考回路)に合わせたつもりだからw

>842は、Cでの命名は意識して慎重確実にするクセを付けたほうがいい。後で後悔する。
C#とかIDEやってるとメソッドやメンバは最初からクラスに内包され整理整頓されてるし
インテリセンスで候補が出てきたりリファクタリングで途中からの名前変更も
簡単に出来るだろうけど。

866
デフォルトの名無しさん[]   投稿日:2015/04/03 19:30:25  ID:rSWPypFh.net(4)
このスレに出入りしている人間は、リーダビリティに問題はないと思うんだけれども‥
コメント1件

867
デフォルトの名無しさん[sage]   投稿日:2015/04/03 19:45:54  ID:dleY0YhY.net(3)
>859
.join(" ") の" "は文字リテラルじゃなかと?
コメント1件

868
デフォルトの名無しさん[]   投稿日:2015/04/03 19:52:04  ID:AmSC88IG.net
>867
ああ、空白もなんだ
見落としてました

869
デフォルトの名無しさん[sage]   投稿日:2015/04/03 20:47:30  ID:FV1oE0HB.net
>866
同感
論外ムチャクチャでスパリゾートイタリアン状態のソースなんて見たことないな
ここで書かれるソースさえろくに読めない奴はセンスないだけどな

870
デフォルトの名無しさん[sage]   投稿日:2015/04/03 21:28:56  ID:dsV57OoU.net(10)
>863
・記憶されている有効なレコード(要素)が減った時にどうするの?
それはベクタクラスの仕事。メモリが保持する内容ではない。

871
デフォルトの名無しさん[sage]   投稿日:2015/04/04 02:05:45  ID:jQphjfpE.net(2)
リーダビリティのお題は言語が限定されやすいね
回答も集まりにくいから出題が難しそう

872
デフォルトの名無しさん[sage]   投稿日:2015/04/04 08:52:12  ID:0mmWusUJ.net

873
デフォルトの名無しさん[sage]   投稿日:2015/04/04 10:11:38  ID:jQphjfpE.net(2)
>872
なにこれすごい

874
デフォルトの名無しさん[sage]   投稿日:2015/04/04 12:24:34  ID:MqkaNLx+.net

875
デフォルトの名無しさん[]   投稿日:2015/04/04 12:44:05  ID:IRaJusQu.net

876
デフォルトの名無しさん[sage]   投稿日:2015/04/04 15:13:50  ID:knpZoffv.net
お題:
[a,b,c,d]の値は、[1,0,0,1]
または[0,1,0,0]
または[0,1,0,0]
となります。
このような場合、a=dである事を導き出してください。
コメント6件

877
デフォルトの名無しさん[]   投稿日:2015/04/04 15:25:01  ID:+0eWzzse.net
>876
そんなの見たら分かるじゃないか(ワラ

878
デフォルトの名無しさん[sage]   投稿日:2015/04/04 22:38:05  ID:b1B36uxJ.net
>876
初期値を巡回させないと無理?

879
デフォルトの名無しさん[sage]   投稿日:2015/04/04 23:28:32  ID:36j4uuIZ.net
>876
無理です
お題としての体をなしてない

880
デフォルトの名無しさん[sage]   投稿日:2015/04/05 00:16:17  ID:WBZFTdNy.net
論理学を習ってない人にも分かる問題にすべきだったね。
コメント1件

881
デフォルトの名無しさん[]   投稿日:2015/04/05 00:21:54  ID:XqnpqZbw.net(4)
>872
ここは IOCCC の会場か?

882
デフォルトの名無しさん[sage]   投稿日:2015/04/05 00:28:20  ID:UrJ8NZb0.net
>880
だね。
> または[0,1,0,0]
> または[0,1,0,0]
> となります。
なんて見たこtねーしw

883
デフォルトの名無しさん[sage]   投稿日:2015/04/05 01:05:39  ID:WB4f+k9O.net
>876
これ、可読性のあるソースを書けって言っていた人の出題?
コメント1件

884
デフォルトの名無しさん[sage]   投稿日:2015/04/05 01:11:18  ID:CUClbhMi.net
>883
自覚ないと思うけど、なんかその思考回路って典型的な2ch脳だねw
コメント1件

885
デフォルトの名無しさん[sage]   投稿日:2015/04/05 01:51:12  ID:CEtSuiik.net(2)
>884
出版多数の頭脳が思う意外な可能性への着眼だとは推測できない常識頭のレス乙です

886
デフォルトの名無しさん[sage]   投稿日:2015/04/05 02:00:21  ID:CEtSuiik.net(2)
一応推論を書いておくか
前提
1.可読性を言い出した奴Aはかなり頭が悪く精神病の疑いも濃い
2. >876の文章はおよそ可読性にかける笑止論外級。それを書いた人物をBとする

推論と期待
1. Aのお馬鹿さをBレベルだとすると
Aが自分なりに可読性を意識した文を書いても前提2の文になってしまうのではないか?本人としては明晰判明なる可読性をもつと思いながら(爆笑)

2. ここはAが前提2の問題を出したとすれば裸の大様状態の大笑いネタになる

結論
次のようにぶつけてみよう。反応が楽しみだ。わはははは
>876
これ、可読性のあるソースを書けって言っていた人の出題?」

おバカ相手のお遊びはこの辺にしておこう
コメント1件

887
デフォルトの名無しさん[sage]   投稿日:2015/04/05 06:47:30  ID:A+93Nbjb.net

888
デフォルトの名無しさん[sage]   投稿日:2015/04/05 08:47:26  ID:lc+vonxV.net
モールス来たかw

889
デフォルトの名無しさん[]   投稿日:2015/04/05 12:24:21  ID:XqnpqZbw.net(4)
次はコガネムシとか踊る人間とかで頼む

890
デフォルトの名無しさん[sage]   投稿日:2015/04/05 12:55:30  ID:v29eRWzH.net
>886
マジモンの重症の2ch脳だな。
ネタばらしをすると、可読性を言い出した人物 = 883 = 俺 ≠ 875

2ch脳の主な症状は異常な被害妄想かつその本人にその自覚が皆無なこと。
その被害妄想のタイプは、自分の感情を乱す者を「敵」とみなす幼稚な二元論(ネトウヨを見よ)。

真面目に一度精神科を受診した方がいいよ。
上記の通り2ch脳患者って自覚がないから聞かないだろうけどねw
コメント1件

891
デフォルトの名無しさん[]   投稿日:2015/04/05 13:00:34  ID:XqnpqZbw.net(4)
QZに完敗した精神科の先生(注:患者も兼ねる)か‥
コード書けないあんたの来る場所じゃないんだよ‥

892
デフォルトの名無しさん[sage]   投稿日:2015/04/05 13:03:47  ID:SAQPlJ7x.net
>890
わはははは
お前、自分で馬鹿だと宣言してどうする
どうせ著作の一冊もないヘタレだろ
ネタバラシもなにも
俺は可能性を述べただけなのを
おまえはそれを実然断定としてとらえたわけだ。
そこがお前が馬鹿であることの現れなんだぞ
ま、アホは背伸びしてバカ晒しし続けるのやめておけ

893
デフォルトの名無しさん[]   投稿日:2015/04/05 14:37:08  ID:XqnpqZbw.net(4)
小ネタを一つ
お題:「笑わない数学者」(森博嗣)の「ビリヤード問題」

小手調べ
五つのビリヤードの玉を円形に並べる。
玉には自然数が書いてある(連続しているとは限らない)。
玉をいくつとってもいいが、隣通し連続したものしかとれないとする(離れているものはとれない)。
この条件でとった玉の数字を足し合わせて1から21までのすべての数ができるようにするには、ビリヤードの玉をどう並べればいいか

本題
小手調べ問題ではビリヤードの玉を五つとしたが、これをもっと大きな数に拡張せよ。
解が存在しない個数のうちもっとも小さいものはいくらか?
ビリヤードの玉の上限に限界はあるか?
コメント8件

894
デフォルトの名無しさん[sage]   投稿日:2015/04/05 16:36:19  ID:khPCncoE.net
>893 Haskell
小手調べだけ
愚直に探索できる計算量で助かった
http://ideone.com/zB2bTl
コメント1件

895
デフォルトの名無しさん[sage]   投稿日:2015/04/06 02:32:37  ID:BV5HpsIR.net
1から21までっていうのがどう出てきたんだろうと思っていたが、
そもそも5つの玉を使った時の和のパターンが21しかないのね
これで本題の意味がわかった(解くとは言ってない)

896
デフォルトの名無しさん[sage]   投稿日:2015/04/07 03:32:13  ID:v4cb0BJk.net(5)
>893
http://ideone.com/z0Dpai
C++。コードはオリジナルだが、計算上限は>894の結果を拝借した。
無かったら。R=21-5とかやってたと思う。計算量大爆発する。
ハスケール読めないからコードの盗用はしてません。
しかし、Atomで30秒かかるんだが、イデオンはえーな。まじはえーな。
コンビネーション関数ほすぃ。

897
デフォルトの名無しさん[sage]   投稿日:2015/04/07 03:35:18  ID:v4cb0BJk.net(5)
違うわ。1分かかるわ。
30秒はデバッグする前の数だった。

898
デフォルトの名無しさん[sage]   投稿日:2015/04/07 04:02:26  ID:v4cb0BJk.net(5)
http://ideone.com/IAcA0d
イデオンはえー。当初の予定だと4秒程度かかってたらしい。
手元のAtomだと、リリースで1分程度。イデオンすごいな。
そのうちスカイレークに変えようと思ってるので楽しみだ。
コメント1件

899
デフォルトの名無しさん[sage]   投稿日:2015/04/07 08:47:55  ID:tPergwIj.net
うちなんてCelM1.46GHzなんだが

900
デフォルトの名無しさん[sage]   投稿日:2015/04/07 13:59:18  ID:v4cb0BJk.net(5)
ATOMより早いよかん。

901
山下雄介[]   投稿日:2015/04/07 19:31:49  ID:9WC2TS+N.net
1<=A<B<=100000000
AからBの範囲で2で割り切れて4で割り切れない数字の数を求めろ
コメント4件

902
デフォルトの名無しさん[sage]   投稿日:2015/04/07 20:11:50  ID:xdVzBNxU.net(2)
>901
算数レベルじゃねえかw

903
デフォルトの名無しさん[sage]   投稿日:2015/04/07 20:31:18  ID:tZbvQ49b.net
食指がw

904
デフォルトの名無しさん[sage]   投稿日:2015/04/07 20:41:32  ID:Dl73u8Fu.net
>901
main() {
int n = 1;
int cnt = 0;
while (n++ <= 100000000)
(n mod 2) ? : (n mod 4)? : (++cnt);
}

905
山下雄介[]   投稿日:2015/04/07 21:24:17  ID:Qidfpn7c.net
ループとか文系だろ
ループなしで求めろ
コメント1件

906
デフォルトの名無しさん[sage]   投稿日:2015/04/07 21:39:36  ID:nVor6DE3.net(2)
意味不明、再帰させろって?

907
デフォルトの名無しさん[sage]   投稿日:2015/04/07 21:52:39  ID:xdVzBNxU.net(2)
4n + 2 ≦ 100000000
∴4n ≦ 99999998

つまりC系統の言語なら
99999998 / 4 + 1
を表示すればいいわけだ。
コメント1件

908
デフォルトの名無しさん[sage]   投稿日:2015/04/07 21:58:37  ID:Bh5rJVAm.net
100000000/2-100000000/4
コメント1件

909
デフォルトの名無しさん[sage]   投稿日:2015/04/07 22:00:23  ID:nVor6DE3.net(2)
なるほど

910
デフォルトの名無しさん[sage]   投稿日:2015/04/07 22:02:12  ID:6eaaD3gY.net
>901
>907 でC
#include <stdio.h>

int main(void) {
printf("%d\n", 99999998 / 4 + 1);
return 0;
}
コメント1件

911
デフォルトの名無しさん[sage]   投稿日:2015/04/07 22:40:16  ID:v4cb0BJk.net(5)
>905
このひと何が面白いのかよくわからん。

912
山下雄介[]   投稿日:2015/04/07 23:14:13  ID:HApRr4Kb.net(2)
>910

間違ってないか
A=4
B=12
の場合は?

913
山下雄介[]   投稿日:2015/04/07 23:17:09  ID:HApRr4Kb.net(2)
>908
これは最小値が2決め打ちなので不正解

914
デフォルトの名無しさん[sage]   投稿日:2015/04/08 00:20:25  ID:UTc93s1G.net
(b >> 1) + (a - 1 >> 2) - (a - 1 >> 1) - (b >> 2)
もっときれいに書けそうな気がするけど頭動いてないなー

915
デフォルトの名無しさん[sage]   投稿日:2015/04/08 00:26:20  ID:aYgHbxwV.net
A<x<=Bとして、
(B/2-B/4)-(A/2-A/4)

916
デフォルトの名無しさん[sage]   投稿日:2015/04/08 00:35:49  ID:nkhJ1BcX.net
f a b = g b - g (a - 1)
 where g c = c `div` 2 - c `div` 4

917
デフォルトの名無しさん[sage]   投稿日:2015/04/08 03:11:25  ID:uHSZv0Q8.net
>901
n = (B+2)/4 - (A+1)/4

918
デフォルトの名無しさん[sage]   投稿日:2015/04/08 03:25:51  ID:iBT50pBv.net
コードゴルフ問題なら最初から言ってくれ

919
デフォルトの名無しさん[sage]   投稿日:2015/04/08 10:27:22  ID:lPFAmU0v.net
さすがにループで一つずつ調べるのは論外だろ

920
デフォルトの名無しさん[sage]   投稿日:2015/04/10 07:25:02  ID:FkC0/7rt.net
>898
イデオンのCPUはなんだろうね
Xeonか何かかな
そんな2chの鯖並のクラスタを使う必要もないのかも知れないけどあまり遅いと
誰も使わなくなるからジワジワと交換しているのかも

ちなみにgcc4.9.2 i7-4790K リリースビルドで 1663msと出た

イデオンは同時に他のプログラムを走らせたりしてコア数を超えるタスクが走ると
遅くなるかも知れないからな
コメント1件

921
デフォルトの名無しさん[sage]   投稿日:2015/04/10 07:40:02  ID:eGKlq6HE.net(2)
>920
おぉ。早いね。
IAシリーズじゃない可能性も微レ存。
ほんと、スカイレーク楽しみ。その数字を見てさらに!

922
デフォルトの名無しさん[sage]   投稿日:2015/04/10 12:37:04  ID:qDdK4mPi.net(3)

923
デフォルトの名無しさん[sage]   投稿日:2015/04/10 13:46:14  ID:qDdK4mPi.net(3)

924
デフォルトの名無しさん[sage]   投稿日:2015/04/10 17:30:14  ID:MUrLbbsE.net
-march=haswell なんてオプションを付けるとAVX2命令使ってくるもんな
gccは相当すごいよ

まあVS2013にもあるんだけどあっちはC++11から掛け離れている感じがするんで
C++はほとんど使ってない

925
デフォルトの名無しさん[sage]   投稿日:2015/04/10 20:36:16  ID:eGKlq6HE.net(2)
まぁ、この程度のコードで最適化カリカリやりたくないから、常識的な範囲で答えが出ればいいよ。
CPUのアップデートはワクワクするけど。

926
デフォルトの名無しさん[sage]   投稿日:2015/04/10 21:04:21  ID:TXzItjWq.net
何様のつもりだよそれw

927
デフォルトの名無しさん[sage]   投稿日:2015/04/10 21:49:56  ID:+Mv1j6DB.net
お題:英数字1文字が与えられたとき、その英数字以外の英数字1文字を返す。
コメント3件

928
デフォルトの名無しさん[sage]   投稿日:2015/04/10 22:33:41  ID:UrL4IJRt.net
意味わからなくてチンコ萎えましたぁ!

929
デフォルトの名無しさん[]   投稿日:2015/04/10 22:40:23  ID:9sVpyOtZ.net
>923
N=7 のとき M=43 のはず
コメント2件

930
デフォルトの名無しさん[sage]   投稿日:2015/04/10 23:00:06  ID:qDdK4mPi.net(3)
>929
なにっ
どこがバグってるんだろうw

M43の1例わかります?
コメント1件

931
デフォルトの名無しさん[]   投稿日:2015/04/11 00:14:45  ID:hdU0XbS+.net
>930
N=7, M=43 のとき解はない、はず
43= 7 * 6 + 1

932
デフォルトの名無しさん[sage]   投稿日:2015/04/11 01:02:23  ID:ZKq6/Wyw.net(2)
>927
http://ideone.com/pvvlMJ
C++。こんなんでいいのか?どっかの課題か?

933
デフォルトの名無しさん[sage]   投稿日:2015/04/11 01:33:29  ID:uXnaHaT6.net
>927
perl5

my $c = 'a';
$c =~ tr/A-Za-z0-9/0-9A-Za-z/;
print $c;

934
デフォルトの名無しさん[sage]   投稿日:2015/04/11 08:27:14  ID:I+KljnAo.net
>893
参考にしようとしたが基礎体力不足で歯が立たず。

魔円陣と有限幾何
math.tsukuba.ac.jp/~akiyama/papers/proc/MagicCircle.pdf
コメント1件

935
デフォルトの名無しさん[sage]   投稿日:2015/04/11 08:47:27  ID:ZKq6/Wyw.net(2)
>934
やっぱ俺に数学は無理だな。説明が頭に入ってこない。Orz
算数で頑張るよ。

936
デフォルトの名無しさん[sage]   投稿日:2015/04/11 11:30:31  ID:DdXkBTfC.net

937
デフォルトの名無しさん[sage]   投稿日:2015/04/11 21:19:40  ID:oHFx420S.net
>929,930
>923はM=N*(N-1)+1を探しているのではなく、
総当たりで作れるMが一番大きい物を表示しているだけなのですw
コメント1件

938
デフォルトの名無しさん[sage]   投稿日:2015/04/12 08:58:54  ID:Vi6a17uJ.net(2)
>856 dc
87521618088882533792115812P
Hello World

939
デフォルトの名無しさん[]   投稿日:2015/04/12 10:47:53  ID:tR9Eg8dR.net(3)
>937
その場合、ダブりが発生していることにはなり、明示はされていないが >893 の題意を満たさないのでは?
興味があるので、>923 の結果を調べてみる

940
デフォルトの名無しさん[]   投稿日:2015/04/12 11:10:08  ID:5oPlUArh.net(6)
初めて来た。こういうこと?

○1、○2、○3、・・・○N、のボールの両端はつながってるとして。

○1・・・[・・・]・・・○N、  [・・・]は取り除く部分として、上手く取り除いたらで残りの合計で1から21のすべての数字を作れるということか。

941
デフォルトの名無しさん[]   投稿日:2015/04/12 11:21:04  ID:5oPlUArh.net(6)
{1、・・・、M}を作れる最小ボール個数を求める問題としていいか?
コメント1件

942
デフォルトの名無しさん[]   投稿日:2015/04/12 11:29:49  ID:5oPlUArh.net(6)
>941>893とは別問題だな。21は固定で最大のボール個数を求めるってことだな。

943
デフォルトの名無しさん[]   投稿日:2015/04/12 11:41:13  ID:5oPlUArh.net(6)
ビリアード玉の数字は上限があるのか?
ないなら1から21までの玉を1つずつ含めれば、一つを除き全部取ることで全数字作れるよな。

944
デフォルトの名無しさん[]   投稿日:2015/04/12 11:44:32  ID:tR9Eg8dR.net(3)
つまり各 M における意味のある最大玉数は決まっていて、そこからどれだけ削れるか、という問題だね
それはそれで面白いお題だ

945
デフォルトの名無しさん[]   投稿日:2015/04/12 11:56:09  ID:5oPlUArh.net(6)
標準のビリヤードだと、1から15をそれぞれ最大1回使えるということか?
最大15球だと上手くやったら全パターン計算できそう。

946
デフォルトの名無しさん[sage]   投稿日:2015/04/12 11:59:46  ID:5IvJvm44.net(2)
問題ぐらい読もうよ

947
デフォルトの名無しさん[]   投稿日:2015/04/12 12:28:03  ID:5oPlUArh.net(6)
問題はビリヤードの玉を使うとあるが。
幾つまで数字があるか、一セットしか使えないとは書いてない。
玉が7個や8個や21個あるビリヤードもあるかもしれない。
何セットでも使用可なら1のみ選ぶのもある。
コメント1件

948
デフォルトの名無しさん[sage]   投稿日:2015/04/12 14:08:51  ID:Kyho4V/V.net
両方やればいいじゃない

949
デフォルトの名無しさん[sage]   投稿日:2015/04/12 15:51:21  ID:5IvJvm44.net(2)
>947
やっぱり日本語が読めないのか
何セットでも使っていいが、それだと解の条件を満たさないでしょ

950
デフォルトの名無しさん[sage]   投稿日:2015/04/12 17:56:42  ID:Vi6a17uJ.net(2)
>856 J
smoutput u: _12 + a. i. 'Tqxx{,c{~xp'
Hello World

951
デフォルトの名無しさん[]   投稿日:2015/04/12 18:28:22  ID:tR9Eg8dR.net(3)
一所懸命に、回答例まで作ってみた >575 に回答はつかないのね‥泣
コメント1件

952
デフォルトの名無しさん[sage]   投稿日:2015/04/12 20:12:25  ID:4fkLnYAO.net
キルヒホッフの法則?

953
デフォルトの名無しさん[sage]   投稿日:2015/04/12 22:03:28  ID:Nj+dqsUa.net

954
デフォルトの名無しさん[sage]   投稿日:2015/04/13 03:25:44  ID:aCGk6LVm.net
>893
お題が数学パズルっぽいので一般解があるのかもしれないと
しばらく考えてたけど降参><
力ずくで C++
http://ideone.com/hA1mFM
7個のとき解なし

合っているか自信ないけど以下:
8個で解96(鏡像回転除いて6)
9個で解72(鏡像回転除いて4)
10個は・・・計算に数時間かかりそう

955
デフォルトの名無しさん[sage]   投稿日:2015/04/13 05:20:48  ID:kgFkwbxk.net
コンビネーション自作とか猛者だな。いいなー。才能クレ。

956
デフォルトの名無しさん[sage]   投稿日:2015/04/13 12:28:50  ID:O30lCFiy.net
お題:1に3,5,7をそれぞれ0回以上掛けてできる数を小さいものから100個もとめる
コメント5件

957
デフォルトの名無しさん[sage]   投稿日:2015/04/13 12:47:22  ID:aN+rsjOQ.net
3 < 5 < 7 < 3^2
だから簡単そうだなw

958
デフォルトの名無しさん[sage]   投稿日:2015/04/13 13:44:31  ID:/Aa3hGZM.net(2)
>956 Haskell
これでええんか?
http://ideone.com/7oBoFa
コメント1件

959
デフォルトの名無しさん[sage]   投稿日:2015/04/13 14:08:57  ID:V7jnRRgk.net(2)
>956 Java
http://ideone.com/JR3YQB

>958 こうじゃないかな?
コメント1件

960
デフォルトの名無しさん[sage]   投稿日:2015/04/13 14:27:48  ID:/Aa3hGZM.net(2)
>959
そういうことだろうとは思っていたが
こう書けばわかってもらえるだろうというやっつけな出題が嫌いだ

961
デフォルトの名無しさん[sage]   投稿日:2015/04/13 14:38:20  ID:V7jnRRgk.net(2)
>956 Java
http://ideone.com/dGoBER
出力をちょっと解りやすくした

962
デフォルトの名無しさん[sage]   投稿日:2015/04/13 19:25:23  ID:e1V4T9fq.net
>956
bc
(3 * 5 * 7) ^ n % n とやりたかったのだけどタイムアウトしてしまうのでちょっとインチキ
http://ideone.com/0bwAQe
コメント1件

963
デフォルトの名無しさん[sage]   投稿日:2015/04/14 03:57:13  ID:JKwd4u3i.net(4)
>956
>962 さんの方法を使って剰余で使う数を
少しずつ拡張するようにしてみた
C
http://ideone.com/93iWtW

964
デフォルトの名無しさん[sage]   投稿日:2015/04/14 04:01:15  ID:JKwd4u3i.net(4)
お題: 金額はいくら?

箱に日本の硬貨が1枚以上入っています
中身は外からは見えませんが、硬貨のみの正確な重量は箱の重量がわかっている
ので知ることができます
硬貨の重量から箱の中の硬貨の総額を、取り得る値全て求めてください

各硬貨の1枚の重量は以下の通りです(実際の重量と同じです)
1円玉: 1.0g
5円玉: 3.7g
10円玉: 4.5g
50円玉: 4.0g
100円玉: 4.8g
500円玉: 7.0g

例:8.0gの場合 「8円(1円x8)、54円(50円+1円x4)、100円(50円x2)、501円(500円+1円)」
金額と同時に各コインの内訳も表示(オプション)

とりあえずサンプルとして 23.7g になる金額を求めてみてください

解答例(C言語 見づらいですが><):
http://ideone.com/g5rNf2
コメント9件

965
デフォルトの名無しさん[sage]   投稿日:2015/04/14 05:31:50  ID:8K9J72Mn.net(3)

966
デフォルトの名無しさん[sage]   投稿日:2015/04/14 06:13:02  ID:JKwd4u3i.net(4)
>965
ほんとだ どこか間違ってたみたい
というわけで、正しい答えは >965 さんのを参考にしてください
自分は出直してきますw
コメント1件

967
デフォルトの名無しさん[sage]   投稿日:2015/04/14 07:45:02  ID:JKwd4u3i.net(4)
>966
以下は>964の解答例のループ途中のdouble型の数値を書きだしたもの

a1 = 3.700000, a2 = 3.700000 // 値
a1 = 98 99 99 99 99 99 0d 40 // double 8バイトのメモリイメージ
a2 = 9a 99 99 99 99 99 0d 40 // double 8バイトのメモリイメージ

リトルエンディアンなので最初のバイトが最下位ビットになるのですが、
このちょっとの誤差でうまくいかなかったのでした
double型の比較問題の好例みたいな解答例になってしまった

値を丸めても良いのですが、重量を10倍して整数で扱う形に書き直しました
http://ideone.com/vE7UPP

>965と同じになって安心
コメント1件

968
デフォルトの名無しさん[sage]   投稿日:2015/04/14 07:50:41  ID:1aqhfbLs.net
ああJavaは浮動小数点演算を厳密にやるから(つまり遅い)そこで差が出たんだな

969
デフォルトの名無しさん[sage]   投稿日:2015/04/14 08:29:45  ID:8K9J72Mn.net(3)
http://ideone.com/Tzsj8S
インタープリターで動いてる1回目は遅い
2回目以降はまあまあ早い

static boolean epsilonEquals(double a, double b, double epsilon)
{
 return Math.abs(a - b) <= epsilon;
}
こんな感じでdouble同士の比較は幅持たせてる
そのまま==で比較したら23.7だと結果21個だわ
コメント1件

970
デフォルトの名無しさん[sage]   投稿日:2015/04/14 14:13:43  ID:/iQm+CFv.net
>964
なんとか綺麗に書けないか考えてみたがこういうのどうやっても泥臭いコードになっちゃうなw

971
デフォルトの名無しさん[sage]   投稿日:2015/04/14 14:42:20  ID:I9ozslwe.net
>964 Haskell
http://ideone.com/6eAtB2
出力フォーマットは合わせてない

972
デフォルトの名無しさん[sage]   投稿日:2015/04/14 16:21:37  ID:lELr+SZG.net
ほら、これでも解いとけ
https://paiza.jp/poh/enshura-special
コメント3件

973
デフォルトの名無しさん[]   投稿日:2015/04/14 16:34:59  ID:5erMhlO7.net(2)
>972
非常に有名な問題でついに手抜きか?
なんの独自性もないだろ?

974
デフォルトの名無しさん[sage]   投稿日:2015/04/14 17:54:46  ID:JdejwVu9.net
いつのまに国際化したし

975
デフォルトの名無しさん[sage]   投稿日:2015/04/14 19:15:05  ID:8K9J72Mn.net(3)
>964 Java
http://ideone.com/p9TGWl
無駄に高速化したら酷いコードにw
コメント1件

976
デフォルトの名無しさん[]   投稿日:2015/04/14 19:56:25  ID:5erMhlO7.net(2)
>972は速度ではなく最短手順を競うところに新規性があるのか。
ルービックキューブの速どきは速度を競うが、無駄な動作が無い方が速いわけで、最短解法を追求してるとも言える。
それと同じようなことをプログラムでやると。

977
デフォルトの名無しさん[sage]   投稿日:2015/04/14 20:17:07  ID:j0yztYMW.net
もはや2次絵に何の反応もないとか

978
デフォルトの名無しさん[sage]   投稿日:2015/04/14 20:52:34  ID:sl3GRVWt.net(2)
>972
大分前に問題作成コードのお題がこのスレに出てたような。
解くのは無理だなぁ。

979
デフォルトの名無しさん[sage]   投稿日:2015/04/14 20:54:52  ID:sl3GRVWt.net(2)
>89

980
デフォルトの名無しさん[sage]   投稿日:2015/04/15 15:54:39  ID:bGMPFrzy.net
>964
http://ideone.com/JeUEIU
C++。>969の関数パクらせてもらった。
この前のビリヤード計算と同じ要領で組んだ。
浮動小数演算はやっぱあんまり好きじゃないな。
はよ十進化少数入らんかな。

981
デフォルトの名無しさん[sage]   投稿日:2015/04/15 21:04:21  ID:pT7gC8kj.net

982
デフォルトの名無しさん[sage]   投稿日:2015/04/16 02:08:17  ID:Q9DdJM30.net
>964
C#
http://ideone.com/gfMQ0l

IDEONEだとタイムアウトで全部答えを出さないうちに終了するな...
コメント1件

983
デフォルトの名無しさん[sage]   投稿日:2015/04/16 05:27:44  ID:axBf0iFy.net
そろそろ次スレの季節ですかね・・・。
コメント1件

984
デフォルトの名無しさん[sage]   投稿日:2015/04/16 09:26:51  ID:jLDb4Tyi.net
>975
速いですね
ソート無しの探索部分だけで倍時間かかってたわ
200.0g -> 412ms
http://ideone.com/tA1zvD

985
デフォルトの名無しさん[]   投稿日:2015/04/16 11:51:43  ID:PkMvowGQ.net
1から7までの部屋がある
各部屋のつながりはこのようになっている
1-2
1-3
1-4
2-5
3-5
4-5
2-6
3-6
4-6
5-7
6-7

1から7までの最短経路を全て出力しなさい
コメント2件

986
デフォルトの名無しさん[sage]   投稿日:2015/04/16 23:42:32  ID:XyyhtFlt.net

987
デフォルトの名無しさん[sage]   投稿日:2015/04/17 12:46:06  ID:3AKzHyjc.net(2)
>985 C
http://ideone.com/rFYGRr  な・・長い!
>986
コメント1件

988
デフォルトの名無しさん[]   投稿日:2015/04/17 13:36:57  ID:T4tyuJgr.net
レナとミナミの国際プログラミング選手権|paizaオンラインハッカソン5+


盤面を完成させた平均手数のランキングです。

1位 uwi   40.4 回 1.7 秒 Java

2位 orisano 41.6 回 0.85 秒 C++

3位 holydc 43.2 回 0.03 秒 C++

4位 y_mazun 43.2 回 0.75 秒 C++

5位 siman 50.0 回 0.63 秒 C++


https://paiza.jp/poh/enshura-special

989
デフォルトの名無しさん[sage]   投稿日:2015/04/17 20:43:22  ID:5nKDLfaK.net
>964
>982改良
http://ideone.com/Y6ygrm

このスレ学生が多いのかC#少ないな。
っていうか、俺もへっぽこプログラマだけどこのぐらい「読める」コードを書いて欲しい。
コメント1件

990
デフォルトの名無しさん[sage]   投稿日:2015/04/17 20:52:05  ID:AdcsK90A.net
  |=番兵|_
 (  ・ω・) < オツカレサマナノン
  〇={=}〇
  |::::::::::\
、、、し 、、、(((.@)fri sat sun vv..

991
デフォルトの名無しさん[sage]   投稿日:2015/04/17 21:10:46  ID:5axG3xuM.net
C系言語のコードはどれも読みにくく感じるが、俺がいいと思ったのは>967

992
デフォルトの名無しさん[sage]   投稿日:2015/04/17 23:05:18  ID:3AKzHyjc.net(2)
>985 C++
http://ideone.com/plSjsF

>987をC++に書き直してみたけどぜんぜん短くならなかった・・・
このスレのHaskellの簡潔なソースにひかれて勉強し始めたけど
なかなか思うようには作れないね エラーメッセージもちょっと難解

993
デフォルトの名無しさん[sage]   投稿日:2015/04/17 23:57:48  ID:QyW2mAP8.net
>989
それじゃ、出力結果を合計金額でソートもできるようにしておいて。
コメント1件

994
デフォルトの名無しさん[sage]   投稿日:2015/04/18 00:10:44  ID:XxMX+y8Q.net
>993
何がそれじゃかわからんけど、19行目を
foreach (var c in combinations.OrderBy(x => x.Value))
に変えるだけ。

995
デフォルトの名無しさん[sage]   投稿日:2015/04/18 08:07:22  ID:mvDinqtT.net
リーダビリティは強制しなくてもいいじゃない
それは短いコードの対極で、どちらも良いものだと思うけど
更新情報
・スレッド一覧ページで過去ログのタイトル検索・一覧表示ができるようになりました(2016/1/20)
NGワード登録
登録する
スレッド内検索

プログラム板 タイトル検索

このスレッドが人気です(実況系)
爆3 (883)TBS実況
大相撲九州場所 十三日目☆7 (987)NHK実況
実況 ◆ フジテレビ 84900 (824)フジ実況
NHK総合を常に実況し続けるスレ 140223 AI競技採点 (926)NHK実況
超問クイズ!真実か?ウソか?芸能界クイズ王決定戦!SP ★1 (289)NTV実況
ぴったんこカン・カン【ゲスト:吉田羊・江口のりこ/風吹ジュン】 ★1 (82)TBS実況
実況 ◆ テレビ朝日 50004 転ばぬ先のゆえ (357)テレ朝実況
情報ライブ ミヤネ屋★4 (969)NTV実況
このスレッドが人気です(ニュース系)
【朝日新聞】 サンフランシスコ市との歴史ある関係を捨ててまで、大阪市長がこだわるのはなぜか★6 (958)ニュー速+
【米国】サンフランシスコ市長 慰安婦像問題で吉村市長の面会要請拒否 「交渉、議論の余地はない」★3 (749)ニュー速+
【将棋】羽生善治棋聖 永世七冠に王手!!・・・第30期竜王戦 (663)音楽・芸能ニュース
【乳児連れ議場】 BBC 「日本での男女性差は大きく開いたままだ」 「男女格差、日本は144カ国中114位だ」 (1002)ニュー速+
【調査】正社員不足、過去最高の49.1%に上昇 (438)ニュー速+
【相撲】旭鷲山「貴ノ岩はモンゴルに帰れない」★4 (811)音楽・芸能ニュース
【テレビ】<ホリエモン>井筒監督を猛批判!「こういう人、大嫌い! 人間として最低だよ」 (593)音楽・芸能ニュース
【米国】サンフランシスコ市長 慰安婦像問題で吉村市長の面会要請拒否 「交渉、議論の余地はない」★2 (1001)ニュー速+
プログラム板の人気スレ
ふらっと C#,C♯,C#(初心者用) Part133 (806)
C++相談室 part132 (990)
次世代言語Part7[Go Rust Swift Kotlin TypeScript] (756)
C言語なら俺に聞け 143 (468)
オブジェクト指向システムの設計 174 (853)
Excel VBA 質問スレ Part51 (212)
Java入門・初心者質問スレ Part.5 (685)
Go language part 2 (159)
Ruby 初心者スレッド Part 61 (957)
Visual Studio 2017 Part4 (250)
Kotlin 2 (203)
Pythonのお勉強 Part54 (629)
Xamarin Part6 (277)
プログラミング言語 Rust 4 (240)
Pythonistaなネラーさんいますか? (53)
関数型プログラミング言語Haskell Part31 (307)
【初心者歓迎】C/C++室 Ver.102【環境依存OK】 (102)
くだすれPython(超初心者用) その35 (834)
プログラミング始めたいんだけどどこ言語がいい? (169)
ねえ、これ僕間違ってる? (148)
C#, C♯, C#相談室 Part95 (158)
WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part21 (836)
【統計分析】機械学習・データマイニング18 (170)
Swift part11 (664)
☆★Java質問・相談スレッド180★★ (936)
MacでもLinuxでも使えるVisual Studio Code Part2 (692)
【PHP】下らねぇ質問はここに書き込みやがれ 8 (955)
このサイトについて
このサイトは2ちゃんねるからデータを取得し、表示するサービスです。
画像のインライン表示機能について
画像のURLの後ろにある[画像をインライン表示]をクリックすると、URLの下に表示します。
表示される画像は横幅100pxに縮小されていて、クリックすると原寸で表示します。
このサイトの特徴
1)スレッド内検索ができます
2)レス(「>>1」など)のポップアップができます
3)不適切な言葉を含む投稿を表示しません
4)ページ内で画像を直接表示できます
5)2ch他スレッドへのリンクはタイトル・板名つきでリンクします
6)すっきりとしたデザインで表示します
7)最新スレや前スレをチェック・一覧表示します
8)NGワード機能の搭載でイヤな言葉が目に入りません
9)荒らしを自動チェックします
10)スレッド内・同一IDの書き込みだけ表示できます
11)レスの返事をレスされた発言の下に表示する「まとめビュー」が利用できます
12)シリーズ化したスレッドの一覧を表示します
13)最新のスレッドがある場合はお知らせします
削除について
こちらをご覧ください
機能要望について
現在機能要望受付中です。
問い合わせについて
こちらのページからどうぞ
広告


首都圏の方、ソフトバンク光オススメですよ


このサイトは2ch.scからデータを取得・表示しています。削除などについてはこちらをご覧ください。 アクセスモード:差分取得 - 新着書き込みなし(304)