1 名前:デフォルトの名無しさん mailto:sage [2018/04/24(火) 20:45:14.49 ID:ZY7R7Sru.net] プログラミングのお題スレです。 前スレ プログラミングのお題スレ Part10 https://mevius.5ch.net/test/read.cgi/tech/1514772904/ 【出題と回答例】 1 名前:デフォルトの名無しさん お題:お題本文 2 名前:デフォルトの名無しさん >>1 使用言語 回答本文 【ソースコードが長くなったら】 (オンラインでコードを実行できる) https://ideone.com/ codepad.org/ compileonline.com/ rextester.com/runcode https://runnable.com/ https://code.hackerearth.com/ melpon.org/wandbox https://paiza.io/ 宿題は宿題スレがあるのでそちらへ。
2 名前:デフォルトの名無しさん mailto:sage [2018/04/24(火) 20:46:44.20 ID:WimzHme9.net] >>1 乙
3 名前:デフォルトの名無しさん mailto:sage [2018/04/24(火) 21:01:59.85 ID:b5LehDYo.net] >>1 おちゅ
4 名前:デフォルトの名無しさん mailto:sage [2018/04/24(火) 21:57:24.56 ID:+2ez/H34.net] 出題に際しては - お題の意図を汲みやすい入出力例も示す - 事前に自分でもコードを書いてみる
5 名前:デフォルトの名無しさん mailto:sage [2018/04/24(火) 22:12:31.82 ID:b5LehDYo.net] このスレ久しぶりに来た 数学できない勢だけどよろすこ
6 名前:デフォルトの名無しさん mailto:sage [2018/04/24(火) 22:50:49.03 ID:26GTet/U.net] じゃあ過去ログから面白そうなお題探してきて
7 名前:デフォルトの名無しさん mailto:sage [2018/04/24(火) 23:28:41.47 ID:b5LehDYo.net] >>6 過去ログから持ってきた訳じゃないんだけど、こういうお題を考えた 平面座標aとbが入力されます。bから見てaがおおよそ何時の方角にあるか時刻で出力してください。 例えば座標の方角が2時と3時の中間
8 名前:だった場合は両方の時刻を同時に出力してください。 座標が重なった場合は0時と出力してください。方角の精度は時刻み、分刻みから選択自由とします。 でも何か既視感あるんだよな 過去ログに似たようなお題があったかもしれない [] [ここ壊れてます]
9 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 00:32:02.03 ID:Q0aOI6dW.net] (逆)三角関数使わずにって制限つければまあまあ面白いかもしれない
10 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 01:02:21.48 ID:Xk9Nens/.net] 数学じゃん。 紙と鉛筆で解いて算出は電卓でやれ。 プログラムでやっても電卓でできる程度のことしかしないじゃん。
11 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 04:59:23.37 ID:uzp6LfsA.net] >>7 Squeak Smalltalk | fn | fn := [:a :b | (a - b) theta negated / (2 * Float pi) * 12 + 3 \\ 12]. fn value: 6@12 value: 6@6. "=> 0.0 " fn value: 6+(2*3 sqrt)@12 value: 6@6. "=> 1.0 " fn value: 6-(2*3 sqrt)@12 value: 6@6. "=> 11.0 " fn value: 12@6 value: 6@6. "=> 3.0 " fn value: 6@0 value: 6@6. "=> 6.0 " fn value: 0@6 value: 6@6. "=> 9.0 " fn value: 6@6 value: 6@6. "=> 0.0 "
12 名前:デフォルトの名無しさん [2018/04/25(水) 07:24:05.48 ID:OIcVuxa9.net] 過去ログから、さすがにこれはプログラミングの問題でしょ お題: 下図のように山の麓(標高0)の両側にいるA君B君が頂上(標高10)を目指して同時に出発する ただし、A君B君のいる位置の標高はどの時刻でも等しくなるように登らなければならない (下図でA君が標高7の峠から標高3の谷へ下るときにはB君は来た道を引き返す必要がある) 標高1だけ上るor下るのに1時間かかるとして頂上まで最短で何時間かかるか求めよ 10 7 /\ /\/3 \ A 0/ \0 B 山の形状は以下のような文字列で表現する 1)文字列の先頭と末尾はA君B君のスタート地点(標高0)を表し、必ず'0'である 2)ゴールの頂上(標高10)の位置は':'で表す(文字コードがちょうど':'='0'+10なので) 3)途中の峠と谷の標高を'1'〜'9'で表す(上図の山の形状は"073:0"と表される) 4)途中の峠と谷は交互に現れるようにする(例えば"037:0"は無し) テスト例 "073:0" -> 18 "07362:450" -> 36 "06464:36470" -> 42 "0827171:28480" -> 66 "0737491:28180" -> 146 "05374734372747484:184618186912120" -> ?
13 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 08:12:36.77 ID:YrZy/fuf.net] >>11 手計算でやっても答えが一致しないのだが、本当にそんな時間掛かるか? C++ https://ideone.com/GK5A8F
14 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 08:15:25.48 ID:YrZy/fuf.net] >>12 あ、ごめん私が間違えてた 計算し直してくる
15 名前:デフォルトの名無しさん [2018/04/25(水) 08:57:14.64 ID:s6Mh195j.net] スレの宿題のをやってみた (規制対象なのでurlに全角スペースいれてます) https://bi t.ly/2FdJBkh 以下のルール 全員が以下のルールを守って空席に決められた順に座るものとする ・全員の数字と着席順は皆が知っている ・スコアは上下左右の2〜4セルの数値の合計 ・必ず空席のうちの最大のスコアになる席に座る ・最大のスコアの席が複数ある場合はどこに座っても良い ・「最大のスコアの席」とは、以降の人のルールに適う選択を考慮した上で決定される (現在スコア5の2つの空席A, B があったとして、全員がルール通り座った結果Aが8、Bが7に なる場合はAを選択しなくてはならない) 座席 〇〇5 〇9〇 12〇 に対して、 番号 3、4、6、77、8 がこの順でルール通り座ろうとすると下記の結果になった。 座る順の早い4番が77の隣に行けず6番に負けてしまうとかちょっとおもしろい 77 3 5 6 9 4 1 2 8
16 名前:デフォルトの名無しさん [2018/04/25(水) 09:00:27.95 ID:s6Mh195j.net] >スレの宿題のを 「前スレの宿題の」と書こうとしてミスしました。 実際のとこ宿題なのかどうかは知らないけど。
17 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 09:14:36.14 ID:s6Mh195j.net] >>14 のをちょっとだけ訂正 (コードをcodeの方に書いただけ) https://bit. ly/2HYN8WH
18 名前:デフォルトの名無しさん [2018/04/25(水) 10:26:52.48 ID:tAxnUvIH.net] >>11 テスト例の最初のやつはなぜ18になるのか?7+3+7=17ではないのか?
19 名前:デフォルトの名無しさん [2018/04/25(水) 10:28:30.47 ID:tAxnUvIH.net] あ、ごめん。寝ぼけてた。すまん。
20 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 10:29:50.42 ID:8AWpTaB2.net] 7 + (7 - 3) + 7 = 18 あってるよ
21 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 11:57:29.80 ID:pPLIJyjZ.net] 度々ごめん 直に書けないurlはこう貼ればいいとわかったので (もしかして常識だったか) https://%62it%2Ely/2Jplh1k
22 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 12:11:25.24 ID:pPLIJyjZ.net] >>12 最後の b++ は b -- の打ち間違いか
23 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 12:51:35.60 ID:/CvNfD/i.net] >>11 の参考として戻る必要があるケースの例 05131:4501050 手計算では40時間。あってるかな [ ]がA君B君の位置、 左端はそのステップに要する時間 0 [0]5131:450105[0] 5 0[5]131:45010[5]0 5 [0]5131:4501[0]50 1 0[]5131:450[1]050 1 [0]5131:45[0]1050 5 0[5]131:4[5]01050 4 05[1]31:45[]01050 3 051[3]1:45[]01050 2 0513[1]:45[]01050 4 05131[]:4[5]01050 1 05131[]:[4]501050 9 05131[:]4501050
24 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 15:06:56.64 ID:eqJJBtIM.net] >>14 A, B, C の3人の順番で、 Bがaマスを選ぶと、Cには最高点になるx, y の2つの選択肢があり、 Cがxの場合、Bは10点、 Cがyの場合、Bは5点となる この場合、Bがaの場合は5点と考えるので、 Bがbの場合が7点なら、Bはbを採用する しかし、Bのbが5点なら、aと同じだから、どうなるんだ?
25 名前:22 mailto:sage [2018/04/25(水) 15:15:39.29 ID:/CvNfD/i.net] >>11 理解できてなかったわ "07362:450" の解がもうわからん
26 名前:22 mailto:sage [2018/04/25(水) 15:29:44.32 ID:/CvNfD/i.net] >>23 Bはa,bどちらも5点ならどちらを選んでも良い 各人は自分の順になったとき、 選択可能な各位置について「以降誰が何をしても最悪でも〜点とれる」という点数を考え、 それが最大になる位置(のうちのどれか一つ)を選ぶ (何をしても、といってももちろん皆が上記のルールは守るものとする) ストレートなMin-Max戦略だなこれ
27 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 15:30:57.61 ID:ucQtsZek.net] >>24 0 [0]7362:45[0] 5 0[]7362:4[5]0 1 0[]7362:[4]50 3 0[7]362:[]450 3 07[]362:[4]50 1 07[]362:4[5]0 2 07[3]62:45[]0 2 073[]62:4[5]0 1 073[]62:[4]50 2 073[6]2:[]450 2 0736[]2:[4]50 1 0736[]2:4[5]0 3 0736[2]:45[]0 3 07362[]:4[5]0 1 07362[]:[4]50 6 07362[:]450 36時間
28 名前:22 mailto:sage [2018/04/25(水) 15:37:00.23 ID:pPLIJyjZ.net] >>26 ありがとう 問題は理解できていて頭が悪いだけでした [] [ここ壊れてます]
30 名前:23 mailto:sage [2018/04/25(水) 18:07:14.08 ID:eqJJBtIM.net] >>25 Bのa・b 戦略が、共に5点の同点で、その2つをA に戻すから、 Aは両方を比較しなければならないから、複雑だと思って
31 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 19:23:53.90 ID:/CvNfD/i.net] >>11 やってみた https://ideone.com/LsjBLX 結果 "073:0" => 18 "07362:450" => 36 "06464:36470" => 46 "0827171:28480" => 66 "0737491:28180" => 146 "05374734372747484:184618186912120" => 400 一箇所だけ>>11 と違うな
32 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 20:04:18.92 ID:8AWpTaB2.net] >>11 って解無しのパターンってあるのかな?
33 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 20:26:41.27 ID:ucQtsZek.net] >>29 手計算 0 [0]6464:3647[0] 6 0[6]464:3647[]0 2 06[4]64:3647[]0 2 064[6]4:3647[]0 2 0646[4]:3647[]0 3 06464[]:364[7]0 3 0646[4]:36[4]70 2 064[6]4:3[6]470 2 06[4]64:3[]6470 2 0[6]464:3[6]470 3 0[]6464:[3]6470 3 0[6]464:[]36470 2 06[4]64:[]36470 2 064[6]4:[]36470 2 0646[4]:[]36470 6 06464[:]36470 >>30 無いんじゃね?
34 名前:29 mailto:sage [2018/04/25(水) 21:13:14.97 ID:/CvNfD/i.net] >>29 はバグってた 直したら>>11 と一致しました https://ideone.com/ECmxkW 常に解がありそうだけど証明はどうやるんだろ
35 名前:デフォルトの名無しさん mailto:sage [2018/04/25(水) 21:16:36.07 ID:8AWpTaB2.net] ちょっと考えてみたけど至る所微分不可能な山ではない限り解は存在するね
36 名前:29 mailto:sage [2018/04/25(水) 21:33:09.38 ID:/CvNfD/i.net] 適当に折り返すことによって山谷の数を合わせられる あとは略、って感じか
37 名前:29 mailto:sage [2018/04/25(水) 21:38:29.30 ID:/CvNfD/i.net] 数じゃなく高さを合わせるのか 眠くて頭が回らない
38 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 14:30:11.12 ID:O8BM7Wua.net] e^(z) + 1 = 0 を満たす全ての z∈C の絶対値の集合をSとする. この時、Sの中でN番目(N≦10^5)に小さい元を求めよ. なお, e = Σ{n∈N}(1/n!) である.
39 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 14:49:49.33 ID:8V4fYuem.net] 数学じゃん。まーたセンセか。 数学板で相手してもらえないのかな?
40 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 14:54:49.91 ID:dXz/YQDX.net] つまんね
41 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 16:51:43.06 ID:bUTNgJY5.net] N番目に大きな正の奇数を求めよ、みたいな
42 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 17:14:48.72 ID:GokrK/uL.net] 簡単なところで。 【お題】 与えられた整数のリストを、 すべての奇数がすべての偶数の前に来るよう並べ替えなさい。 ただし奇数、偶数、それぞれの順番は変えないこと。 [-1, 2, 8, -9, -2, -3, -6, -10, -8, 5, 7, 9, 7] -> [-1, -9, -3, 5, 7, 9, 7, 2, 8, -2, -6, -10, -8]
43 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 17:36:46.27 ID:PugBvw3H.net] >>40 Java https://ideone.com/7ibDgO しんぷる
44 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 18:15:08.94 ID:7FInXxAw.net] J ((#~2&|),(#~2&|&>:)) -1, 2, 8, -9, -2, -3, -6, -10, -8, 5, 7, 9, 7 出力 _1 9 3 _5 _7 _9 _7 _2 _8 _2 _6 10 _8 (Jでは_が負の符号)
45 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 18:19:04.17 ID:XQamhGXx.net] >>40 Perl @a = (1, 2, 8, -9, -2, -3, -6, -10, -8, 5, 7, 9, 7); @o = grep{$_ & 1} @a; @e = grep{!($_ & 1)} @a; use feature 'say'; use Data::Dump qw(dump); say dump [@o, @e]; $ perl 11_41.pl [1, -9, -3, 5, 7, 9, 7, 2, 8, -2, -6, -10, -8]
46 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 18:21:14.38 ID:PugBvw3H.net] > _1 9 3 _5 _7 _9 _7 _2 _8 _2 _6 10 _8 Jは全くわからんが、出力おかしくないけ? _1 _9 _3 5 7 9 7 2 8 _2 _6 _10 _8 になるはず?
47 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 19:00:22.31 ID:bUTNgJY5.net] >>44 おかしい。こんな短いものでバグ作るとは
48 名前:。 [] [ここ壊れてます]
49 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 19:06:05.69 ID:8V4fYuem.net] なんだJニキたいしたことなかったんだな。ガッカリだわ
50 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 19:06:51.88 ID:bUTNgJY5.net] >>42 >((#~2&|),(#~2&|&>:)) -1, 2, 8, -9, -2, -3, -6, -10, -8, 5, 7, 9, 7 こう書かなきゃダメだった ((#~2&|),(#~2&|&>:)) _1 2 8 _9 _2 _3 _6 _10 _8 5 7 9 7
51 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 19:07:19.36 ID:bUTNgJY5.net] 1か月くらいしかやってないから ガタガタブルブル
52 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 19:11:02.35 ID:PugBvw3H.net] 入力に , 入れてたからおかしくなったのけw
53 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 19:16:25.16 ID:bUTNgJY5.net] カンマはあっても良いんだけど _2 を -2 と書くと ,- なる演算子のコンビネータで世にも奇妙な動きになる
54 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 19:18:49.62 ID:PugBvw3H.net] やっぱりJわからんww
55 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 19:20:47.82 ID:e4v0vK3x.net] 違った 1,2,3 => 1 2 3 1, -2, 3 => 1 _2 _3 マイナスがそれまで連結したそれより右、 上の例だと 2 3 全体に作用してた
56 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 20:02:26.64 ID:amQJLuCm.net] >>40 ソートするだけやん... C++ https://ideone.com/EX8gEd
57 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 20:34:22.01 ID:7FInXxAw.net] あー! ソートするだけか。グッと短くなるな J (\:2&|) _1, 2, 8, _9, _2, _3, _6, _10, _8, 5, 7, 9, 7 結果 _1 _9 _3 5 7 9 7 2 8 _2 _6 _10 _8
58 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 21:15:59.30 ID:Ie6V8ZCt.net] >>40 Squeak/Pharo Smalltalk | fn1 fn2 | fn1 := [:arr | (arr select: #odd), (arr select: #even)]. fn2 := [:arr | (arr sort: [:x | x odd asBit] descending) asArray]. fn1 value: #(-1 2 8 -9 -2 -3 -6 -10 -8 5 7 9 7). "=> #(-1 -9 -3 5 7 9 7 2 8 -2 -6 -10 -8) " fn2 value: #(-1 2 8 -9 -2 -3 -6 -10 -8 5 7 9 7). "=> #(-1 -9 -3 5 7 9 7 2 8 -2 -6 -10 -8) "
59 名前:デフォルトの名無しさん [2018/04/28(土) 21:55:04.43 ID:efxIQEuI.net] >>40 # Rubyで。 def f040(a) a.select(&:odd?) + a.select(&:even?) end
60 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 21:58:00.35 ID:fbonRnOo.net] >>40 Perl @s = (-1, 2, 8, -9, -2, -3, -6, -10, -8, 5, 7, 9, 7); push @{$a[$_ & 1]}, $_ for @s; ($e, $o) = @a; print "@$o @$e\n"; $ perl 11_40.pl -1 -9 -3 5 7 9 7 2 8 -2 -6 -10 -8
61 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 21:58:07.26 ID:4vnB69wL.net] [[[ ][ ]]]\[[]] [[[]]]],[[[ [][] ]
62 名前:デフォルトの名無しさん [2018/04/28(土) 22:24:14.64 ID:kOoyKfN/.net] 安定なソートである必要は無いのかな
63 名前:デフォルトの名無しさん mailto:sage [2018/04/28(土) 22:45:12.30 ID:amQJLuCm.net] >>59 やり方による >>53 みたいな奴だと安定ソートが必要
64 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 00:30:13.18 ID:VMPsXvec.net] >>36 って S = {(2m + 1)π / √((2nπ)^2 + 1)|(m, n)∈N^2}だから最小値存在しなくね? 複素数の複素数乗って多価関数だよね?
65 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 01:45:04.33 ID:eN7o88HV.net] >>61 e は実数で S = {(2n-1)π} じゃないの。 数学は良く知らんけど。 [[[{[{{]] を見て反省してJの良さが伝わりやすいように>>54 をわかりやすく書き直してみた 定義 data =: _1 2 8 _9 _2 _3 _6 _10 _8 5 7 9 7 modulo =: |~ ascending_sort_by = \: 実行 data ascending_sort_by 2 modulo data 結果 _1 _9 _3 5 7 9 7 2 8 _2 _6 _10 _8 これを分かりにくくして行くと>>94 になる 2項演算子 f と単項演算子 g から単行演算子 (f g)、 (f g) x の値は x f (g x) を作れる仕組み 2項演算子 f の左側引数をxに固定した単項演算子 x&f、(x&f) y の値は x f y を作れる仕組み これらを使って「2での剰余をキーとしてソートする 単行演算子」を作って data に適用する形に書き直すと (ascending_sort_by (2&modulo)) data これを直に書いて不要な空白や括弧を取ると>>94 の (\:2&|) data
66 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 01:48:41.58 ID:eN7o88HV.net] ↑ \ になってる文字は本来バックスラッシュ Jはスマフォアプリがあるので暇で困っている人にはパズル的に遊ぶのにお勧め
67 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 02:09:53.25 ID:VMPsXvec.net] >>62 z := x + y*i (x, y∈R) e^z = -1 ⇔ exp((x + y*i)(p.v.Log|e| + i*arg(e))) = -1 ⇔ exp(x - 2nπy)*exp((2nπx + y)i) = -1 ⇔ x = 2nπy and 2nπx + y = (2m + 1)π ⇔ x = 2nπy and y = (2m + 1)π/((2nπ)^2 + 1) ⇔ z = (2m + 1)π/(2nπ - i) ⇒ |z| = |2m + 1|π/sqrt(4n^2π^2 + 1) (m, n∈N) だからS = {(2n-1)π}はありえないよ
68 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 02:12:22.08 ID:/ExMHkxk.net] >>40 Ocaml https://ideone.com/tZmgi1 初めて扱った言語だから分かりやすさ優先 冗長だよなぁ
69 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 02:23:13.34 ID:p2Z/45DS.net] >>62 >>>61 >modulo =: |~ ~ はタイプミス(不要)でしたごめんなさい寝ます
70 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 03:00:09.99 ID:zLWhc+ki.net] >>40 javascript var ary = [-1, 2, 8, -9, -2, -3, -6, -10, -8, 5, 7, 9, 7]; // 条件判定が二倍走るのが気に食わない var ans = [...ary.filter(n => n % 2), ...ary.filter(n => !(n % 2))]; console.log(ans); // のでこうした。長い…読むとき引っ掛かりそう var ans = ary.reduce((acc, n) => n % 2 ? {odd: [...acc.odd, n], even: acc.even} : {odd: acc.odd, even: [...acc.even, n]}, {odd: [], even: []}); console.log([...ans.odd, ...ans.even]); // 結局俺にはこれが分かりやすくていいや var odd = [], even = []; ary.forEach(n => {n % 2 ? odd.push(n) : even.push(n);}); console.log([...odd, ...even]);
71 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 05:45:46.05 ID:hIO/B/Lz.net] >>40 Kotlin https://paiza.io/projects/psvjfVlHA_h2ywBb3amg3Q C https://paiza.io/projects/iZQ1V6L34LthEdqvQsRNJQ
72 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 05:54:20.45 ID:hIO/B/Lz.net] >>43 やってることほとんど同じだけど短くできるので改造してみました。 Perl https://paiza.io/projects/hmeuU1NTBlSqUtbFr6Vn2Q
73 名前:デフォルトの名無しさん [2018/04/29(日) 07:08:41.98 ID:BEZTP3Wm.net] >>40 Common Lisp https://ideone.com/7FvGqn 計測してみたらsortが一番遅かった https://ideone.com/CzpnHR
74 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 09:01:58.05 ID:aHYSui5W.net] >>40 ruby p [-1, 2, 8, -9, -2, -3, -6, -10, -8, 5, 7, 9, 7].partition(&:odd?).flatten
75 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 09:22:53.62 ID:aHYSui5W.net] >>40 ocaml https://ideone.com/Izv76M is_oddはぐぐって見つけたのの丸パクリ
76 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 21:32:42.63 ID:siUxTeIDF] お題: 文字列をソートしなさい。ただし、英字のみをソートし他はそのままにすること。 例: "213cba213cba213cba" -> "213aaa213bbb213ccc"
77 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 10:27:23.47 ID:aHYSui5W.net] >>40 rust https://ideone.com/epTHxQ タプルにflattenとかできたらよかったのに…
78 名前:デフォルトの名無しさん [2018/04/29(日) 16:09:08.42 ID:hIO/B/Lz.net] >>40 Kotlin でも >>71 そっくりに書けることに気付いたので >>68 を fork して書き換えてみた。 https://paiza.io/projects/Ilw66tbpxElWvi1lSmKU3Q
79 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 20:33:37.53 ID:My7UiDyw.net] [[[ []]]]*[[ [][] ][] } } {} [[[
80 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 20:42:22.87 ID:/ExMHkxk.net] しっかし、良問なお題だな……
81 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 21:35:33.15 ID:f+z04ZEq.net] お題: 文字列をソートしなさい。ただし、英字のみをソートし他はそのままにすること。 例: "213cba213cba213cba" -> "213aaa213bbb213ccc"
82 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 21:43:39.24 ID:VMPsXvec.net] >>78 Riby "213cba213cba213cba".yield_self{|v|r=/[a-zA-Z]/;s=v.scan(r).sort;v.gsub(r){s.shift}} #=> "213aaa213bbb213ccc"
83 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 22:33:55.68 ID:aHYSui5W.net] >>78 octave https://ideone.com/qppgil
84 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 22:50:48.02 ID:WuAwAiPA.net] お題 二次元平面上の4点が与えられる。この4点で凸四角形を構成できるか判定せよ。 ※4点の順番は、時計回りや反時計回りとは限らない。 (0, 0), (1, 0), (1, 1), (0, 1) => true (0, 0), (1, 1), (1, 0), (0, 1) => true (0, 0), (2, 0), (1, 1), (0, 2) => false (0, 0), (1, 1), (2, 2), (3, 3) => false (0, 0), (0, 0), (0, 0), (0, 0) => false
85 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 22:53:34.50 ID:yO7NcvMF.net] そんな空気読めないから学生に不人気なんだよ数学板帰れ
86 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 23:11:38.79 ID:wF7FhsU6.net] >>78 Squeak/Pharo Smalltalk | fn | fn := [:str | | letters | letters := OrderedCollection new. ((str asArray gather: [:chr | chr isLetter ifTrue: [letters add: chr. '{', letters size asString, '}'] ifFalse: [chr asString]] ) as: String) format: letters sort ]. fn value: '213cba213cba213cba' "=> '213aaa213bbb213ccc' "
87 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 23:14:55.98 ID:UI+loYQZ.net] >>78 Perl5 @s = split '', '213cba213cba213cba'; @i = 0..$#s; @k = grep{$s[$_] =~ /[a-z]/} 0..$#s; @l = sort @s[@k]; $s[$k[$_]] = $l[$_] for 0..$#k; use feature 'say'; say @s; $ perl 11_77.pl 213aaa213bbb213ccc
88 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 23:19:13.69 ID:UI+loYQZ.net] >>84 @i = 0..$#s; この行、要らなかった、消し忘れた…orz
89 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 23:22:03.47 ID:WuAwAiPA.net] >>78 C++ #include <iostream> #include <string> #include <algorithm> #include <boost/iterator/filter_iterator.hpp> template <typename FwdIt> void selection_sort(FwdIt first, FwdIt last) { for (auto it = first; it != last; ++it) std::iter_swap(it, min_element(it, last)); } int main() { std::string s; std::cin >> s; selection_sort(boost::make_filter_iterator(&::isalpha, s.begin(), s.end()), boost::make_filter_iterator(&::isalpha, s.end(), s.end())); std::cout << s << std::endl; }
90 名前:デフォルトの名無しさん mailto:sage [2018/04/29(日) 23:46:37.03 ID:wPb3/3m7.net] >>78 Haskell アルゴリズム自体は単純だけどコードが泥臭い もっと綺麗に書けそう import Data.Char import Data.List solve [] ys = ([],reverse $ sort ys) solve (x:xs) ys = if isAlpha x then let (vs,w:ws) = solve xs (x:ys) in (w:vs,ws) else let (vs,ws) = solve xs ys in (x:vs,ws) main = putStrLn $ fst $ solve "213cba213cba213cba" []
91 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 00:05:47.30 ID:873ZFTYn.net] お題 西暦X年のプレミアムフライデーを列挙せよ
92 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 00:14:03.81 ID:wP9Edy/s.net] それは概念的な方?それとも実際に仕事に影響する方? 後者ならプレミアムフライデー列挙は0文字でできるが
93 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 03:32:32.41 ID:XX4FB8lc.net] >>78 C https://paiza.io/projects/Oy8gIsyfgJX7t7rSEPnVkQ
94 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 03:49:27.01 ID:XX4FB8lc.net] あれ?strdup() で警告出てるな。strdup() って標準ではないか。 まあでもCコンパイラのアバウトな処理によって動くバイナリは作られたようだがw や
95 名前:閧スいことは分かると思うのでそのままにしておく。 [] [ここ壊れてます]
96 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 04:14:00.17 ID:XX4FB8lc.net] >>78 Kotlin https://paiza.io/projects/YLQlblIMPLj68rZq1YBibw
97 名前:デフォルトの名無しさん [2018/04/30(月) 07:20:36.76 ID:aMecU4PQ.net] >>78 Common Lisp https://ideone.com/wPfWhC
98 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 09:43:30.53 ID:6GiCfUEC.net] >>78 Squeak/Pharo Smalltalk | fn | fn := [:str | | letters | letters := (str select: #isLetter) sort readStream. str collect: [:chr | chr isLetter ifTrue: [letters next] ifFalse: [chr]] ]. fn value: '213cba213cba213cba' "=> '213aaa213bbb213ccc' "
99 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 11:03:34.34 ID:6GiCfUEC.net] >>88 Squeak/Pharo Smalltalk | preKinsOf | preKinsOf := [:year | (year asInteger asYear months collect: [:month | (month dates select: [:date | date weekday == #Friday]) last] ) reject: [:date | date mmddyyyy beginsWith: '4/29'] ]. preKinsOf value: 2022 "=> {28 January 2022 . 25 February 2022 . 25 March 2022 . 27 May 2022 . 24 June 2022 . 29 July 2022 . 26 August 2022 . 30 September 2022 . 28 October 2022 . 25 November 2022 . 30 December 2022} "
100 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 11:06:46.51 ID:51rF4oVe.net] >>78 >>87 のアロー版 import Control.Arrow import Data.Char import Data.List solve ([],_) = ([],[]) solve ((x:xs),~yss@(y:ys)) = if isAlpha x then first (y:) $ second (x:) $ solve (xs,ys) else first (x:) $ solve (xs,yss) main = putStrLn $ loop (second sort . solve) "213cba213cba213cba"
101 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 13:22:57.51 ID:9wPwzi/d.net] [[[ [ "[]" ]]] [] [][[[ [] ]][]
102 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 15:39:38.12 ID:3TseVeeC.net] >>78 Emacs Lisp (defun f (a) (flet ((alphaumericp (c) (string-match "[A-Za-z]" (string c)))) (let* ((b (concatenate 'list a)) (c (sort (remove-if-not #'alphaumericp b) #'<))) (concat (mapcar (lambda (d) (if (funcall #'alphaumericp d) (pop c) d)) b))))) f (f "213cba213cba213cba") "213aaa213bbb213ccc"
103 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 19:55:09.82 ID:AG7SQVmm.net] >>81 Perl5 https://ideone.com/2NE6z1
104 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 20:05:33.19 ID:AG7SQVmm.net] >>99 書き込んでから気がついたけど、お題の5個の入力では問題を起こさないが 差ベクトルが短すぎる場合や外積の面積が細過ぎる場合の打ち切りは、 nextで一階層ブロック脱出ではなく更にもう一階層外側のloopに脱出すべきか…orz ま、いいか、テヘペロ
105 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 20:32:21.58 ID:3H79VXon.net] >>64 e^(πi) = e^(3πi) = e^(5πi) = ... = -1 じゃないの?
106 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 21:29:33.47 ID:i4YlDPUd.net] >>101 e^z = -1 に対して z = (2m + 1)i は十分条件でしかないよ 必要十分条件は z = (2m + 1)π/(2nπ - i) なの で今 e^z = -1 を満たす「すべての」zって言われてるから十分条件じゃ意味なのは分かる? そもそも十分条件って言葉は知ってるかな? exp(x) と e^(x) が違うことはわかってる?
107 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 21:50:54.13 ID:vxN19J44.net] お題 大人数で一斉にじゃんけんを行った 各人の手のリストが与えられるのでその中で勝者が何人いるか答えよ (g=グー,c=チョキ,p=パー) gccgc -> 2 ggggggg -> 0 cppcppppccpppppc -> 5 cppcppppccpgpppc -> 0
108 名前: mailto:sage [2018/04/30(月) 21:51:16.28 ID:TVB5RPq5.net] >>102 それ、おかしくない? m = n = 1 のとき、 すなわち e^((3*pi)/(2*pi - i)) を wolfram-alpha に食わせてみたんだが、-1 にならない www.wolframalpha.com/input/?i=
109 名前:e%5E((3*pi)%2F(2*pi+-+i)) >>64 exp((x + y*i)(p.v.Log|e| + i*arg(e))) = -1 ってどういう意味なの? [] [ここ壊れてます]
110 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 22:01:50.32 ID:XN8sO4Rn.net] >>103 C++ https://ideone.com/C34KkK
111 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 22:07:39.31 ID:i4YlDPUd.net] >>104 exp(z) := Σ{n∈N}z^n/n! pv log(z) := log(z)の主値 arg(z) := 複素数zの偏角 リンクの wolfram-alpha はそりゃ値が一致しないよ。前提が違うんだから
112 名前: mailto:sage [2018/04/30(月) 22:51:37.38 ID:TVB5RPq5.net] >>102 >>106 >>102 z = (2m + 1)π/(2nπ - i) これを愚直に展開すると z = (2m + 1)・2nπ/(4n^2・π^2 + 1) + j(2m + 1)(4n^2π^2 + 1))…@ 一方 複素指数関数を e^z = Σz^n/n! と定義して z = x + yj(x, y ∈ R) のとき、 |e^z| = |e^x|、かつ |e^yj| = 1 ここで e^z = -1 だから |e^z| = |e^x| = 1, x ∈ R x = 0 にしかならないけれども、@のzの実部はm, n によっていろいろ変わるのはおかしいね
113 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 22:55:46.76 ID:i4YlDPUd.net] >>107 いやだから e^z(2.718281828...のz乗) と exp(z) は別物だって言ってんじゃん わざと嫌がらせしてる?
114 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 22:58:05.91 ID:3TseVeeC.net] >>103 Emacs Lisp (defun f (g) (let* ((c (concatenate 'list g)) (p (remove-duplicates c))) (if (= (length p) 2) (count (cdr (assoc (apply #'+ p) '((202 . ?g) (211 . ?c) (215 . ?p)))) c) 0))) (f "gccgc") 2 (f "ggggggg") 0 (f "cppcppppccpppppc") 5 (f "cppcppppccpgpppc") 0
115 名前: mailto:sage [2018/04/30(月) 23:18:07.22 ID:TVB5RPq5.net] >>108 え? z = x + yj exp(z) = Σz^n/n! と定義するのと exp(x + jy) = e^x・(cos(y) + j・sin(y)); x, y ∈R と定義するのとは同値でしょう? 後者を採用して、|exp(x + jy)| = |e^x| e^z = -1 より |e^x| = 1, x ∈ R だったら、やっぱり x = 0 しか取り得ないと思いますが…
116 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 23:25:43.22 ID:i4YlDPUd.net] >>110 同じことを何度言えば理解してもらえるんですかね x = 2.71828...とすると x^z = exp(z log(x)) = exp(z(pv log|x| + i*arg(x)) = exp(z + 2nπzi) exp(z + 2nπzi)とexp(z)が一般に同値な訳ないでしょ 何度も言うけどわかりました? (2.718...)^z と Σ{n∈N}(z^n/n!)は全く別の値なんです
117 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 23:41:24.15 ID:i4YlDPUd.net] ついでになんか勘違いしてるみたいだから指摘しておきますけど xが実数であっても exp(x) != (2.7...)^x じゃありませんからね(e.g. x=0.5などとすれば直ちに自明でしょう) 高校数学の感覚ではこれらは同じ値なのでしょうけど複素解析の文脈では指数関数は一般に多値関数ですからね
118 名前:デフォルトの名無しさん mailto:sage [2018/04/30(月) 23:42:01.80 ID:i4YlDPUd.net] 誤字 xが実数であっても exp(x) = (2.7...)^x じゃありません
119 名前: mailto:sage [2018/04/30(月) 23:58:31.96 ID:TVB5RPq5.net] >>113 z = x + yj,∈C, x, y ∈R において、 複素指数関数 exp(z) を exp(z) = Σz^n/n! と定義する…@ exp(x + jy) = e^x・(cos(y) + j・sin(y)); x, y ∈R と定義する…A @⇔Aであることを前提とすれば、 x ∈R において exp(x) = e^x(cos0 + j・sin0)(∵A) = e^x(1 + j・0) = e^x で xが実数なら exp(x) = (2.7...)^x ですね でも >>111 の欠点がみえない exp(z) = exp(z + 2nπj)(複素指数関数の周期性) なのは理解しているつもりなんですが
120 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 00:10:24.66 ID:W5y6CuNF.net] >>114 再三再四申し上げますが一般に exp(z) と ネイピア数のz乗は別物です あと何百回言えばこれを理解してもらえるんですかね 従ってAの定義は「exp(x + jy) = exp(x)・(cos(y) + j・sin(y))」としなければならないし 偽な命題を前提とすればそりゃどんな結論だって導けるってものです というのも P ⊃ Q は P が偽の時常に真ですから
121 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 00:11:15.20 ID:k1G9EgK2.net] プログラミングやってると数学学びたい欲求が出てくる
122 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 00:11:33.54 ID:bMu1E696.net] 同値の意味も知らないような数学の素人がなにか言い合いしてますねえ
123 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 00:29:59.90 ID:zX/Wrdt+.net] お題 o,d,a,iからなる文字列Sが与えられる。 Sからいくつかの文字を取り除くことで"odai"をN回繰り返した文字列が得られたとする。 Nの最大値を求めよ。 odaiodai -> 2 ooddaai -> 1 idao -> 0 ododoadioadioadioadioadioadiodaioadodioadiaodi -> ?
124 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 00:33:21.72 ID:6vH9r7He.net] >>103 Perl5 use feature 'say'; for (<DATA>) { chomp; my ($i, %h); $h{$_}++ for split''; %gcp = (g=>c, c=>p, p=>g); delete @gcp{keys %h}; @r = keys %gcp; $k = $gcp{$r[0]}; say "$_ -> ", (1 == @r) ? $h{$k} : 0; } __DATA__ gccgc ggggggg cppcppppccpppppc cppcppppccpgpppc 実行結果 $ perl 11_102.pl gccgc -> 2 ggggggg -> 0 cppcppppccpppppc -> 5 cppcppppccpgpppc -> 0
125 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 01:08:35.42 ID:sD3/P01t.net] >>78 javascript var{nums,wrds}=(str=>eval(`((nums,...wrds)=>({nums,wrds}))\`${str.replace(/[a-zA-Z]+/g,'\${"$&"}')}\``))('213cba213cba213cba') console.log(String.raw(nums,...(wSrt=>wrds.map(w=>wSrt.splice(0,w.length).join``))([...wrds.join``].sort())))
126 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 01:09:16.19 ID:6vH9r7He.net] >>118 Perl5 use feature 'say'; for (<DATA>) { chomp; @k = qw{o d a i}; $j = 0; for ($n = 0; $n < length($_)>>2 ; $n++) { for $c (qw{o d a i}) { $i = index $_, $c, $j; goto L1 if $i < 0; $j = $i + 1; } } L1:; say "$_ -> ", $n; } __DATA__ odaiodai ooddaai idao ododoadioadioadioadioadioadiodaioadodioadiaodi 実行結果 $ perl 11_117.pl odaiodai -> 2 ooddaai -> 1 idao -> 0 ododoadioadioadioadioadioadiodaioadodioadiaodi -> 5
127 名前: mailto:sage [2018/05/01(火) 01:13:28.97 ID:bK+upqA8.net] >>115 >一般に exp(z) と ネイピア数のz乗は別物です それは心得ているつもりです。 以下、結構雑に書きますが、 exp(z)=Σz^n/n!…@ と定義する。 このときも@が収束すること、および exp(z1 + z2) = exp(z1)exp(z2), z1, z2 ∈C…A が成立することを暗黙の了解とする z∈C, z = x + jy, x, y ∈R のとき exp(z) = exp(x)exp(jy) …B(∵A) exp(x) = Σx^n/n! = e^x exp(jy) = 1 + (yj)/1! - y^2/2! - j・y^3/3! + y^4/4! + j・y^5/5! + … =(1 - y^2/2! + y^4/4! - …) + j ・ (y/1! - y^3/3! + y^5/5! - …) =cos(y) + j・sin(y) すなわち exp(z) = e^x・(cos(y) + j・sin(y))…C 以上の議論は手元の教科書の引き写しです。
128 名前: mailto:sage [2018/05/01(火) 01:14:36.19 ID:bK+upqA8.net] >>122 続き >従ってAの定義は「exp(x + jy) = exp(x)・(cos(y) + j・sin(y))」としなければならないし 以上より exp(x + jy) = e^x・(cos(y) + j・sin(y)) …Cで問題ありません。 だから、x ∈ R とすれば exp(x) = e^x(cos0 + j・sin0) = e^x になります つまり >>115 をより正確にいえば 「exp(x) は e^x の自然な拡張」となり、>>113 は誤りとなります また exp(z) の絶対値を考えると .(exp(x + jy)) = √((e^x・cos(y))^2 + (e^x・sin(y))^2) = e^x・√(cos^2(y) + sin^2(y)) = e^x すなわち |exp(z)| = |e^x| すなわち複素指数関数の絶対値は引数の実部によって決まり、引数の虚部の影響を受けません 以上の議論は https://ja.wikipedia.org/wiki/%E8%A4%87%E7%B4%A0%E6%8C%87%E6%95%B0%E5%87%BD%E6%95%B0 に書いてありました
129 名前: mailto:sage [2018/05/01(火) 01:33:38.84 ID:bK+upqA8.net] >>123 続き 今 exp(z) = -1, z ∈C >>123 Cより exp(x + yj) = -1, x, y ∈R e^x(cos(y) + j・sin(y)) = -1 e^x・cos(y) + j・e^x・sin(y) = -1…D よってDの両辺の虚部が 0 だから e^x・sin(y) = 0 e^x > 0 より sin(y) = 0 y = nπ…D(必要条件) このとき cos(y) = ±1 このときDの両辺の実部を比較して e^x(±1) = -1 e^x > 0 だから cos(y) = -1 となるのはDの中でも y = (2n + 1)π, n ∈Zのときのみ また y = (2n + 1)π のとき、e^x = 1, x = 0 >>110 exp(z) の絶対値は z の実部にのみ影響されます exp(z) = -1 から |exp(z)| = 1 |exp(z)| = e^x ですから e^x = 1 これを満たすのは x = 0 のみ、という推論はどうでしょうか?
130 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 01:43:11.17 ID:W5y6CuNF.net] >>122-124 >exp(x) = Σx^n/n! = e^x なんでexp(x)とe^xを比較する議論の前提で、この2つが正しいことを利用してるの? 循環論法です。破綻しています >exp(jy) = 1 + (yj)/1! - y^2/2! - j・y^3/3! + y^4/4! + j・y^5/5! + … >=(1 - y^2/2! + y^4/4! - …) + j ・ (y/1! - y^3/3! + y^5/5! - …) exp(x)が収束することしか仮定されていないためこの変形は成り立ちません きちんと絶対収束(absolute convergence)することを示すか仮定しましょう。破綻しています よって以後の議論は全て誤りですので参考になりません 殊に循環論法による誤謬は致命的ですね あなたはまず複素解析の文脈で任意の実数xに対して exp(x) = (2.7...)^x となる事を証明しなければなりません 尤も、expは単射なのに対してa^zは多価関数なのでこれらが等しくないことは計算するまでもなく自明なんですが、 なんでここにこんなにつっかかってくるんですかね……
131 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 01:56:50.61 ID:sD3/P01t.net] >>103 javascript var f = s => { var d = [...new Set(s)] return d.length == 2 ? ((a,b) => ({g:'c',c:'p',p:'g'})[a] == b)(d[0],d[1]) ? s.match(new RegExp(d[0],'g')).length : s.match(new RegExp(d[1],'g')).length : 0; } console.log(f('gccgc')) //=> 2 console.log(f('ggggggg')) //=> 0 console.log(f('cppcppppccpppppc')) //=> 5 console.log(f('cppcppppccpgpppc')) //=> 0
132 名前: mailto:sage [2018/05/01(火) 02:00:54.53 ID:bK+upqA8.net] >>125 >>122 >>exp(x) = Σx^n/n! = e^x >なんでexp(x)とe^xを比較する議論の前提で、この2つが正しいことを利用してるの? >循環論法です。破綻しています いいえ循環論法ではありません 仮定は exp(z) = Σz^n/n! が z ∈ C で収束すること…@ exp(z1 + z2) = exp(z1)exp(z2), z1, ze ∈C …A のみです z = x + jy と置いたとき exp(z1 + z2) = exp(z1)exp(z2), z1, z2 ∈C…A が成り立つ前提で z1 = x, z2 = yj とおいて exp(x + yj) = exp(x)exp(yj) と変形します もともと exp(z) = Σz^n/n! と置いたのですから x ∈R のとき、exp(x) = Σz^n/n! Σx^n/n! = e^x の収束は別途長い議論を経ないといけませんが、ここでは既知としています 最終的には >>122 は exp(x + jy) = e^x(cos(y) + j・sin(y)) を導きだすのが目的です
133 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 02:04:42.58 ID:MakmSkau.net] 数学荒らし本当うざ…
134 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 02:12:20.66 ID:sD3/P01t.net] >>126 ((a,b) => ({g:'c',c:'p',p:'g'})[a] == b)(d[0],d[1]) は単純に ({g:'c',c:'p',p:'g'})[d[0]] == d[1] でよかった。 最初関数として作ってあったもので単純化し忘れ。
135 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 02:19:47.25 ID:6vH9r7He.net] >>78 Perl5 >>84 を書き込んだけど気に入らなかったので少し修正した。 @s = split '','213cba213cba213cba'; @k = grep{$s[$_] =~ /[a-z]/} 0..$#s; @s[@k] = sort @s[@k]; print @s,"\n"; 実行結果 $ perl 11_77_2.pl 213aaa213bbb213ccc
136 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 02:24:25.71 ID:85dldNJr.net] >>127 >exp(x) = Σx^n/n! = e^x において e^x = Σx^n/n! と勝手にしているのが結果を先取り(しかも誤謬)していて宜しくないと言っているのです 「複素解析の文脈」では w^z = exp(z*(p.v. log|w| + i*arg(w))) なのです これは定義です。これが気に食わなくて、どうしても exp(x) = e^x を言いたいのであれば より妥当性がありwell-definedな w^z の定義を提示してください 繰り返します。あなたは「e^z = exp(z)が成立するように、任意の複素数w, zに対して w^z を定義する」必要があります >Σx^n/n! = e^x の収束は別途長い議論を経ないといけませんが、ここでは既知としています Σx^n/n!が収束するだけでは弱くて、 「絶対収束」(絶対に収束するという意味ではありません)を仮定する必要があると言っているんですけど まあ枝葉末節なので不問とします
137 名前: mailto:sage [2018/05/01(火) 02:26:11.46 ID:bK+upqA8.net] >>125 >exp(x)が収束することしか仮定されていないためこの変形は成り立ちません >きちんと絶対収束(absolute convergence)することを示すか仮定しましょう。 厳しいですね…手元の教科書(高木・解析概論、ただ結構いい加減な本だそうですが)の引き写しなんですが… 虚数単位を j と置いていることからもわかるように、工科系の出自で、厳密な話は苦手です >なんでここにこんなにつっかかってくるんですかね…… そのようなつもりはなく、純粋に数学的関心から書いているものです >>124-122 >>114 >>110 >>107 >>104 を見返しても問題はないと思いますが >あなたはまず複素解析の文脈で任意の実数xに対して exp(x) = (2.7...)^x となる事を証明しなければなりません >尤も、expは単射なのに対してa^zは多価関数なのでこれらが等しくないことは計算するまでもなく自明なんですが、 exp(z) = exp(z + 2nπj) なので exp(z) は周期関数であることはわかるのですが、 これ以上のことはちょっとわかりません、今日はここまででお休みします お付き合いくださりありがとうございました
138 名前:デフォルトの名無しさん [2018/05/01(火) 02:37:06.62 ID:D2CDUI2h.net] >>88 Kotlin https://paiza.io/projects/lG5nWGdi-n7XwGLr0YAi_A Javaのライブラリに日付や曜日の計算任せちゃってて自分ではほとんど何もやってません。
139 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 02:39:14.06 ID:MakmSkau.net] スレタイも読めない数学荒らしが一族郎党苦しんで死にますように。
140 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 02:46:03.00 ID:6vH9r7He.net] そこまでのろわなくてもよい希ガスるけど、、 数学的お題でもいいけど、明快なお題を出すか、回答を書き込むかを重視し 解釈のかみ合わない議論は程々にした方が医院ジャマイカ
141 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 03:31:48.56 ID:7ekaWt6m.net] >>118 Emacs Lisp (defun f (S) (let ((s 0) (N 0)) (ignore-errors (loop (mapcar (lambda (c) (setq s (1+ (position c S :start s)))) "odai") (incf N))) N)) (f "odaiodai") 2 (f "ooddaai") 1 (f "idao") 0 (f "ododoadioadioadioadioadioadiodaioadodioadiaodi") 5
142 名前:デフォルトの名無しさん [2018/05/01(火) 04:52:28.26 ID:D2CDUI2h.net] >>103 Kotlin https://paiza.io/projects/bk-KHJlrtxxPPYLndwrHvA
143 名前:デフォルトの名無しさん [2018/05/01(火) 05:19:23.17 ID:D2CDUI2h.net] >>118 Kotlin https://paiza.io/projects/iL8CfccFm8DLlbB5dA63zQ
144 名前:デフォルトの名無しさん [2018/05/01(火) 05:47:58.01 ID:D2CDUI2h.net] >>118 Perl 正規表現のパターンを作ってループさせてみました。 https://paiza.io/projects/pcQMuxJqlGR75LNkXho93w
145 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 07:17:35.34 ID:dg2b7E11.net] >>132 純粋に数学的関心ならもうプログラミング関係ないんだから、適切な板、スレを探してそっちで好きなだけやってこい
146 名前:デフォルトの名無しさん [2018/05/01(火) 08:38:29.97 ID:DfUAZvBS.net] >>103 Common Lisp https://ideone.com/vtkIq4
147 名前:デフォルトの名無しさん [2018/05/01(火) 09:28:24.04 .net] 数学やってる奴は頭悪いってことは分かった
148 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 09:42:49.56 ID:k1G9EgK2.net] 数学は別にいいんだが難しすぎるのはちょっとな 簡単なお題なら個人的に歓迎
149 名前:デフォルトの名無しさん [2018/05/01(火) 10:53:36.69 ID:DfUAZvBS.net] >>118 Common Lisp https://ideone.com/84mgEu
150 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 11:01:22.65 ID:V5+E1IVs.net] >>118 Squeak/Pharo Smalltalk | fn | fn := [:str | | strm odai count | strm := str readStream. odai := 'odai' readStream. count := 0. [strm atEnd] whileFalse: [ ((strm skipTo: odai next) and: [odai atEnd]) ifTrue: [odai reset. count := count + 1] ]. count ]. fn value: 'odaiodai'. "=> 2 " fn value: 'ooddaai'. "=> 1 " fn value: 'idao'. "=> 0 " fn value: 'ododoadioadioadioadioadioadiodaioadodioadiaodi'. "=> 5 "
151 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 11:23:10.29 ID:PxRnJhKl.net] >>103 Squeak/Pharo Smalltalk | numOfWinnersOf | numOfWinnersOf := [:jkStr | | arr set | arr := jkStr asArray collect: [:chr | 'gcp' indexOf: chr]. (set := arr asSet) size = 2 ifFalse: [0] ifTrue: [ | one other | one := set anyOne. other := set remove: one; anyOne. arr occurrencesOf: (one - other \\ 3 = 2 ifTrue: [one] ifFalse: [other]) ] ]. numOfWinnersOf value: 'gccgc'. "=> 2 " numOfWinnersOf value: 'ggggggg'. "=> 0 " numOfWinnersOf value: 'cppcppppccpppppc'. "=> 5 " numOfWinnersOf value: 'cppcppppccpgpppc'. "=> 0 "
152 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 11:50:43.04 ID:PxRnJhKl.net] >>81 Squeak/Pharo Smalltalk | fn | fn := [:ps | ps asSet size = 4 and: [ ps noneSatisfy: [:p1 | [:p2 :p3 :p4 | (p3 - p2 crossProduct: p4 - p2) = 0 or: [p1 insideTriangle: p2 with: p3 with: p4] ] valueWithArguments: (ps copyWithout: p1) ] ] ]. fn value: {0@0. 1@0. 1@1. 0@1}. "=> true " fn value: {0@0. 1@1. 1@0. 0@1}. "=> true " fn value: {0@0. 2@0. 1@1. 0@2}. "=> false " fn value: {0@0. 1@1. 2@2. 3@3}. "=> false " fn value: {0@0. 0@0. 0@0. 0@0}. "=> false "
153 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 12:02:35.06 ID:pz418p4m.net] >>118 お題のサンプル程度なら正規表現で十分かと PowerShell PS C:\> ([regex]'o.*?d.*?a.*?i.*?').Matches('odaiodai').Count >> 2 PS C:\> ([regex]'o.*?d.*?a.*?i.*?').Matches('ooddaaii').Count >> 1 PS C:\> ([regex]'o.*?d.*?a.*?i.*?').Matches('idao').Count >> 0 PS C:\> ([regex]'o.*?d.*?a.*?i.*?').Matches('ododoadioadioadioadioadioadiodaioadodioadiaodi ').Count >> 5
154 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 12:07:06.40 ID:70o2W7dO.net] 文字をATCGにして長さ1億くらいにすればプログラミングっぽくなるんじゃねえの
155 名前:デフォルトの名無しさん [2018/05/01(火) 12:28:06.18 ID:UGhOjMxe.net] 【安全デマにブーメラン】 山口が自殺したら、次は城島、他のメンバーも酷い運命、食べて応援が応報に rosie.5ch.net/test/read.cgi/liveplus/1525137558/l50
156 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 12:30:10.65 ID:in398Y2z.net] お題 大きさW×Hでポケットのないビリヤード台を想像してください。 左下の座標を(0,0)、右上の座標を(W,H)とします。 位置(0,0)から右上に向かって毎秒(a,b)の速度でボールを射出したとき、 ボールが位置(0,0)に戻ってくるのは何秒後でしょうか? ボールの大きさや摩擦などは無視します。 [input] W H a b (すべて正の整数) [example] 2 4 1 1 -> 8 3 4 2 1 -> 24 4 5 2 4 -> 20 1 2 10 5 -> 0.8
157 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 13:50:08.69 ID:NcJxSmfh.net] 公式があるね。 周期=2WH/gcd(aH,bW) (gcdは最大公約数)
158 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 13:56:33.70 ID:w7H89JvO.net] >>151 Perl5 use feature 'say'; for (<DATA>) { chomp; ($W, $H, $a, $b) = split; ($x, $y, $t) = 0x3; ($w, $h) = ($W, $H); do { ($w, $h) = (2*$w, 2*$h); ($tx, $ty) = ($w/$a, $h/$b); $t = ($tx < $ty) ? $tx : $ty; ($x, $y) = ($a*$t, $b*$t); } while ($x % (2*$W) != 0 or $y % (2*$H) != 0); say "$_ -> $t"; } __DATA__ 2 4 1 1 3 4 2 1 4 5 2 4 1 2 10 5 実行結果 $ perl 11_150.pl 2 4 1 1 -> 8 3 4 2 1 -> 24 4 5 2 4 -> 20 1 2 10 5 -> 0.8
159 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 13:59:50.83 ID:w7H89JvO.net] >>152 やっぱ公約数に帰結するんだ、 >>153 書いてて繰り返し不要な解法がありそうだという気がしてきた まいいや自分で考えることも面白いから
160 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 15:18:38.67 ID:V5+E1IVs.net] >>151 Squeak/Pharo Smalltalk | fn | fn := [:W :H :a :b | | time | time := 2 * W * H / (b * W gcd: a * H). time isInteger ifTrue: [time] ifFalse: [time asFloat] ]. fn valueWithArguments: #(2 4 1 1). "=> 8 " fn valueWithArguments: #(3 4 2 1). "=> 24 " fn valueWithArguments: #(4 5 2 4). "=> 20 " fn valueWithArguments: #(1 2 10 5). "=> 0.8 "
161 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 19:12:45.94 ID:sD3/P01t.net] >>118 javascript var f = s => {console.log((s.match(/o.*?d.*?a.*?i.*?/g)||[]).length)} f('odaiodai') //=> 2 f('ooddaai') //=> 1 f('idao') //=> 0 f('ododoadioadioadioadioadioadiodaioadodioadiaodi') //=> 5 >>148 と同じ
162 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 20:49:51.17 ID:2ktnnBej.net] >>103 ruby https://ideone.com/f8m9QV
163 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 21:15:49.14 ID:oZjmv7dj.net] お題 大きさが(X, Y, Z)のナップサックに大きさが(x_i, y_i, z_i)で価値がv_iの荷物を価値の総和が最大になるように詰めたい X Y Z N x_1 y_1 z_1 v_1 ︙ x_N y_N z_N v_N と荷物及びナップサックが与えられた時、最大の価値を求めよ 可能ならどれを詰めたかも求めよ なお荷物は回転させて詰めても良いものとする
164 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 21:36:00.67 ID:2ktnnBej.net] >>118 ruby https://ideone.com/4Ra0WG
165 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 22:01:39.67 ID:bRlEbj+U.net] ナップザックというか箱だなそれ (雑感)
166 名前:デフォルトの名無しさん [2018/05/01(火) 22:40:45.68 ID:7ekaWt6m.net] お題 政令指定都市名を受け取り, 隣接する区を異なる色になるように塗り分けるのに必要な最少の色数を返す. f(Sagamihara) => 2 f(Yokohama) => 4
167 名前:デフォルトの名無しさん [2018/05/01(火) 22:43:51.19 .net] >>158 は、巡回セールスマン問題に並んで有名なナップサック問題である。 なお、この手の問題をNP完全問題だとかNP困難問題だとか呼ぶのは 「ナップサック」(NaPpsuck)に由来する。
168 名前:片山博文MZ mailto:sage [2018/05/01(火) 22:47:15.06 ID:Bi25k6nv.net] non-polynomial
169 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 22:53:05.87 ID:Q2z4i3xl.net] 数学荒らし死ね
170 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 22:54:11.24 ID:RbfjP2ra.net] 自分が理解できないからって数学荒らし呼ばわりは惨めすぎるね
171 名前:デフォルトの名無しさん mailto:sage [2018/05/01(火) 23:00:54.97 ID:dg2b7E11.net] >>162 民明書房か
172 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:09:48.80 ID:WLxRJQ+g.net] >>165 じゃロシア語で埋めてくな。 文句ないんだろ。
173 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:16:51.78 ID:WLxRJQ+g.net] Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 11 апреля 2015; проверки требуют 20 правок. Бу́ря (шторм) — собирательное понятие, обозначающее очень сильный ветер (а также сильное волнение на море), возникающий по различным причинам и в разных областях Земли. Скорость приземного ветра (на стандартной высоте измерений 6—12 м над земной поверхностью) при буре составляет, по разным источникам, 15—20 м/с и более (21-25 м/с или 75-88 км/ч). Бури бывают снежные, песчаные и водные. Скорость ветра при буре гораздо меньше, чем при урагане, однако буря чаще всего сопровождается переносом песка, пыли или снега, что приводит к ущербу се
174 名前:|ьскому хозяйству, путям сообщения и другим отраслям экономики. [] [ここ壊れてます]
175 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:18:35.47 ID:WLxRJQ+g.net] Буря может наблюдаться: при прохождении тропического или внетропического циклона; при прохождении смерча (тромба, торнадо); при шквале — кратковременном усилении ветра, связанном с местной или фронтальной грозой. К бурям по шкале Бофорта относятся ветры скоростью более 20 м/с (9 баллов), а к ураганам — ветры со скоростью более 32,6 м/с (12 баллов). Кроме того, по этой шкале различают: сильную бурю со скоростью 24,5-28,4 м/с (10 баллов); жестокую бурю со скоростью 28,5-32,6 м/с (11 баллов).
176 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:19:06.57 ID:WLxRJQ+g.net] Термин «ураган» имеет также более узкое значение — тропический циклон. По месту образования тропические циклоны делят на: Субтропический шторм Тропический шторм Ураган (Атлантический океан) Тайфун (Тихий океан) Если скорость ветра в тропическом циклоне превышает 60 км/ч, ему присваивается собственное имя.
177 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:20:01.14 ID:WLxRJQ+g.net] По мнению американских учёных, для областей, расположенных в северных широтах, снежной бурей можно считать зимний сильный ветер, во время которого скорость ветра достигает и превышает 15 м/с (56 км/ч). При этом температура воздуха опускается до −7 °C и ниже. Территория распространения снежной бури может быть сколь угодно обширной.
178 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:32:41.39 ID:Ahv/tBZs.net] 数学は少なくとも話してる本人は内容を理解している 一方お前のクソみたいなロシア語はお前はその内容を理解していない 一つ聞くが、お前がコピペした文章の中には原意が支配するという意味のロシア語の単語が出てくるが、 その単語の性数態をお前は適切にこたえられるか? 答えられないだろうな。奇を衒って知りもしない外国語の文章をコピペしただけなんだから
179 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:46:25.46 ID:bQ3xZw0Z.net] >>158 これは普通のナップザック問題と違って、荷物を積む積まないの選択肢のみならず それに加えナップザック中に残されているスペースの形状・大きさ、 荷物を積むならば配置する向きと位置 そういったすべての条件の組み合わせに配慮して、最終価値最大の解を探索せねばならず、 単に荷物の重さと価値のみに着目して動的計画法で価値最大化プログラムをちょいちょいと書く ような課題とは全然違った難しさがあるな…
180 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:47:08.25 ID:WLxRJQ+g.net] なるほど。じゃ落語で埋めてくわ。 本人が理解してりゃスレ違いでもいいらしいからな。
181 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:49:53.30 ID:Ahv/tBZs.net] >>174 数学が理解できなくてそんなに悔しかった?? 自分がロシア語も理解できないのにコピペしたのがバレてそんなに悔しかった?? 本当に惨めだね。あ、僕は落語なら浜野矩随が好きだからよろしくね、ど低能くん^^
182 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:50:17.20 ID:WLxRJQ+g.net] こんな話がございます。 両国の回向院に猫塚トいうものがございます。 猫が死にますト、飼い主が回向料とともに、猫の亡骸を持ち込みまして。 寺の僧侶がお経を読んで、猫を葬ってくれるという。 これは、この塚に最初に入ったという猫の話でございます。 八丁堀の玉子屋新道に、魚屋を営む定吉ト申す者がございました。 もっとも、魚屋とは名ばかりで、その実は博奕打ちでございます。 毎日を遊んで暮らしている。
183 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:50:56.06 ID:WLxRJQ+g.net] この日も、朝湯の帰りに馴染みの三河屋という居酒屋に立ち寄りまして。 風呂あがりの一杯とばかりに、呑気に引っ掛けておりますト。 ポカッ、ポカッと、頭の上から妙な音が聞こえてくる。 博奕打ちというのは、我々とはものの考え方が異なっているようで。 ――板に何かを叩きつける音がする。 なるほど、やってやがるな――
184 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:51:47.73 ID:WLxRJQ+g.net] ト、てっきり丁半博打の壺を伏せる音と勘違いいたしまして。 「おい、六さん」 店の者を呼びつけます。 「なんだい、水臭えじゃねえか。やってるならやってるで、教えてくれてもいいだろうに。俺も仲間に入れてくれ。取り次いでくんなよ」 「博奕ですか。滅相もない。うちではそういったことはさせません。二階は物置ですよ」
185 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:53:01.26 ID:WLxRJQ+g.net] それでも、確かに音がするのは妙でございます。 店の者が二階へ上がっていって、やがて下りてまいりました。 「分かりました。あれは猫です」 こういった店は、商売柄、どうしても猫が寄ってくる。 今朝も早くに仕入れておいたイナダを、勝手に食ってしまったそうで。 あんまり腹が立つから、焼け火箸で目玉を刺してやろうかとも思ったが。 店の主人が、せめて橋の上から放り投げる程度にしてやれと言ったという。
186 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:54:13.04 ID:WLxRJQ+g.net] 「それで柱にふん縛っておいたんですがね。今、見に行ったら、なんとか逃げ出そうとして、立ち上がっては倒れてやがる。あれはその音ですよ」 定吉は柄にもなく、猫がちょっと不憫に思えまして。 死なせるくらいなら、自分が引き取って育てるからト。 金を渡して猫を貰い受けました。 差し毛の一本も見当たらない、正真正銘の黒猫です。 定吉は懐に入れるト、店を出て家に帰った。
187 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:54:44.10 ID:WLxRJQ+g.net] 家では女房のお滝が待っています。 定吉が懐から黒猫を取り出しますト、途端に渋い顔を浮かべまして。 「やだよ、そんなものを持って帰って。私は猫は嫌いなんだよ」 ト、そっぽを向いて風呂に行ってしまう。 定吉は、自分が命を救ってやった猫ですから。 恩を着せるわけではないが、やはり可愛い。 一人残った家の中で、猫を抱き上げて話しかける。
188 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:55:53.83 ID:WLxRJQ+g.net] 「そういや、名前を聞いてこなかったな。大抵の猫ならタマとかミケとか付けるんだが、お前はそんなガラじゃねえ。全身真っ黒で、熊みてえだもんな。そうだ。クマってのはどうだ」 するト、猫がにゃーごト鳴く。 「にゃーごだと。ヘヘ。鳴かなくていいから、恩返しのひとつでもしてみろよ。俺をちょっとは儲けさせてくれたら、拾った甲斐もあるってもんだ」 ト、猫に博奕の講釈をいたします。
189 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:57:44.85 ID:WLxRJQ+g.net] 「一つでやるのをチョボイチ、 二つ使うのを丁半、三つ使うのをきつねと言う。俺がやってるのは丁半だ。グニの半、二ゾロの丁ってな」 定吉は賽を湯のみに入れて、畳の上に伏せますト。 「どうだ。表から見たらどの目か分からないだろう。だから、銭を賭けて当てるんだ。猫は魔物というから、お前なら当てられるだろう。おい、なんとか言ってみろよ」 猫は相変わらず、にゃーごト鳴く。
190 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:58:41.40 ID:WLxRJQ+g.net] 「俺は、丁が出ると思うな。お前は何だ。にゃーごか。よし、俺が丁で、お前がにゃーご。勝負ッ」 ト、戯れながら湯呑みを開けますト、一二の半。 「おかしいな、半か。するってえと、お前のにゃーごは半か。ヘヘ、にゃご半か。それじゃあ今度は俺が半だ」 すると、今度は猫がにゃご、にゃごト、二回鳴く。
191 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 00:59:18.14 ID:WLxRJQ+g.net] 「なんだい、妙な鳴き方をしやがる。今度はにゃごにゃごの丁ってか」 ト、笑いながら湯呑みを開けるト、二ゾロの丁。 それから何度繰り返してみましても、猫がにゃーごと鳴くと半。 にゃごにゃごト、二回鳴くと丁が出ます。 「お前、本当に恩返ししてくれるつもりだな。こいつはいい」
192 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:00:01.79 ID:WLxRJQ+g.net] それから定吉は、賭場へ行くたびにこの猫を懐に忍ばせていく。 にゃーごの半、にゃごにゃごの丁で、どんどん金が儲かりまして。 羽振りがよくなるト、兄い、親分と立てられるようになる。 猫を始終連れて歩くので、そのうちに猫定と呼ばれるようになった。
193 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:03:08.53 ID:WLxRJQ+g.net] 博徒の世界では、あだ名がついたら一人前ト申すそうでございますが。 一人前になるト、自然、悪評も目立つようになる。 そのうちに江戸にいられなくなり、ふた月ばかり旅に出ることにいたしまして。 定吉は、猫を女房に預けて家を出た。 これが惨劇の幕開けでございます。 ――チョット、一息つきまして。
194 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:03:26.56 ID:bQ3xZw0Z.net] 数学厨よりひどいあらしだな スレが機能しなくなっちゃった
195 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:04:21.64 ID:WLxRJQ+g.net] どこまでお話しましたか。 そうそう、博奕打ちの定吉が、猫の鳴き声で賽の目を当て、兄い、親分ト立てられるようになるところまでで――。 亭主の定吉が家を空けますト。 女房のお滝は、子分の若い者を家に引き入れるようになりまして。 長屋の住人たちが眉をひそめるのも、まったく気にしておりません。
196 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:13:03.09 ID:p96PUqzp.net] 数学ができないやつは論理的思考もできないということを示す良い例だな 頼むからスレから未来永劫消えてくれ
197 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:17:36.33 ID:bQ3xZw0Z.net] いてもいいけど荒らすな お題を出し 解答プログラムを書くこと
198 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:21:54.54 ID:Ahv/tBZs.net] あの〜続きが気になるから onboumaru.com/049-nekosada から無断転載した「猫定」を 最後まで張ってくださいませんか?? 無能ロシア語落語さん^^
199 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:22:07.91 ID:WLxRJQ+g.net] 自分が理解できれば何を書いてもいいというのは数学厨が示したルールだが。 文句を言われたらこう言って開き直ればいいそうだ。 「自分が理解できないからって荒らし呼ばわりは惨めすぎるね」
200 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:23:03.68 ID:bQ3xZw0Z.net] 勘弁してくれよ それこそよそでやってくれ
201 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:23:13.12 ID:WLxRJQ+g.net] >>192 了解。>>192 の依頼に従い、続行する。
202 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:24:29.12 ID:WLxRJQ+g.net] そのうちに、人の噂も七十五日トばかりに。 ほとぼりが覚めた頃を見計らって、定吉が江戸に帰ってくる。 帰ってくるト、猫を連れてまたぞろ博奕へ出掛けます。 その夜。 お滝は、間男の若い者を呼びつけ、相談をした。 定吉がいては、お互い落ち着いて逢瀬を楽しむこともままならない。 いっそ、ひと思いに殺してしまってほしい。
203 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:24:49.92 ID:p96PUqzp.net] >>193 数学は少なくともスレのお題と関係があったがお前のクソみたいなコピペはスレと無関係のただの荒らしだろうが どっちもウザイのは同じだが、一緒くたにすんなハゲ!
204 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:25:10.76 ID:WLxRJQ+g.net] 若い者は、親分の家の姉御に見込まれたことで、男が上がったつもりになり。 箒を斜に切って油をかけ、ジリジリと火で炙る。 これは竹槍を作っているのでございます。 そうして、鯵切り包丁を手ぬぐいで包みますト。 腰に差して、長屋を飛び出していきました。 定吉は、馴染みの賭場へやってきておりましたが。 その晩はどうしたことか、猫が一向に鳴きません。
205 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:26:10.04 ID:WLxRJQ+g.net] 体の具合が悪いのだろうか。 まあ、今まで稼がせてもらったのだから。 ト、この時にはすでに情が移っておりますから。 猫の具合を優先して、素直に帰ることにいたしました。 賭場を出るト、ポツポツと雨が降り出してくる。 定吉は猫を懐に大事にしまって、新橋の喜多川といううなぎ屋に駆け込んだ。 一杯やりながら、猫に鰻の切れ端をやるのが、この頃の楽しみでございます。 ところが、いつもはよく食う猫が、これまた今日に限って口をつけようといたしません。
206 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:28:05.76 ID:WLxRJQ+g.net] 続きを張れと言ったのは数学厨な。
207 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 01:29:36.61 ID:p96PUqzp.net] 責任転嫁すんなハゲ お前のせいで直近のお題が迷子だっつーの もう二度とこないでください
208 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 02:28:44.50 ID:/DSye1oK.net] >>201 お前さんがやってる煽りも、ロシア語はってるいじけた小学生みたいな奴と同じレベルだよ。数学ができたとしても精神レベルは同程度。お前さんにどんな言い分があろうとも、周囲からはそう見える。
209 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 02:46:19.96 ID:7KO0UxVX.net] 重み付き3次元箱詰め問題みたいなもんをここのお題に出すバカ 各都市の区の具体的なグラフが必要な問題をそれぞれのグラフも与えずに出すバカ 自分で解いて楽しいかどうか考えろよ
210 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 02:57:52.71 ID:MBc9Gfy6.net] 出題時の注意>>4
211 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 02:59:10.33 ID:bQ3xZw0Z.net] そら言えてる
212 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 03:36:28.18 ID:XZO+Bco0.net] お題が流れたみたいなのでリンクまとめ >>11 "073:0" -> 18 "07362:450" -> 36 "06464:36470" -> 42 "0827171:28480" -> 66 "0737491:28180" -> 146 "05374734372747484:184618186912120" -> ? >>40 [-1, 2, 8, -9, -2, -3, -6, -10, -8, 5, 7, 9, 7] -> [-1, -9, -3, 5, 7, 9, 7, 2, 8, -2, -6, -10, -8] >>78 "213cba213cba213cba" -> "213aaa213bbb213ccc" >>103 gccgc -> 2 ggggggg -> 0 cppcppppccpppppc -> 5 cppcppppccpgpppc -> 0 >>118 odaiodai -> 2 ooddaai -> 1 idao -> 0 ododoadioadioadioadioadioadiodaioadodioadiaodi -> ?
213 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 05:46:42.10 ID:hUDFoTxj.net] お題:Hello, World!を10回出力してください。ただし、偶数文字を小文字、奇数文字を大文字にすること。さらに3の倍数の文字をランダムな英字にすること。
214 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 07:40:02.20 ID:bQ3xZw0Z.net] >>207 Perl5 use feature 'say'; @s = split'','Hello, World!'; @Az = ('A'..'Z', 'a'..'z'); for $i (0..9) { do {$s[$_ - 1] = $Az[int(rand(@Az))] if $_ % 3 == 0} for 1..@s; my @t; push @t, $i % 2 ? lc $c : uc $c while ($i, $c) = each @s; say @t; } 実行結果 $ perl 11_206.pl HeHlOg wQrLz! HeOlOp wOrLo! HeAlOh wMrLf! HeZlOs wJrLz! HeElOh wBrLg! HeBlOa wIrLy! HeFlOw wCrLb! HeTlOc wSrLp! HeOlOm wNrLx! HeJlOt wSrLl!
215 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 09:59:45.49 ID:hcdKMJ5x.net] >>207 Squeak/Pharo Smalltalk Transcript open. 10 timesRepeat: [ | hello | hello := 'Hello, World!' collectWithIndex: [:chr :idx | ((idx isDivisibleBy: 3) ifTrue: [Character alphabet atRandom] ifFalse: [chr]) perform: (idx even ifTrue: [#asLowercase] ifFalse: [#asUppercase]) ]. Transcript cr; show: hello ] => HeYlOz wJrLp! HeNlOe wArLr! HeBlOn wWrLi! HeSlOx wOrLk! HeKlOy wRrLb! HeIlOs wJrLw! HeMlOd wGrLm! HeElOz wLrLf! HeJlOw wUrLr! HeTlOe wMrLy!
216 名前:デフォルトの名無しさん [2018/05/02(水) 10:26:22.57 ID:PqZlWADT.net] >>207 Common Lisp https://ideone.com/RrNm7L
217 名前:デフォルトの名無しさん [2018/05/02(水) 11:55:19.15 .net] >>207 C言語 https://ideone.com/5UVPgG
218 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 12:51:34.17 ID:lkl981AK.net] お題 N項目のレーダーチャートを考える。 各項目の点数が配列A[N]で与えられるので、 項目の並べ方を調整して、レーダーチャートの面積を最大化せよ。 ※レーダーチャートの形状は正N角形であり、A[i]は中心からの距離を意味する。 {4,3,2,1,0} => 10.9371 //{0,1,3,4,2} {10,0,0,10,10,0,10,10} => 141.421 //{0,0,0,10,10,10,10,10} {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16} => 280.698
219 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 12:58:12.60 ID:Zqd7NSI/.net] >>207 Emacs Lisp (defun* f (a &aux (b 0)) (map 'string (lambda (c) (let ((d (if (= (% (incf b) 3) 0) (+ ?a (random 26)) c))) (if (oddp b) (upcase d) (downcase d)))) a)) (mapc (lambda (x) (princ (funcall #'f x)) (terpri)) (make-list 10 "Hello, World!")) HeElOf wBrLb! HeAlOj wYrLk! HeZlOz wQrLd! HeBlOh wIrLm! HeMlOy wIrLb! HeZlOo wTrLk! HeRlOq wErLv! HeFlOn wKrLq! HeAlOg wQrLv! HeFlOa wRrLi!
220 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 16:46:53.87 ID:Zqd7NSI/.net] >>212 Emacs Lisp (defun* f (a &aux b c) (loop for i from 0 below (length a) do (if (< i 3) (setq b (append b (list (nth i a)))) (dotimes (n (length b)) (push (cons (+ (abs (- (nth n b) (nth i a))) (abs (- (nth (% (1+ n) (length b)) b) (nth i a)))) n) c)) (let ((d (1+ (cdar (sort (copy-seq c) (lambda (a b) (< (car a) (car b)))))))) (setq b (append (subseq b 0 d) (list (nth i a)) (nthcdr d b)))))) b) (defun g (a) (flet ((b (c d e) (when (> c d) (rotatef c d)) (if (= d 0) 0.0 (* d (sin (/ pi e)) d (cos (/ pi e)) c (/ (float d)))))) (let ((h (length a)) (i 0.0)) (dotimes (n h) (incf i (apply #'b (list (nth n a) (nth (% (1+ n) h) a) h)))) i))) (f '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)) => (1 2 4 6 8 10 12 14 16 15 13 11 9 7 5 3) (g (f '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16))) => 280.69829763979334
221 名前: mailto:sage [2018/05/02(水) 17:33:20.51 ID:R3g8E+PO.net] 有効な(注:主観による)お題一覧 >>11 >>40 >>78 >>81 >>88 >>103
222 名前: mailto:sage [2018/05/02(水) 17:33:54.32 ID:R3g8E+PO.net] >>215 >>118 >>151 >>207 >>212
223 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 17:52:43.41 ID:ja0hTifx.net] >>212 J 山型に並べるだけ。 証明は略 (谷がある並び順は谷底を移動してより大きく出来ることが示せる。 谷がない場合、頂上から左右に振り分けて行くのが最大と示せる) NB. sin α sinA =: 1&o.@((o.2)&%)@# NB. ズラして掛けた総和 s =: +/@(*(}.@,{.))"1 NB. 山型に並べる raz =: (/:[)/:(/:+/@(* ,~/"1)@(*\)@i.@#) NB. 山型に並べてズラして掛けた総和にsinα掛けて半分にする ans =: -:@(sinA*(s@raz)) 1行で書くと ans =: -:@(1&o.@((o.2)&%)@#*+/@(*(}.@, {.))"1@((/:[)/:(/:+/@(*,~/"1)@(*\)@i.@#))) 実行例 ans 4 3 2 1 0 10.9371 ans 10 0 0 10 10 0 10 10 106.066 ans 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 280.698 https://%62it.ly/2jlIjeo
224 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 18:09:55.15 ID:ja0hTifx.net] >>212 J 一応総当たりも (sinA, s は同じ) all =: A.~(i.@!@<:@#) min =: >./ ans2 =: -:@((sinA)*(min@(s@all))) 実行例 ans2 4 3 2 1 0 10.9371 ans2 10 0 0 10 10 0 10 10 141.421 ans2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |out of memory: all | ans2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
225 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 18:10:22.50 ID:TAWRfgOr.net] >>207 octave https://ideone.com/j9EsUn
226 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 18:11:53.98 ID:ja0hTifx.net] あれ?バグってるなこれ 総当たりの方は取り消します
227 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 18:20:29.66 ID:ja0hTifx.net] 違った 山型に並べる方を取り消します、だった。
228 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 18:27:52.12 ID:ja0hTifx.net] >>217 正しくはこうでした sinA =: 1&o.@((o.2)&%)@# s =: +/@(*(}.@,{.))"1 raz =: ((\: [) {~ (/: (* <:@(2&*)@(2&|)))@i.@#) ans =: -:@(sinA*(s@raz)) 1行にするのは略 https://%62it.ly/2w3XF0m
229 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 19:04:01.98 ID:intU8xfF.net] >>207 Perl https://paiza.io/projects/3hW53qnnJ69_qwvN_oWiTA 改行入れないで変換しちゃったが、指定がないからまあいいか。
230 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 19:12:21.47 ID:intU8xfF.net] >>212 それ、俺の直感ではsortすればいいだけなんじゃあ? 証明できんけど。
231 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 19:28:18.08 ID:bfgs8qRD.net] >>224 >>212 … (ry > {4,3,2,1,0} > => 10.9371 //{0,1,3,4,2} _________~ ~
232 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 19:30:41.81 ID:intU8xfF.net] >>225 あー。ちょっと違うな。崖作らずに山作る感じか。 証明できんけどw
233 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 20:02:43.46 ID:ja0hTifx.net] >>226 「大きい方から順に取って、既存の列の大きい端の外側に配置」を繰り返せばいい 0 1 2 3 4 のときは 4 4, 3 2, 4, 3 2, 4, 3, 1 0, 2, 4, 3, 1 この時の面積は 1/2・sin 72° ・(0*2+2*4+4*3+3*1+1*0) = 10.9371
234 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 20:20:59.85 ID:E/2WxUaU.net] ググったら公式出てきた chaoxuprime.com/posts/2012-08-08-maximize-the-area-of-a-radar-chart.html プログラムでやるなら、数列の前項後項の積和を最大化する方針がいいのかな
235 名前:225 mailto:sage [2018/05/02(水) 20:32:00.70 ID:QUr6vWwN.net] 面倒なので証明しないで全パターンの面積を求めて最大のやつを出すように作ろうかと思ったが、 腹が減ったので飯食ってから考えよう。(というかこうするならほとんど考える必要ないなこれw)
236 名前:211 mailto:sage [2018/05/02(水) 20:37:30.10 ID:lkl981AK.net] 問題思いついた後、ググって>>228 見つけたので出題した次第です。 最小化については上手い方法があるんだろうか?
237 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 20:44:42.35 ID:ja0hTifx.net] >>228 そのπってのが真ん中から左右に配置して行くインデックス列。 でその証明は不完全(*1)だけど結論は合ってる。 (*1) n-1個の時の最大になる列のどこかに n番目の数を挿入すればn個の時の解が得られる、 ということを証明せずに利用している。 小さくするには山谷の数を多くする(小さいのと大きいのがなるべく隣接するように置く) ってことは直感的にわかるんだけど具体的な構成法は考察がいるな
238 名前:デフォルトの名無しさん mailto:sage [2018/05/02(水) 22:20:26.25 ID:hcdKMJ5x.net] >>212 Squeak/Pharo Smalltalk | fn | fn := [:arr | | strm res | strm := arr sorted readStream. res := OrderedCollection withAll: (strm next: 3). [strm atEnd] whileFalse: [ | next foundPos | next := strm next. foundPos := (1 to: res size) detectMax: [:idx | | a1 a2 | (a1 := res at: idx) + (a2 := res atWrap: idx+1) * next - (a1 * a2)]. res add: next afterIndex: foundPos ]. res := res asArray. (res * (2 * Float pi / res size) sin * ({res last}, res allButLast) / 2) sum -> res ]. fn value: #(4 3 2 1 0). "=> 10.937149937394265->#(0 1 3 4 2) " fn value: #(10 0 0 10 10 0 10 10). "=> 141.42135623730948->#(0 10 10 10 10 10 0 0) " fn value: #(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) "=> 280.6982976397934->#(1 2 4 6 8 10 12 14 16 15 13 11 9 7 5 3) "
239 名前:デフォルトの名無しさん mailto:sage [2018/05/03(木) 00:37:28.69 ID:hmU6w2gD.net] >>231 最小を目指して, 山谷の数を多くしてみました. (defun f2 (a) (let* ((b (sort (copy-seq a) #'<)) (c (/ (length b) 2)) (d (let ((e (subseq b 0 c))) (apply #'append (mapcar (lambda (x) (let ((y (pop e))) (if y (list x y) (list x)))) (reverse (subseq b c)))))) (h)) (loop for i from 0 below (length d) do (setq h (if (or (= (% i 4) 1) (= (% i 4) 2)) (append h (list (nth i d))) (append (list (nth i d)) h)))) h)) (f2 '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)) (8 10 6 12 4 14 2 16 1 15 3 13 5 11 7 9) (g (f2 '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16))) 157.47423241823444
240 名前:デフォルトの名無しさん mailto:sage [2018/05/03(木) 00:59:37.08 ID:SwM9YWB0.net] >>207 Bash https://ideone.com/ljYBHK エラーには目を瞑ってください
241 名前:デフォルトの名無しさん [2018/05/03(木) 01:32:09.14 .net] >>234 無為に捨てられる何千もの’Hello, World!’がかわいそうすぎね?(´;ω;`)
242 名前:デフォルトの名無しさん mailto:sage [2018/05/03(木) 01:32:43.19 ID:rKkc5eBg.net] >>212 Perl5 https://ideone.com/cMJGDR 自力で動的計画法による解法を考えようとしていたけど、 >>228 で紹介されたWEBの解法に勝る見込みが無さそうなので 思考を停止してWEBの解法を愚直に実装したものです
243 名前:デフォルトの名無しさん mailto:sage [2018/05/03(木) 09:34:11.17 ID:dYPbvGoR.net] 【お題】 与えられた整数のリストで、 2つの要素の和が100になるすべての組を列挙せよ。 例: [1, 99, 20] -> [
244 名前:[1, 99]] [62, 116, 181, 86, 60, 98, -16, 73, 131, 16, 80, -81, 40] -> [[40, 60], [-16, 116], [-81, 181]] [100, 0, 100, 0] -> [[0, 100], [0, 100], [0, 100], [0, 100]] [] [ここ壊れてます]
245 名前:デフォルトの名無しさん [2018/05/03(木) 10:12:06.60 ID:6SfrUic2.net] >>237 Rust https://play.rust-lang.org/?gist=29b80b217f269f6ad43a712d52fd595e
246 名前:デフォルトの名無しさん mailto:sage [2018/05/03(木) 10:13:33.58 ID:ngB6qDho.net] >>237 ruby https://ideone.com/Noq7GJ
247 名前:デフォルトの名無しさん [2018/05/03(木) 10:19:06.64 ID:m6mdbiEz.net] >>237 Ruby。 ary.combination(2).select{|x|x.inject(:+)==100}
248 名前:デフォルトの名無しさん mailto:sage [2018/05/03(木) 10:45:51.16 ID:uFV+Z8SY.net] >>237 Squeak/Pharo Smalltalk | fn | fn := [:arr | | bag | bag := Bag new. arr combinations: 2 atATimeDo: [:comb | comb sum = 100 ifTrue: [bag add: comb sorted]]. bag asArray ]. fn value: #(1 99 20). "=> #((1 99)) " fn value: #(62 116 181 86 60 98 -16 73 131 16 80 -81 40). "=> #((-81 181) (-16 116) (40 60)) " fn value: #(100 0 100 0). "=> #((0 100) (0 100) (0 100) (0 100)} "
249 名前:デフォルトの名無しさん [2018/05/03(木) 11:34:54.61 .net] >>237 C言語 https://ideone.com/Ohue7U
250 名前:デフォルトの名無しさん mailto:sage [2018/05/03(木) 13:12:32.47 ID:N6jONgbj.net] >>237 Perl5 use Data::Dump 'dump'; for ([1, 99, 20], [62, 116, 181, 86, 60, 98, -16, 73, 131, 16, 80, -81, 40], [100, 0, 100, 0]) { sub c {my $d = shift; my @l = c(@_) if 1 < @_; @l, map{[$d, $_]} @_}; @s = grep{100 == $$_[0]+$$_[1]} c @$_; print dump($_)."\n->".dump(\@s)."\n"; } 実行結果 $ perl 11_236.pl [1, 99, 20] ->[[1, 99]] [62, 116, 181, 86, 60, 98, -16, 73, 131, 16, 80, -81, 40] ->[[60, 40], [181, -81], [116, -16]] [100, 0, 100, 0] ->[[100, 0], [0, 100], [100, 0], [100, 0]] ※実行にはperlのData::Dumpモジュールが必要ですが、 Ideoneのperl 24にはインストールされてないようでした
251 名前:デフォルトの名無しさん mailto:sage [2018/05/03(木) 13:15:16.16 ID:ngB6qDho.net] >>237 c https://ideone.com/c5I9TG
252 名前:デフォルトの名無しさん mailto:sage [2018/05/03(木) 14:31:25.30 ID:M52LYEAa.net] >>237 javascript var f = l => { console.log( l.reduce((acc, m, i, ary) => [ ...acc, ...ary.slice(i+1) .filter(n => m + n == 100) .map(n => [m, n]) ], [] ) ) } f([1, 99, 20]) //=> [[1, 99]] f([62, 116, 181, 86, 60, 98, -16, 73, 131, 16, 80, -81, 40]) //=> [[116, -16], [181, -81], [60, 40]] f([100, 0, 100, 0]) //=> [[100, 0], [100, 0], [0, 100], [100, 0]]
253 名前:デフォルトの名無しさん mailto:sage [2018/05/03(木) 14:55:50.12 ID:cjR1ezGU.net] Smalltalk のメソッドの充実っぷりには毎回感心
254 名前:デフォルトの名無しさん mailto:sage [2018/05/03(木) 18:28:55.09 ID:qi+bYfi0.net] それなりの規模の処理系(GUI付きOSモドキ)をセルフホスティングで構築・維持していると イディオムがイディオムとして認識・共有されやすく、さらにメソッドとしてまとめられやすいのかも たとえばスクリプト言語処理系でしかないGNU Smalltalkはあまり便利メソッドが増える感じがしないので
255 名前:デフォルトの名無しさん [2018/05/04(金) 19:54:42.66 ID:4Zt1BODM.net] お題 10,000個の単純変数に1から10,000の整数を代入する
256 名前:デフォルトの名無しさん mailto:sage [2018/05/04(金) 20:34:39.46 ID:6j9W/G+p.net] >>248 Ruby (1..10000).each{|i|instance_variable_set("@v#{i}", i}
257 名前:デフォルトの名無しさん [2018/05/04(金) 20:41:53.19 ID:LfImqqRO.net] >>248 Common Lisp https://ideone.com/tM8Nve
258 名前:デフォルトの名無しさん [2018/05/04(金) 20:52:57.61 ID:LfImqqRO.net] >>248 Bash ideone だと駄目だった https://ideone.com/FTnIoN
259 名前:デフォルトの名無しさん [2018/05/04(金) 21:16:29.34 ID:sij7cbOA.net] >>248 Perl for(1..10000){eval”\$a$_=$_”} こんなんでいいのか
260 名前:? [] [ここ壊れてます]
261 名前:デフォルトの名無しさん [2018/05/04(金) 21:23:10.57 ID:sij7cbOA.net] >>251 シェルもperlみたいにeval使えば簡単だと思うよ。その他の言語も同様。 てかこれ、インタープリタの言語にはできてもコンパイルする言語の場合は普通の方法ではできないんじゃないかな。 トリッキーな方法使ってようやっとできるかも知れないって感じじゃないだろうか。
262 名前:デフォルトの名無しさん [2018/05/04(金) 21:49:18.32 .net] Cプリプロセッサでもやろうと思えばできるけど面倒だからやらない
263 名前:デフォルトの名無しさん mailto:sage [2018/05/04(金) 21:57:55.58 ID:mhxe2Hc6.net] お題:パイ生地を折り畳め ただし要素数は二個以上で偶数とする 気が向いた人は逆の操作も実装せよ https://ideone.com/W9woGu
264 名前:デフォルトの名無しさん [2018/05/04(金) 22:02:19.57 ID:sij7cbOA.net] >>255 問題の意味がわからん
265 名前:デフォルトの名無しさん [2018/05/04(金) 23:16:59.35 .net] >>256 分からないときは好きに解釈していいのがこのスレのルール
266 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 00:33:22.15 ID:1BpKS+ks.net] >>255 Perl5 sub f {pop, shift, @_ ? f(@_) : ()} sub g {@_ ? do{my $a = shift; shift, g(@_), $a} : ()} use feature 'say'; sub pai { say "@pai"; @pai = f(@pai); say "@pai"; @pai = g(@pai); say "@pai"; } @pai = qw{1 2 3 4 5 6}; &pai; @pai = qw{a b c d e f}; &pai; 実行結果 $ perl 11_254_1.pl 1 2 3 4 5 6 6 1 5 2 4 3 1 2 3 4 5 6 a b c d e f f a e b d c a b c d e f
267 名前:デフォルトの名無しさん [2018/05/05(土) 01:53:30.67 ID:ia6t0Ogc.net] f, g のような変換関数を作ること自体は簡単な感じがするが、それと「パイ生地の折り畳み」がどう関係するのかがわからんな。 単にここでは折り畳んだらそういう並びになるというルールなだけ?
268 名前:デフォルトの名無しさん [2018/05/05(土) 01:54:26.33 ID:0a7ZDXtf.net] >>255 Common Lisp https://ideone.com/cabI9c
269 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 02:02:07.19 ID:1dAfhim4.net] 半分に折る->後半部を逆順に 折重ねたまま元の大きさまで伸ばす->前半部に合成 パイ生地の作り方からの連想だとは思う
270 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 02:08:07.54 ID:j/DSqy58.net] >>248 javascript eval('var ' + [...Array(10000)].map((_, i) => `a${i+1}=${i+1}`).join()) >>253 の通りやった
271 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 02:13:33.62 ID:1BpKS+ks.net] >>259 分からないと言うことをいろいろ言うつもりは無いけどm >>255 のレスの内容とoctaveのコードから考えて 1 2 3 5 6 をパイ生地のように二つに折り畳んだ 1 2 3 6 5 4 を(下を先に選択して)リストで表すと 6 1 5 2 4 3 だということは想像に難くないので、そう解釈して解答を考えた。 gはその逆。誤解はあるかもしれない。 講釈がコードより長くなったけど、 「だけ?」って一体どういういみだよ?
272 名前:デフォルトの名無しさん [2018/05/05(土) 02:43:53.26 ID:ia6t0Ogc.net] >>263 「パイ生地の折り畳み」という言葉に他の意味がないかってこと。
273 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 07:20:49.47 ID:lTVCLXC3.net] >>255 J l =: -: * -.@(2&|) r =: (# - -:@>:) * 2&| p_fold =: {~((l+r)@i.@#) 折りたたみちょっと面白いね 何度か繰り返し適用すると元に戻る 例えば4つだと p_fold^:3 (1 2 3 4) => 1 2 3 4 と3回適用すると元に戻る (^:n ってのはn回適用するJの仕組み) 同様に p_fold^:5 (1 2 3 4 5 6) =>1 2 3 4 5 6 p_fold^:4 (1 2 3 4 5 6 7 8) => 1 2 3 4 5 6 7 8 p_fold^:9 (1 2 3 4 5 6 7 8 9 10) => 1 2 3 4 5 6 7 8 9 10
274 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 10:31:30.99 ID:5+ZWBL/x.net] >>255 Ruby 条件分岐を使わずにindexのみから求めてみた f=->a{a.size.times.map{|i|a[(i&1)*i-i/2-1]}} g=->a{(s=a.size).times.map{|i|a[~(4*i-2*s+3).abs/2]}} p f[[*1..6]] #=> [6, 1, 5, 2, 4, 3] p g[f[[*1..6]]] #=> [1, 2, 3, 4, 5, 6]
275 名前:デフォルトの名無しさん [2018/05/05(土) 11:51:20.86 .net] >>255 C言語 https://ideone.com/frCiwG
276 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 14:19:41.02 ID:E0VTmDdu.net] >>255 Squeak/Pharo Smalltalk | f g pie | f := [:arr | ((1 to: arr size) collect: [:idx | arr perform: (#(atLast: at:) atWrap: idx) with: (idx / 2) ceiling] ) as: arr species ]. g := [:arr | (((1 to: arr size) select: #even), ((1 to: arr size) select: #odd) reversed collect: [:idx | arr at: idx] ) as: arr species ]. pie := 'abcdefg'. pie := f value: pie. "=> 'gafbecd' " g value: pie. "=> 'abcdefg' " pie := (1 to: 7). pie := f value: pie. "=> #(7 1 6 2 5 3 4) " g value: pie. "=> #(1 2 3 4 5 6 7) "
277 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 16:41:53.04 ID:YacZpoVZ.net] >>255 Squeak/Pharo Smalltalk >>266 っぽい方針も入れて書き直し | f g pie | f := [:arr | ((1 to: arr size) collect: [:m | arr atWrap: m * m even asBit - (m // 2)] ) as: arr species ]. g := [:arr | ((2 to: arr size by: 2), (1 to: arr size by: 2) reversed collect: [:idx | arr at: idx] ) as: arr species ]. pie := 'abcdefg'. pie := f value: pie. "=> 'gafbecd' " g value: pie. "=> 'abcdefg' " pie := (1 to: 7). pie := f value: pie. "=> #(7 1 6 2 5 3 4) " g value: pie. "=> #(1 2 3 4 5 6 7) "
278 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 17:07:44.87 ID:ZO4AhgIr.net] >>266 ってどういう計算してんの?
279 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 17:25:53.15 ID:Js8QmTUw.net] お題 N×Mのフィールドが与えられる。各マスの意味は以下の通りとする。 'S':始点 'G':終点 '.':通行可 '#':通行不可 連続して同じ方向に進むことができないという制約下で、 始点から終点までの最短距離を求めよ。 [example 1] S.... #.... ..#.. ....G => 9 [example 2] S.....G ....... => 12
280 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 17:33:36.44 ID:5+ZWBL/x.net] >>270 配列の長さを L とすると、 f(パイをたたむ)は; i(0 <= i < L)番目の要素を元の配列の (~...~[i / 2]) % L 番目から持ってくればよい (~...~はビット反転を i 回繰り返したもの) g(パイを開く)は; i(0 <= i < L)番目の要素を元の配列の (- 0.5 - |2 * i - L + 1.5|) % L 番目から持ってくればよい
281 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 18:32:03.46 ID:sJdk0i7H.net] [][][] [[[ ] X_[[[ [] ][ [] ][][[[]
282 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 18:51:54.01 ID:c0K4Xq7n.net] 今抱えてる課題 1から100までインクリメントする変数iを用いて 300から1までの実数を100個出力せよ i=1の時は300 i=100の時は1 となる式を考えてちょ(人・ω・)☆
283 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 19:03:50.73 ID:1st6shTW.net] >>274 300 - (299.0 / 99.0) * (i - 1)
284 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 19:06:07.33 ID:j/DSqy58.net] お題:文字駒を滑らせろ 四方を囲いで被われ駒がこぼれる心配のないM×Nマスのボードがある。 ここに英小文字が印字された正方形の駒が適当に配置されている。(駒のないマスは.(ドット)で表す) 与えられる、ボードを傾ける指示を完遂したときの最終盤面を表示せよ。 指示の方向はU(向かい方向)、D(手前方向)、L(左方向)、R(右方向)の四種類。 例1) solve([ '...', '.a.', '...', ], 'UR') // ↓ // [ // '..a', // '...', // '...', // ] https://jsfiddle.net/en6rd3vk/ ※盤面は文字列の配列にしているが文字の配列の配列など言語で扱いやすいよう好きにしてよい 例2) solve( [".....", ".d.i.", "kmegk", "..tu."], "LRRLLUDRRLRLRRURRRRLLLRULDUDULDLLRDULURULUDLDLU
285 名前:DDL" ) //=> [".....", "gk...", "km...", "dietu"] 暇な人は300×300、指示数50くらいでやってみてください。最適化しないと結構時間かかっちゃうと思いますが。 [] [ここ壊れてます]
286 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 19:17:21.84 ID:c0K4Xq7n.net] >>275 ありがとうございます(^○^) 範囲を等分してiと合わせるだけだったんですね これを思いつかないとは・・・寝てきます(・_・;)
287 名前:デフォルトの名無しさん [2018/05/05(土) 19:38:36.14 ID:ia6t0Ogc.net] >>255 色々な言語で書いてみたが、やってることはほとんど同じ。 それぞれの言語の特徴をあまり生かせてない感じがする。 C https://paiza.io/projects/zsjD__CUc4kIlaDd-nYgQQ Kotlin https://paiza.io/projects/ncCwkTCvQ0IsNcZGbpy_vw Perl https://paiza.io/projects/C9lzimZEAZzk25gjn4NGfw
288 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 20:28:32.99 ID:MmzVJzsz.net] >>271 Ruby 愚直に https://ideone.com/SYfrSu
289 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 20:59:38.12 ID:a4pX7/xy.net] >>271 Squeak/Pharo Smalltalk https://ideone.com/ACAeKW
290 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 22:20:56.64 ID:MmzVJzsz.net] >>276 Ruby 傾ける順番だけ最適化 https://ideone.com/4iIY9g
291 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 22:58:44.12 ID:Js8QmTUw.net] お題 Y円を支払うとき、同種の通貨の枚数を最小化する。 Y=500 => 1 (500*1, 同種の通貨は最大1枚) Y=300 => 2 (2*100+2*50, 同種の通貨は最大2枚) Y=40 => 3 Y=60 => 1
292 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 23:08:19.67 ID:MmzVJzsz.net] >>282 通貨の種類は 1, 5, 10, 50, 100, 500, 1000, 2000, 5000, 10000?
293 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 23:19:24.99 ID:Js8QmTUw.net] >>283 それでいいです。任意の種類に対応できたら尚良し
294 名前:デフォルトの名無しさん mailto:sage [2018/05/05(土) 23:53:24.33 ID:gS+4uwRv.net] >>282 => 0 (カード決済または電子マネー決済)
295 名前:デフォルトの名無しさん [2018/05/06(日) 00:22:26.26 .net] >>271 C言語 https://ideone.com/YLAnLJ
296 名前:デフォルトの名無しさん [2018/05/06(日) 01:34:21.80 .net] >>282 C言語 https://ideone.com/RVA3Mk
297 名前:デフォルトの名無しさん [2018/05/06(日) 01:45:52.35 ID:Bse1bLkg.net] >>276 Kotlin https://paiza.io/projects/gVAA38huK6qosFkqbihPTg ボードの内容と傾ける指示は全て標準入力から入力するようにした。
298 名前:デフォルトの名無しさん mailto:sage [2018/05/06(日) 06:45:27.16 ID:lHf8cLJR.net] >>282 Ruby ぴったり払えない時は No Solutions と出力 currency = [1, 5, 10, 50, 100, 500, 1000, 2000, 5000, 10000] sums = currency.size.times.map { |i| currency[0..i].sum } [74664, 55998, 37332, 500, 340, 300, 197, 161, 157, 60, 40].each { |yen| print '%d => ' % yen min = currency.zip(sums).reverse_each.map { |c, s| yen -= c * x = [yen/c, -(-yen/s)].min x }.max puts yen.zero? ? min : 'No Solutions' } #=> 74664 => 4 55998 => 3 37332 => 2 500 => 1 340 => 3 300 => 2 197 => 3 161 => 1 157 => 2 60 => 1 40 => 3
299 名前:デフォルトの名無しさん mailto:sage [2018/05/06(日) 08:03:16.30 ID:939GOaZM.net] >>276 一度でも水平垂直の両方に傾けると 座標じゃなくて単に駒の二次元リストでいけると思うから 指示の短縮と合わせて早くできると思うけど どう書けばいいか悩んでる・・・
300 名前:デフォルトの名無しさん mailto:sage [2018/05/06(日) 08:16:38.56 ID:xMaBOakW.net] >>282 Ruby >>289 を修正 currency = [1, 5, 10, 50, 100, 500, 1000, 2000, 5000, 10000] samples = [74664, 55998, 37332, 500, 340, 300, 197, 161, 157, 60, 40] cands = currency.zip(currency.reduce([]){|s, e| s << s.last.to_i + e}).reverse_each breakdown = lambda do |yen| x = cands.map{|c, s| yen -= c * x = [yen/c, -(-yen/s)].min; x}.max yen > 0 ? 'No Solution' : x end samples.each{|yen| puts '%d => %s' % [yen, breakdown[yen]]} #=> 74664 => 4 55998 => 3 37332 => 2 500 => 1 340 => 3 300 => 2 197 => 3 161 => 1 157 => 2 60 => 1 40 => 3
301 名前:デフォルトの名無しさん mailto:sage [2018/05/06(日) 19:32:00.34 ID:9CUhRDV/.net] }]] [[《_["[[]]" 〈[]》》 [][][]0,1》》〈〉 [] } } "B,V,0%%%,*1BVLO,SASA1`}}//%\\0,1\"VL"\
302 名前:デフォルトの名無しさん mailto:sage [2018/05/08(火) 21:21:59.59 ID:qF4LguOP.net] お題:九九の各段の値を合計せよ https://ideone.com/T3TrFG
303 名前:デフォルトの名無しさん mailto:sage [2018/05/08(火) 21:45:36.53 ID:XzXTdruW.net] >>293 @9`*45
304 名前:デフォルトの名無しさん [2018/05/08(火) 21:54:00.37 ID:rppAglGz.net] はっ。それはもしや45の倍数・・・ おや?こんな夜中に誰だ?
305 名前:デフォルトの名無しさん mailto:sage [2018/05/08(火) 22:14:46.30 ID:8rfWV9vw.net] >>290 それって例えば初期配置が以下のとき(■が駒) □■■□□■ □□■□■□ ■■□■□■ □□■■□□ □■□■□□ ■□■□□■ 最初に例えばULが来ると以下のようになって… ■■■■■■ ■■■■■□ ■■■■□□ ■□□□□□ □□□□□□ □□□□□□ □だけの行、□だけの列はこれからハブいてループ回せるじゃんってことだよね。この例だと下二行。 なるほど命令の最適化ばっかり考えてて全然気づかなかった。
306 名前:デフォルトの名無しさん mailto:sage [2018/05/08(火) 23:30:03.25 ID:y0JbAqkN.net] >>293 Squeak/Pharo Smalltalk (1 to: 9) sum * (1 to: 9) "=> #(45 90 135 180 225 270 315 360 405) " ((1 to: 9) * (Array new: 9 withAll: (1 to: 9))) sum. "=> #(45 90 135 180 225 270 315 360 405) " ついでに全段の合計も ((1 to: 9) sum * (1 to: 9)) sum. "=> 2025 " ((1 to: 9) * (Array new: 9 withAll: (1 to: 9))) sum sum. "=> 2025 " (Matrix rows: 9 columns: 9 tabulate: [:x :y | x * y]) sum. "=> 2025 " ((1 to: 9) asArray +* (Matrix rows:1 columns: 9 contents: (1 to: 9))) sum. "=> 2025 "
307 名前:デフォルトの名無しさん mailto:sage [2018/05/08(火) 23:50:03.66 ID:XzXTdruW.net] >>276 これの最適化したいんだけど誰か大きいボードのサンプルくれないかなあ
308 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 00:00:50.01 ID:yM0yjk1d.net] 激問って未だに更新されてるんだね
309 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 00:58:06.52 ID:NS139TvC.net] >>297 Smalltalk なのに普通だ…いやtabulateが便利そう J 格段の和 +/(*/[)>:i.9 45 90 135 180 225 270 315 360 405 さらに足すと +/+/(*/[)>:i.9 2025 先に,で1次元化してから足せば1文字短く +/,(*/[)>:i.9 2025
310 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 01:51:50.10 ID:bn/AH8fd.net] >>298 すごくでかくなったので分けた。ごめんよjsfiddle... board(1980x1080, 文字列の配列形式) https://jsfiddle.net/eqyuvgm9/ actions(256) https://jsfiddle.net/2j2817rc/ result(1980x1080, 文字列の配列形式) https://jsfiddle.net/uyboko52/ このサンプルでchromeのコンソールで試した結果、 最適化なしでは47.4秒 命令の最適化だけで1.8秒になった >>290 も試してみようと思う
311 名前:デフォルトの名無しさん [2018/05/09(水) 01:56:38.20 ID:qkLXPpHd.net] >>293 Kotlin (1..9).forEach { a -> println((1..9).map { it * a }.sum()) } この1行をファイルに入れて kotlinc -script でファイルを指定するとスクリプトとして実行されて計算結果が出力される。 45 90 135 180 225 270 315 360 405
312 名前:デフォルトの名無しさん [2018/05/09(水) 03:24:50.65 .net] >>293 C言語 https://ideone.com/nGbT40
313 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 04:36:36.06 ID:uBL8ccTk.net] >>293 Nim import math const s1 = (sum[int]([1,2,3,4,5,6,7,8,9])) var s=0; for i in 1..9: s+=s1; echo s
314 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 07:39:32.32 ID:LEGAA83e.net] >>301 命令はもう LDRULDRU... で与えた方がいいかもね この256文字?命令も URDLURDLU まで最適化できちゃうわけだし
315 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 14:54:31.24 ID:LEGAA83e.net] >>301 Ruby >>290 を意識して最適化してみた https://ideone.com/zwyM7p 2回動かした後、適切に反転させて右下が開くようにしておけば、 abc- ed-- f--- ---- LとRは、 cba- de-- f--- ---- UとDは、 fdc- eb-- a--- ---- と垂直、鉛直方向にそれぞれ反転するだけでいい 最適化された命令は時計回りか反時計回りに回すことになるけど、((駒の数)! + 1)回以内には必ずでループするのでそれも考慮 が、1980x1080には4秒要する模様
316 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 15:06:55.92 ID:FhlfzW8k.net] >>296 マス単位で省けると思う [a....,bcd..,efghi]を[a,bcd,efghi]って表現して これを上に傾けて[acdhi,bfg,e]にする操作はこんなコードで出来る https://ideone.com/i7EmbB 他の方向へは対称性を利用すれば書けるから 今は左下に寄ってるみたいな情報を持ってればいいし その情報で行列表現にも戻せる まあ駒の数が多い場合は大して速くならないけど
317 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 15:13:44.30 ID:LEGAA83e.net] あとは2回目以降どうやって傾けても駒の配置は合同(かその反転)になるから 2回傾けた結果を使って4回目を求めて……ってやればO((駒の数)*log(最適化された命令の長さ))で済みそうだよね
318 名前:デフォルトの名無しさん [2018/05/09(水) 15:37:49.24 ID:FhlfzW8k.net] >>306 面倒なループ書かなくても反転でいけたのか・・・ 数学力が足りなかった
319 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 18:01:06.55 ID:tbbSaefy.net] >>276 を>>301 のボードで こういう処理はCが速かろうということで何の工夫もないコードを書いてみた アクションの最適化なしで256回動かした場合 MacBook-Pro:tmp$ time ./a.out <data.raw > r.raw real 0m0.638s user 0m0.625s sys 0m0.009s 638ミリ秒 アクションの最適化だけ実装すると MacBook-Pro:tmp$ time ./a.out <data.raw > r.raw real 0m0.045s user 0m0.037s sys 0m0.006s 45ミリ秒 https://ideone.com/bZmXpg
320 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 18:02:18.67 ID:tbbSaefy.net] 補足 256回というのは>>301 にある256アクションをそのまま行うということ
321 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 19:18:52.31 ID:tbbSaefy.net] 目先を変えて Apple の GCD を使って8スレッド並列にしてみた 4コアのPCで3倍くらいになった アクションの最適化なし MacBook-Pro:tmp$ time ./c.out <data.raw > rc.raw real 0m0.218s user 0m1.190s sys 0m0.027s 218ミリ秒 アクションの最適化あり MacBook-Pro:tmp$ time ./c.out <data.raw > rc.raw real 0m0.023s user 0m0.058s sys 0m0.008s 23ミリ秒 100回繰り返すと1回あたり18msec程度になる模様 MacBook-Pro:tmp$ time for i in `seq 1 100` ; do ./c.out <data.raw >rc.raw ; done real 0m1.814s user 0m6.659s sys 0m0.589s https://ideone.com/ULrjTi
322 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 21:01:50.08 ID:28IRmfG3.net] やっぱはえ〜w
323 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 21:40:14.20 ID:7NiN2gcq.net] (そして今試してわかったが dispatch_group は >>312 のように使いまわさず wait 後破棄してまた create する方が高速、と)
324 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 21:57:48.63 ID:bn/AH8fd.net] スクリプト言語のわりには速いと言われるjsだけど当たり前なのかもしれないが桁違いにぜんぜん敵わんくて糞ワロタww
325 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 22:18:37.30 ID:7NiN2gcq.net] JS のは配列の初期化や文字列操作関数とかが足引っ張ってるんじゃないだろうか。 毎回メモリアロケートするからキャッシュも効きにくそうだし。 2次元配列に初期値セットしてからコードで操作した方が速い気がする。
326 名前:デフォルトの名無しさん mailto:sage [2018/05/09(水) 22:24:38.34 ID:7NiN2gcq.net] PCの速度差がかなりあるだけかも知れんし後でjs版も計測してみる
327 名前:デフォルトの名無しさん [2018/05/10(木) 08:16:30.90 .net] 各コマの最大可動範囲は最初に定まるし ターンが進むにつれ狭まりもするから それで最適化できん? 知らんけど
328 名前:デフォルトの名無しさん mailto:sage [2018/05/10(木) 14:34:27.76 ID:qHVZoDSH.net] >>306 のやり方だと二回傾けて以降は駒の入れ替えだけでいいから numpyでboard[board!='.']=np.fliplr(board)[np.fliplr(board)!='.']とかやれば速いかな インデックスは毎回計算しなくてもいいけど
329 名前:デフォルトの名無しさん mailto:sage [2018/05/10(木) 16:30:45.02 ID:qHVZoDSH.net] >>319 で書いてみたけど 傾きの処理自体はC並みに速い https://ideone.com/NWCyYW
330 名前:デフォルトの名無しさん mailto:sage [2018/05/10(木) 16:47:50.18 ID:Ulb5C2sT.net] そりゃあ numpyの本体はC言語だしなぁ・・・
331 名前:デフォルトの名無しさん mailto:sage [2018/05/10(木) 17:33:52.68 ID:qHVZoDSH.net] 本当は数値計算みたいにもっと速い命令を使ってくれるかなと期待してたんだけど そういう上手くはいかなかった
332 名前:デフォルトの名無しさん [2018/05/10(木) 17:50:15.92 ID:I+4Qxgba.net] >>282 Kotlin https://paiza.io/projects/wLuen-HE27TC3lZo8QclPw 何を何枚使用するかの内訳も出るようにした。
333 名前:316 mailto:sage [2018/05/10(木) 18:04:31.86 ID:CLWEept/.net] >>276 のコードで>>301 のデータを C版を計測したMacのChromeで計測してみた 結果は>>301 と似たような数字で性能差はあまりなさそう actions(256個)そのまま 37.972秒 最適化した URDLURDLU を使用 1.861秒
334 名前:デフォルトの名無しさん mailto:sage [2018/05/10(木) 18:30:24.64 ID:O+ANAa9X.net] じゃあArray版作るか… 思ったんだけどこれWebGLでGPU計算出来るかな?いやGPGPU向きの問題かどうかすら分かんないんだけど詳しい人いるかと思って。
335 名前:デフォルトの名無しさん mailto:sage [2018/05/10(木) 20:41:39.42 ID:CLWEept/.net] >>276 J left =: (((#~-.),(#~))'.'&=)"1 right =: (((#~),(#~-.))'.'&=)"1 solve =: 3 : 0 : if. (#x) = 0 do. y return. end. action =. {. x actions_left =. }. x if. action = 'U' do. board =. |: left |: y elseif. action = 'D' do. board =. |: right |: y elseif. action = 'L' do. board =. left y elseif. action = 'R' do. board =. right y end. actions_left solve board ) Cシングルスレッド版の3.5〜6.6倍遅い アクション(256個)そのまま 4.242秒 最適化した URDLURDLU を使用 0.161秒 https://%62it.ly/2rybKgZ
336 名前:デフォルトの名無しさん mailto:sage [2018/05/10(木) 21:02:14.89 ID:0yLDhGJt.net] Jが…Jがちゃんとプログラミング言語しとるw
337 名前:デフォルトの名無しさん mailto:sage [2018/05/10(木) 21:44:01.34 ID:CLWEept/.net] 先頭2行のJらしい部分の解説 文字列を.と等しいか('.'&=)でマスク(#~) (#~'.'&=) '..a.b' => '...' その論理否定(-.)でマスク ((#~-.)'.'&=) '..a.b' => 'ab' ,で繋げる (((#~),(#~-.))'.'&=) '..a.b' => '...ab' これで右寄せ。反対に繋げれば左寄せ。 直感的で 読 み や す い
338 名前:デフォルトの名無しさん mailto:sage [2018/05/10(木) 21:52:47.05 ID:O+ANAa9X.net] えー直感ってなんだっけ…
339 名前:デフォルトの名無しさん mailto:sage [2018/05/11(金) 02:07:15.57 ID:9bxegKCD.net] 第六感的に読みやすいな
340 名前:デフォルトの名無しさん [2018/05/12(土) 10:11:54.49 ID:bX5i+Zj+.net] 2つの普通のサイコロを 面と面をくっつけて直方体を作る 何種類の異なる直方体ができるか? 回転して同じものは同じ種類とする
341 名前:デフォルトの名無しさん mailto:sage [2018/05/12(土) 10:31:53.41 ID:Hl4HQ1Ge.net] >>331 PHP 84
342 名前:デフォルトの名無しさん mailto:sage [2018/05/12(土) 10:56:43.70 ID:pDgCeBjY.net] 共同ツール 1 https://seleck.cc/685 https://trello.com/ ボードのメニュー → Power-Upsから拡張可能 Slack DropBoxなど Trello Chrome拡張機能 elegant ttp://www.kikakulabo.com/service-eft/ trelloのオープンソースあり 共同ツール 2 https://www.google.com/intl/ja_jp/sheets/about/ 共同ツール 3 https://slack.com/intl/ja-jp https://www.dropbox.com/ja/ https://bitbucket.org/ https://ja.atlassian.com/software/sourcetree https://sketchapp.com/extensions/plugins/ ttp://photoshopvip.net/103903 ttps://goodpatch.com/blog/sketch-plugins/
343 名前:デフォルトの名無しさん mailto:sage [2018/05/12(土) 11:33:58.65 ID:R/twbybb.net] >>333 アフィ
344 名前:デフォルトの名無しさん mailto:sage [2018/05/12(土) 12:19:44.55 ID:QiJLTR+N.net] >>331 無限
345 名前:デフォルトの名無しさん [2018/05/12(土) 13:04:25.66 .net] >>331 C言語 #include <stdio.h> int main(){ printf("%d¥n", (6+5+4+3+2+1)*4); return 0; }
346 名前:デフォルトの名無しさん [2018/05/12(土) 13:50:20.72 ID:UoMtV9Kh.net] >>331 直方体そのものは1つなのでは?各面に打ってある点の数は違うけど同じ直方体であることには変わりないよね。 などと言ってしまったら問題にならなくて全然面白くないので後で考えてみるよ。w
347 名前:デフォルトの名無しさん [2018/05/12(土) 15:39:30.07 ID:TjVuoOYn.net] まず数学的に考えると、6面の内の一面がくっつくのでこれで6種で、更にくっ付けられる面が6面なので6倍。そして4回回転できるので更に4倍。しかし同じ値の面がくっついた時はお互いに回転させても同じのができるのでこれを引く。 とすると6*6*4-6*4=6*4*(6-1)=6*4*5=120でいいのかな。
348 名前:デフォルトの名無しさん [2018/05/12(土) 15:42:14.83 ID:TjVuoOYn.net] ま、しかし、数学的に答え出しちゃったらプログラム作る意味なくなるような気がするので全パターン作って確かめるようなの作るか。
349 名前:デフォルトの名無しさん mailto:sage [2018/05/12(土) 15:53:15.44 ID:sI+Q43v8.net] >>338 なんか違う
350 名前:デフォルトの名無しさん mailto:sage [2018/05/12(土) 15:57:15.26 ID:KWlgK9zD.net] プログラム的な最適解って難しい
351 名前:デフォルトの名無しさん mailto:sage [2018/05/12(土) 16:11:04.18 ID:TD+PjePm.net] プログラムでやる意味がまったくないな
352 名前:デフォルトの名無しさん [2018/05/12(土) 17:25:20.83 .net] >>338 1-1 1-2 2-2 1-3 2-3 3-3 1-4 2-4 3-4 4-4 1-5 2-5 3-5 4-5 5-5 1-6 2-6 3-6 4-6 5-6 6-6 すなわち (6+5+4+3+2+1)×4面
353 名前:KAC mailto:sage [2018/05/12(土) 17:50:27.68 ID:7sNFtIfC.net] >>336 改行書くことすら惜しむくらいなら、「return 0;」省略すればいいのに・・・ >>339 そういうときはn面体に対するものにするとか、 m個くっつける場合のものにするとか、どこかの値を可変にすればいい。
354 名前:デフォルトの名無しさん [2018/05/12(土) 18:04:42.08 ID:TjVuoOYn.net] >>340 そうか。何が違うのか今のところ俺にはわからない。 >>343 その説明の意味がわからない。何を表しているのか?
355 名前:デフォルトの名無しさん [2018/05/12(土) 18:38:44.14 .net] >>345 くっついている面の組み合わせ(サイコロを2つ振って出る目と同じ)×4回転
356 名前:デフォルトの名無しさん [2018/05/12(土) 18:57:16.30 ID:TjVuoOYn.net] >>346 あ、そうか。例えば1、6は6、1と同じか。
357 名前:デフォルトの名無しさん [2018/05/12(土) 19:09:45.48 ID:TjVuoOYn.net] 6*7/2*4=6*7*2=84てことだな。 じゃ、あとは無理矢理全パターン出して全件チェックするブルートフォースなプログラムでもゆっくり作るとするか。
358 名前:347 mailto:sage [2018/05/13(日) 03:37:21.95 ID:YKXy/MBP.net] 散々考えて作ったプログラムで 96 と結
359 名前:果が出てしまい、何がどう間違ってるのか探すの面倒なのでとりあえず休止。 またその内気が向いたらやってみよう。 [] [ここ壊れてます]
360 名前:デフォルトの名無しさん mailto:sage [2018/05/13(日) 17:57:36.41 ID:lW+v/TK4.net] よくある総当たり戦の試合数を求める問題の変形だろ いくらなんでも算数レベルはさすがに・・・
361 名前:デフォルトの名無しさん mailto:sage [2018/05/13(日) 19:10:48.15 ID:IsC8XoQl.net] 算数レベルだと不満があるみたいなので類題を 正五胞体の各面に1〜10の番号が振られたサイコロが2つある 2つの正五胞体の面を合わせて新たな多胞体を作るとき、 面の模様の組み合わせ合わせてを合わせて何通り作ることができるか求めよ
362 名前:デフォルトの名無しさん mailto:sage [2018/05/13(日) 20:08:59.23 ID:lW+v/TK4.net] 面を合わせる操作で胞はどうなるんだろう 模範解答が欲しいな
363 名前:デフォルトの名無しさん mailto:sage [2018/05/13(日) 20:10:50.40 ID:cJXb3A6I.net] O(1)でない問題に挑みたい
364 名前:デフォルトの名無しさん mailto:sage [2018/05/13(日) 20:28:41.70 ID:hMSQZ6aL.net] 無理だろ 問題のクラスがどこに属するかを確かめてから……ってのは
365 名前:デフォルトの名無しさん mailto:sage [2018/05/13(日) 20:48:58.34 ID:HhTyaKjT.net] 出題者がわからなくてどうする
366 名前:デフォルトの名無しさん [2018/05/13(日) 22:02:39.26 .net] 出題者は学校の宿題をコピペしてるだけなんだからそんなの分かるわけないだろw
367 名前:デフォルトの名無しさん mailto:sage [2018/05/13(日) 23:15:41.18 ID:KchYOj5S.net] 円周上の格子点を求めるプログラムをしこしこ作ってるが、 マルチスレッドで動かしたらPentium G6950とAtom x5-Z8350タブレットでほとんど変わらなくて(´・ω・`)
368 名前:デフォルトの名無しさん mailto:sage [2018/05/13(日) 23:18:59.24 ID:VV8A9gRv.net] どのお題?
369 名前:デフォルトの名無しさん [2018/05/13(日) 23:27:47.10 ID:R9SlBBi+.net] これか 「自然数Nに対して、平面上の円で、その円周上の整数点がちょうどN個となる円の最小半径を求めよ」 例) x^2 + y^2 = 1の整数点は4つだがN=4の最小半径ではない。 (x-0.5)^2 + (y-0.5)^2 = 0.5の方が小さい。 4点は(0,0) (1,0) (0,1) (1,1)
370 名前:デフォルトの名無しさん mailto:sage [2018/05/13(日) 23:55:53.09 ID:VV8A9gRv.net] ああ、自称数学が出来る人がアホな事を言ってたヤツだな 最小値は存在しないとか 最小値が存在する証明は簡単だとか言いつつまったく出来てなかったり
371 名前:デフォルトの名無しさん mailto:sage [2018/05/13(日) 23:57:36.72 ID:VV8A9gRv.net] 全く解いてないけど 力業しか方法は無いのかな? AVX512とかGPUとか使えたりする?
372 名前:KAC mailto:sage [2018/05/13(日) 23:59:19.53 ID:n7+JE8gH.net] >>360 複数解があれば、その中で一番小さい物が最小値 という当たり前の定義に何か疑問でも?
373 名前:デフォルトの名無しさん mailto:sage [2018/05/14(月) 00:04:15.31 ID:1oWMeidW.net] まだ続けるのその話題?
374 名前:デフォルトの名無しさん mailto:sage [2018/05/14(月) 00:07:14.94 ID:1oWMeidW.net] >>362 最小値が存在するためにはいくつかの条件があって その条件を全く考慮しないで「証明」と言い張ってたアホがいたと まさか君じゃないよね?
375 名前: mailto:sage [2018/05/14(月) 00:12:43.39 ID:pLvY6PGg.net] それより数学のセンセが複素指数関数をなんだか誤解しているのを何とか説き伏せたいのだけれども…
376 名前:デフォルトの名無しさん mailto:sage [2018/05/14(月) 02:08:50.73 ID:nPZzHRVa.net] >>365 多値関数のことを周期関数とか見当違いのことを言っていたあなたが何か言えることなんてあるんですか? でこの話題まだ続けたいの?
377 名前:デフォルトの名無しさん mailto:sage [2018/05/14(月) 03:17:23.56 ID:UX/qtCoA.net] >>365 やるならよそで個人的にやってくれ
378 名前:デフォルトの名無しさん mailto:sage [2018/05/14(月) 07:14:36.98 ID:n+3GdDup.net] なんか最小値とかでよほど辛い目にあったんだろうなw
379 名前: mailto:sage [2018/05/14(月) 16:57:02.04 ID:pLvY6PGg.net] >>366 続けます、今必死に www.eng.niigata-u.ac.jp/~nomoto/2.html を理解しようとしています、とてもつらいです、涙が知らず知らず頬を伝っているありさまです…
380 名前:デフォルトの名無しさん mailto:sage [2018/05/14(月) 17:12:13.58 ID:BXZtNaWp.net] せんせーともども数学板へどうぞ。 こいつら異世界転生もののアニメ見てそうだなワラ
381 名前:デフォルトの名無しさん mailto:sage [2018/05/14(月) 21:15:20.93 ID:1oWMeidW.net] 数学の専門家が高見の見物
382 名前:デフォルトの名無しさん mailto:sage [2018/05/14(月) 21:29:45.96 ID:EDnTjcK4.net] 仲間内じゃうだつが上がらないのかな、誉められたくてこんなとこまで来てチンコしごいてんのか気持ち悪い。 リアルで軽んじられてる理由が透けて見えるよ。ほんと迷惑な話。
383 名前:デフォルトの名無しさん mailto:sage [2018/05/14(月) 21:36:42.92 ID:LqzdTatP.net] >>370 みたいなアニオタは巣から出てくるな 不快な上に真面目に気持ち悪いわ
384 名前:デフォルトの名無しさん [2018/05/14(月) 23:27:31.52 ID:ByoIoZVn.net] お題 辺の長さと面の面積と体積の全てが整数である4面体を求める
385 名前:デフォルトの名無しさん mailto:sage [2018/05/14(月) 23:35:45.52 ID:D3cFptH9.net] >>369 もしかしてリーマン面とかも知らずに留数定理がどうのこうの言ってたのか? 厚顔無恥ってこのことだぜ
386 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 00:31:02.93 ID:joZeDATc.net] >>375 素人が素人を笑う 目糞鼻糞
387 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 00:50:44.33 ID:cUJCQZWv.net] >>376 言ってる事がよくわからないんだが? もしかしてくやしいの?
388 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 01:12:11.74 ID:/OJ/weUW.net] 数学コンプがプログラミングに逃げたが やっぱり数学からは逃れられなかっただけ
389 名前:デフォルトの名無しさん [2018/05/15(火) 02:50:42.43 ID:cltBdwph.net] お題 (1) 入力された英数字([A-Z0-9])をモールス信号を表す文字列に変換する。大文字小文字は区別しない。 記号は変換出来なくても良い。また数字の略体は不要。短点と長点には何の文字を使っても良いが、 なるべく分かり易くするために「・」、「−」等にすること。 (2) (1)で作ったモールス信号を表す文字列の逆変換。 (3) 和文版の(1)と(2) 欧文、和文モールス符号については下記ページ参照 https://ja.wikipedia.org/wiki/%E3%83%A2%E3%83%BC%E3%83%AB%E3%82%B9%E7%AC%A6%E5%8F%B7
390 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 03:49:05.69 ID:76+B/frM.net] >>351 問題そのものとは関係ないかもしれんが正五胞体の面同士を重ねても通常の多胞体にはならないんじゃ 次元をひとつ下げればふたつの正四面体の辺同士を重ねる操作にあたるよね
391 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 06:03:50.51 ID:4dx/yUcE.net] >>379 Ruby (1) を wavで出力 https://ideone.com/uw0YFZ
392 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 07:41:42.24 ID:joZeDATc.net] >>377 おれは数学の専門家だって >>369 と>>375 の低レベルなバトル楽しみにしてるよ
393 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 09:34:19.74 ID:iN3NVkNj.net] その自称数学の専門家がなんでまたこんな場違いな板のスレに粘着してんの? お前も実は数学コンプなんだろ
394 名前:デフォルトの名無しさん [2018/05/15(火) 09:38:30.52 ID:Jeovbfag.net] もう数学問題に特化したお題スレ作った方が良いのでは?
395 名前:デフォルトの名無しさん [2018/05/15(火) 09:53:16.24 ID:EjMHQE21.net] >>374 無い
396 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 11:30:36.04 ID:CWT5ZUHq.net] >>383 趣味のプログラマーだから 数学的に面白いネタ探し >>385 プログラムで書きなさい printf("ないn");
397 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 11:38:20.20 ID:WUGOR4JP.net] プログラム板で文字化けさせてる人って
398 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 11:53:09.77 ID:euWa7j5X.net] >>386 いちいちID変えてる時点でこいつが誰なのかすぐに分かってしまいますね
399 名前:デフォルトの名無しさん [2018/05/15(火) 11:53:29.05 ID:s5avjWfm.net] 全角の「ない」は化けていないのに不思議?不思議?
400 名前:デフォルトの名無しさん [2018/05/15(火) 12:43:26.80 ID:hqwVUKF+.net] 円マークかな?Unicodeだとバックスラッシュとはコードが違うよね。
401 名前:デフォルトの名無しさん [2018/05/15(火) 12:45:53.43 ID:hqwVUKF+.net] 前にLinuxの端末でバックスラッシュと円マークの両方が半角で普通に両方入力できて驚いたことがある。やっとまともになったのかとw
402 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 13:01:00.15 ID:CWT5ZUHq.net] \ ¥
403 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 13:02:18.78 ID:CWT5ZUHq.net] なぜ化ける
404 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 13:04:01.28 ID:CWT5ZUHq.net] >>388 おれは誰なんだ? ごくたまにしか書き込んで無いけど
405 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 13:05:37.32 ID:CiGj6Ypo.net] datをバイナリエディタで見たら化けてる所は 0xfc 0xfc になってるが、なぜそれになるのかは知らん。
406 名前:デフォルトの名無しさん [2018/05/15(火) 13:26:15.15 ID:hqwVUKF+.net] ていうかC言語等の文字のエスケープに使う文字は本来であればバックスラッシュだ。 円マークになってる入門書等が多い理由は歴史的な理由による。 どういう歴史的理由かは長くなるので省略。
407 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 13:58:57.23 ID:CWT5ZUHq.net] 中途半端な知識で語りたがりが多いな 数学といい文字コードといい
408 名前:デフォルトの名無しさん [2018/05/15(火) 14:59:41.39 ID:anwetN0E.net] ま、これでも読め。 https://anopara.net/2016/03/06/%e5%86%86%e3%83%9e%e3%83%bc%e3%82%af%e3%81%a8%e3%83%90%e3%83%83%e3%82%af%e3%82%b9%e3%83%a9%e3%83%83%e3%82%b7%e3%83%a5/
409 名前:デフォルトの名無しさん [2018/05/15(火) 15:00:25.50 ID:s5avjWfm.net] 5chなんだから じゃんじゃん語るべき
410 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 15:13:17.78 ID:CiGj6Ypo.net] "\" 円(U+00A5) "\" バックスラッシュ(U+005C)
411 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 15:14:24.36 ID:CiGj6Ypo.net] 両方U+005Cにされたw
412 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 16:23:07.72 ID:eMeQgyCY.net] SIPやアプリや5chがどういう文字コードを扱ってどういう変換をしてるかがわからん これは調べたり実験しないと 教えたがりの書き込みは全く役に立ってないから 書かなくて良いよ 釈迦に説法
413 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 17:54:36.17 ID:SykJSNjw.net] >>402 いちいち突っかかるお前も大概だがな 黙って見ているってこともできないのか
414 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 18:01:31.83 ID:44/Iysj7.net] できますん
415 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 18:18:50.58 ID:GoFwWa3N.net] 5ch はシフトJISだから1バイトのバックスラッシュは基本書けないし読めない (U+00A5に対応する文字コードがない) 実体参照の使用が許可されてる板なら実体参照でU+00A5の字も書ける fcfc はわかんないな ググるとfcfcはシフトjisのibm拡張文字領域で、 aixの修正された不具合の説明で文字コード変換の際に 意味のないコードfcfcになるのがどうのこうのというページがあったから libicu(ibmの文字コード関係ライブラリ。割と広く使われている)で そういう不具合のあるバージョンがあるんだろうな
416 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 18:28:51.68 ID:KcubxIhK.net] テキストファイルっていっぱい種類あるね
417 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 18:34:45.23 ID:GoFwWa3N.net] >>405 の補足 5ch は投稿されたfcfcをそのまま出してるだけで、 誤変換しているのは投稿しているアプリ それはそれとしてこの板ではバックスラッシュ使いたいよね
418 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 19:26:38.75 ID:CiGj6Ypo.net] >>405 U+00A5がYen signじゃろ…
419 名前:デフォルトの名無しさん [2018/05/15(火) 19:52:19.95 .net] この板ではバックスラッシュも円マークも両方書き込める 実例↓ 文字コード総合スレ Part11 https://mevius.5ch.net/test/read.cgi/tech/1516629503/116
420 名前:デフォルトの名無しさん [2018/05/15(火) 20:10:00.78 ID:r6+CqG6i.net] \\\\\\\\ できるかな?
421 名前:デフォルトの名無しさん [2018/05/15(火) 20:10:17.25 ID:r6+CqG6i.net] お。できた。
422 名前:デフォルトの名無しさん [2018/05/15(火) 20:33:46.64 ID:sy5AMFlu.net] 日本人にも責任がある 【666の獣トランプ涙目w】 2000年ぶりにWあの漢″帰郷の噂… <再臨> イスラエル、また処刑する!? rosie.5ch.net/test/read.cgi/liveplus/1526351394/l50
423 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 21:02:46.10 ID:GoFwWa3N.net] >>408 そっかごめん訂正 u+00A5 はシフトjisの0x5c に変換されて書けるけど、 ユニコードの u+005c のバックスラッシュは書けない、が正解だった。
424 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 21:10:05.44 ID:GoFwWa3N.net] バックスラッシュと言えば Visual Studio で c のソース編集時に バックスラッシュが表示されてて、文字コードはshift jisなのに何故? と思ってたが Visual Studio では0x5Cがどっちで表示されるかはフォント任せなんだな shift jis (cp932) では円マークと規定されてるのに。
425 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 21:31:34.51 ID:K0qtXPJ7.net] >>397 何事も、ニワカな奴ほど語りたがるからしゃーない
426 名前:デフォルトの名無しさん mailto:sage [2018/05/15(火) 23:45:05.24 ID:1bAdW6Zs.net] 数学コンプだけじゃなくて文字コードコンプまで発症したのかw
427 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 00:37:59.02 ID:G4b5C/G+.net] 頭がおかしいんだから仕方ないね 精神科のお薬飲んで寝ろ
428 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 00:41:48.15 ID:Ncn1UiZB.net] >>379 Kotlin (1)のみ https://paiza.io/projects/XTGPpBdI1JBYNmglXvOEOw
429 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 00:54:59.23 ID:tDn46mBr.net] 禁煙の立て札の前でタバコを吸う数学奴文字コード奴であった。
430 名前:デフォルトの名無しさん [2018/05/16(水) 01:24:47.67 .net] >>379 C言語 (1)(2)のみ https://ideone.com/8l7ZKv
431 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 08:04:36.25 ID:PomcYnKY.net] そんなに数学挑みたいならこれでもどうぞ お題 2つ以上の正の整数が与えられる この時、最後を除く自然数に対し四則演算及び括弧を使い数式を作ることで、最後の自然数と同値にせよ 複数の数式が考えられる場合、どれか1個を出力すれば良い 入力例1: 5 2 3 3 10 出力例1: -5+(2+3)*3=10 入力例2: 0 1 出力例2: Impossible
432 名前:デフォルトの名無しさん [2018/05/16(水) 09:13:18.66 ID:hkrElRSY.net] だから数学問題は新スレ作ってそっちでやれって。
433 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 09:43:42.04 ID:L2yt4rd4.net] 飲食禁止の貼り紙の前でクチャクチャと音を立ててキムチを食す数学奴
434 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 09:51:29.86 ID:9Q3+56hM.net] 極度の数学コンプとそれを煽る人達のせいで訳わからなくなってるな 数学コンプの人らは数学に関するすべてを禁止したスレを立ててそっちに移住したほうが平和なんじゃないの
435 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 09:54:01.27 ID:+2MSwW5R.net] スレが荒れるなら分岐したほうがいいのかね プログラミングのお題スレ(数学) みたいに あんまり人がいないなら別にこのスレでも良いと思うがな(俺は)
436 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 09:55:32.06 ID:+2MSwW5R.net] >>424 なるほど、禁止するなら プログラミングのお題スレ(数学禁止 ) こうだな こっちでもいいな
437 名前:デフォルトの名無しさん [2018/05/16(水) 09:57:33.06 ID:OColoMR4.net] プログラミングのお題には数学要素のあるもの多いな
438 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 10:38:31.46 ID:wFCVkaLn.net] >>421 と同じようなのをやった気がするなとログ探したらやっぱりやってた…3年以上前やw プログラミングのお題スレ Part6(c)2ch.net https://peace.5ch.net/test/read.cgi/tech/1418278634/148,703
439 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 11:00:45.42 ID:ZRgXOqOF.net] >>427 数学要素があること自体はいいんだけど、数学的に解いたら後は手計算の代わりに入出力と演算をプログラムにやらせるだけっていうお題は興醒めというか面白味がないね。
440 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 11:20:13.71 ID:+GN46IIl.net] でもO(1)かどうか確かめられない人がほとんどなんでしょう
441 名前:デフォルトの名無しさん [2018/05/16(水) 11:37:48.24 ID:OColoMR4.net] お題スレ Part9 では、 tan() の値が有理数になる場合についての 数学的証明が活発に議論されていたな
442 名前:デフォルトの名無しさん [2018/05/16(水) 12:03:53.05 .net] 数学者がプログラミングの領域にしゃしゃり出てくんなや プログラミングはExcel方眼紙を操る文系の神聖不可侵領域なんや
443 名前:デフォルトの名無しさん [2018/05/16(水) 12:05:10.39 ID:OGup9rVZ.net] ディープラーニングとかAIとかモロ数学(知識)では?
444 名前:KAC mailto:sage [2018/05/16(水) 12:46:11.09 ID:2T+9VrOe.net] >>426 電子計算機に数学禁止て。。。
445 名前:デフォルトの名無しさん [2018/05/16(水) 13:00:55.70 ID:danjk40Q.net] プログラミングも一応数学の一部ではあるけどな。計算手順だし。 しかしプログラミングのお題として数学問題そのまま出されると数学的に頭で考えるだけで解けてしまってあまり意味がないだろう。 コンピュータに計算をさせるという要素がなくなりプログラミングのお題にならない。それは数学のお題だ。
446 名前:デフォルトの名無しさん [2018/05/16(水) 13:15:33.84 ID:sHhzsQ4l.net] >>431 の過去スレの有理数・無理数の問題が数学問題で、 このスレの>>421 は、プログラミング問題だな。
447 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 13:38:52.63 ID:qWxCSmvP.net] >>421 「同値」の意味くらいは知っておいた方が良いかと
448 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 13:41:34.46 ID:qWxCSmvP.net] >>429 プログラムってのはそういうもんだろ 人間が考えたアルゴリズムを言語という形にするだけ
449 名前:デフォルトの名無しさん [2018/05/16(水) 13:50:27.54 ID:danjk40Q.net] 数学ってアルゴリズム考える所までで終わりじゃない?算数や物理じゃないから式に値を入れて計算して答えを出す所までやる必要がなくて、式そのものを求めて終わり。
450 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 16:05:28.01 ID:VFom9laO.net] このスレで数学って言ってるのは 式だけじゃなくアルゴリズムまで含んでる気がするけど アルゴリズムは数学じゃないっていうなら >>421 なんか数学的要素ゼロになっちゃう
451 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 16:31:09.13 ID:+2MSwW5R.net] プログラミング的な試行錯誤のあるお題を考えるのって難しくない? まぁ俺には数学的なお題を考えるのも難しいが
452 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 16:45:00.22 ID:FMmnnu2E.net] あらら、やっぱ>>421 はもう出てたか よくある設定だし既出かもなーとは思ったが
453 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 17:39:15.65 ID:o2zART+W.net] キムチ臭いアホが粘着しとるの〜
454 名前:デフォルトの名無しさん [2018/05/16(水) 17:57:39.97 ID:GCTrNDIc.net] >>440 まあ、式を複雑にしたのがアルゴリズムみたいなものかな。 で、コンピュータを使う理由は普通はプログラムを作るためではなくて、実際にプログラムを動かして計算させて結果を得るためだ。 正解となるプログラムを作った段階で終わりにはしない。
455 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 20:43:44.00 ID:EIfldPOx.net] 式とアルゴリズムは別物 計算アルゴリズムが存在しない式もある
456 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 21:02:26.88 ID:IfIzhtS9.net] >>444 はネタでしょ?さすがにw
457 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 21:57:47.05 ID:+GN46IIl.net] やっぱり不気味だよ 例えば>>276 なんて最終盤面がU・D・L・R(上下左右)とUR・UL・DR・DL(左上・右上・左下・右下)の8つしか無いだろ 2回計算して終わりじゃん
458 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 22:02:29.19 ID:9Q3+56hM.net] >>447 2回で終わらないでしょ 頭冷やせ
459 名前:デフォルトの名無しさん [2018/05/16(水) 22:18:33.87 .net] 2回かどうかは知らんが、最後に2パターンのうちの一つを作って回転もしくは反転させるだけだわな 入力ごとに馬鹿正直に駒を動かすようなプログラムを組む奴は壊滅的にセンスが欠けている
460 名前:デフォルトの名無しさん [2018/05/16(水) 22:20:40.95 ID:RliGnokV.net] 数学禁止
461 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 22:21:06.29 ID:9Q3+56hM.net] >>449 題意を正しく理解していないね
462 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 23:06:35.35 ID:wFCVkaLn.net] ごちゃごちゃ言う前にプログラム書けばええねん
463 名前:デフォルトの名無しさん [2018/05/16(水) 23:40:38.01 ID:7XX9JZjA.net] お題: 以下のように操作を繰り返して単一リストになったらその要素を返す [1,2,3,4,5,6,7,8,9] -> [5,1,13,2,21,3,29,4] -> [16,16,41,1,66,38,91] -> [8,8,124,69,33,19] (中略) -> [4,216] -> [2] テスト例: [1,2,3,4,5,6,7,8,9] -> 2 [9,8,7,6,5,4,3,2,1] -> 2496 [3,1,4,1,5,9,2,6,5,3,5,8,9,7,9,3,2,3,8,4,6] -> ?
464 名前:デフォルトの名無しさん mailto:sage [2018/05/16(水) 23:47:47.04 ID:BkqCgF0J.net] 操作がわからん
465 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 00:33:16.76 ID:AhjFsLsi.net] 操作を考える問題 と思う
466 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 00:49:29.06 ID:ZPdPUxd5.net] >>453 Java https://ideone.com/QcHstO
467 名前:デフォルトの名無しさん [2018/05/17(木) 00:59:40.10 .net] >>456 要素が1個になるまで繰り返す 奇数の場合3で掛けて右の数値を足す 配列の右端を切り捨てる とか、どこ情報なの? こんなの読み取らなきゃいけないのなんて「プログラミングのお題」ではない こんな糞問題出すなや >>453
468 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 01:17:23.95 ID:AhjFsLsi.net] 誰でも簡単に出来るお題じゃあつまらんから 数学だったりパズルだったりの要素があってもいいかと
469 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 01:18:03.17 ID:AhjFsLsi.net] 答えが出ちゃうとツマランな
470 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 01:21:37.58 ID:gNx9x5kd.net] 自演じゃなくても疑われるぞ
471 名前:デフォルトの名無しさん [2018/05/17(木) 01:25:32.48 .net] >>457 1行目間違えた 偶数の場合2で割る
472 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 01:37:26.94 ID:wTjk4UUR.net] なぜ朝鮮人はプログラムを書かないのか それは書かないからではなくて「書けない」からである
473 名前:デフォルトの名無しさん [2018/05/17(木) 02:42:47.50 ID:OtjvMXsk.net] >>457 算数クイズだな
474 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 03:16:08.71 ID:W4Rt98V+.net] >>451 題意はわかってるけど頭の中でコマを動かせないんだと思うぞ
475 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 03:38:37.62 ID:W4Rt98V+.net] >>488 例えばこんな風に動くとかわかる? よく考えてみて 元のボード abcdefghi. 12345678.. .......... 'DRUL' 適用 1abcdefgh. 2345678i.. .......... もう一度'DRUL' 適用 21abcdefg. 345678ih.. .......... さらに'DRUL' 適用 321abcdef. 45678ihg.. ..........
476 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 06:04:53.73 ID:w9FSok0P.net] ああ>>447 , >>449 は勝手に駒の区別をしないことにしたうえで難癖付けてたのか プログラミング以前に日本語のセンスが「壊滅的に欠けている」なw
477 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 09:34:22.60 ID:rKf91ggF.net] 日本語の問題なんだろうなとは俺も思った。それにしてもちょっとでもコーディングしてみれば勘違いに気づきそうなものだが… コーディングしない系プログラマなのか
478 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 09:59:33.05 ID:hUdRfKOZ.net] ×コーディングしない系プログラマ ◎コーディングはできない、プログラマでもない、人にいちゃもんつけるのが得意なだけの嫌われ者
479 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 10:56:01.19 ID:rKf91ggF.net] ボコボコに突っ込まれてて得意でもなさそうだけどw
480 名前:デフォルトの名無しさん [2018/05/17(木) 12:19:48.40 .net] >>466 俺はIQ高いから頭ん中でシミュレーションしてみたんだわ ただ、駒が全部真っ黒で見分けが付かなかった すまんな
481 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 18:14:45.68 ID:vz9Ov7AZ.net] このスレもう4年以上経つのか 時の流れって怖すぎだよな
482 名前:デフォルトの名無しさん [2018/05/17(木) 20:04:17.63 ID:6aDUZAbl.net] >>465 それってそんなにコマ沢山使わなくてもわかるよね。 3つのコマを2*2の4枠の中に入れれば傾けるだけでくるくる回せるから。
483 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 20:12:27.33 ID:3vBIE/+x.net] >>472 >>447 で本人が言っている8種 >>449 で反転だの言ってるからその倍にして16種 結果の盤面がそれ以下のバリエーションだと 「やっぱり8種類以下しかないじゃないか!」とかになるだけだろ
484 名前:デフォルトの名無しさん mailto:sage [2018/05/17(木) 20:17:32.90 ID:3vBIE/+x.net] もちろんもっと少ないコマでも結果が16種より多くなる盤面はあるけど、 幾らでも多くなるよというのをイメージしやすいように大きめにした
485 名前:デフォルトの名無しさん [2018/05/17(木) 23:21:27.20 ID:R4VP18xe.net] >>359 勉強をかねてこれやってるが、ある程度、できたところでアップしてみる。 考えてる方針が速いとはおもうが・・・
486 名前:デフォルトの名無しさん mailto:sage [2018/05/18(金) 00:07:34.10 ID:c9tlPD2i.net] >>379 HTML5 + Web Audio API (1) を音声出力 https://ideone.com/9aOhLO
487 名前:デフォルトの名無しさん mailto:sage [2018/05/18(金) 00:12:59.38 ID:sQiKCRHm.net] >>476 これ面白いな
488 名前:デフォルトの名無しさん [2018/05/18(金) 00:27:29.87 .net] お題 スペース区切りで入力された文字列をすべて含むリング状の文字列を出力し、 その後に、各入力文字列に対応するインデックスと長さを出力せよ 出力文字列の構成・格納順に関しては特に制約は設けない インデックスと長さは出力文字列の先頭からの最短マッチで求める [制約] (なくしてもいい) 文字列の構成文字は0と1の二種類とする 入力の各文字列長は最大9文字とする 入力要素数は最大255個とする [入力例1] 0 1 01 10 111 1001 [出力例1] 01110 (0,1) (1,1) (0,2) (3,2) (1,3) (3,4) [入力例2] 01 1000 1010 100 0 0010 110 0000 00 0111 101 0100 11 10 111 0110 1101 010 000 1 001 0001 011 1001 1011 1100 [出力例2] 010100001101110 (0,2) (3,4) (1,4) (3,3) (0,1) (14,4) (8,3) (4,4) (4,2) (10,4) (1,3) (2,4) (8,2) (1,2) (11,3) (7,4) (8,4) (0,3) (4,3) (1,1) (6,3) (5,4) (7,3) (13,4) (9,4) (12,4) 関連 >>379 >>420
489 名前:デフォルトの名無しさん mailto:sage [2018/05/18(金) 07:59:42.69 ID:C1d8hfuw.net] >>475 じゃあ競争しよう 私はこれからスタートであまり時間もないので ちょっと時間がかかるかも知れないけど
490 名前:デフォルトの名無しさん mailto:sage [2018/05/18(金) 08:04:09.35 ID:C1d8hfuw.net] >>478 入力文字列を単純につなげば解の1個だが... 求める文字リングが短いほど良い解っていう条件?
491 名前:デフォルトの名無しさん [2018/05/18(金) 08:20:20.07 .net] >>480 そんな感じです ほどほどに圧縮できてれば必ずしも最短でなくても
492 名前:デフォルトの名無しさん mailto:sage [2018/05/19(土) 01:06:44.60 ID:YJKUc9vG.net] >>479 です とりあえずこれだけ出来ました 4770でシングルスレッドのC++で15分くらい 半径を倍にすると16倍くらいは時間がかかりそうなので マルチスレッド&アセンブラ&AVXでガシガシに最適化したくらいじゃ 大して検索範囲は増えなそう 何かアイデアがないか考え中 ---- 3 : r=1.178511 4 : r=0.707107 5 : r=5.892557 6 : r=2.500000 7 : r=23.890677 8 : r=1.581139 9 : r=15.320647 10 : r=12.500000 11 : r=57.536370 12 : r=3.535534 13 : r=111.621856 14 : r=62.500000 15 : r=76.603235 16 : r=5.700877 18 : r=32.500000 20 : r=17.677670 24 : r=12.747549 28 : r=88.388348 32 : r=23.505319 36 : r=45.961941 40 : r=63.737744 48 : r=52.559490 64 : r=117.526593
493 名前:デフォルトの名無しさん [2018/05/19(土) 01:35:39.77 ID:/t1Y5z0r.net] ピタゴラス素数(4n+1型の素数、5、13など)は2乗和で表わせて。 逆に、2乗和(X^2+Y^2)は、2とピタゴラス素数の積の表わせる、もしくはこの問題を考える上でそれだけに限定していいとおもってる。 2^i * 5^j * 13^k * ・・・・をピタゴラス合成数と名付けると。 X^2 + Y^2 = ピタゴラス合成数、の解とその個数は比較的カンタンに求まる。 それを利用して、拡大(縮小)と並行させたやつで、最小半径を与えるのは全て表せるはず。
494 名前:> 具体的には、上の解が求まっていれば、 (mx + a)^2 + (my +b)^2 = ピタゴラス合成数、の解と個数もそれなりの低コストでもとまる。 mの剰余を考えれば、解があるaとbの範囲も限定できる。 [] [ここ壊れてます]
495 名前:デフォルトの名無しさん mailto:sage [2018/05/19(土) 01:54:04.51 ID:YJKUc9vG.net] ノーヒント、全て自力で求めようと思ってたんだけど だから競争って まあいいや 使えそうなら使わせていただきます
496 名前:デフォルトの名無しさん [2018/05/19(土) 03:42:04.50 ID:/t1Y5z0r.net] ピタゴラス素数は2乗和であらわせて。 (a^2 + b^2) (x^2 + y^2) = (ax + by)^2 + (bx - ay)^2 が常に成立するので、 ピタゴラス素数と 2 = 1^2 + 1^2 の積で、新たな2乗和の式が作り出せる。 この式から、解とその個数も求まるはず。 しかし、これがわかっても最小値を求めるのは簡単ではないとおもう。かなりの計算量がいるはず。
497 名前:デフォルトの名無しさん [2018/05/19(土) 03:53:23.91 ID:/t1Y5z0r.net] z = x + yiという複素数でいうと、このノルムは|
498 名前:デフォルトの名無しさん [2018/05/19(土) 03:56:11.86 ID:/t1Y5z0r.net] z = x + yiという複素数でいうと、ノルムは|z|^2 = x^2 + y^2 であって |z||w| = |zw|を満たすので、 >>485 の式は、新たな複素数 zwを作り出すことと一緒。
499 名前:デフォルトの名無しさん [2018/05/19(土) 07:41:40.76 ID:b7x1I7X/.net] お題 ケブンリッジジェネレータ 知らない人のために解説すると、人間の認識力の問題で単語の最初と最後が正しいと途中の文字順序が違っていても正しい単語と見間違えるというのがある。 例えば「よこうそ」は「ようこそ」と見間違える。「およはう」は「おはよう」と見間違える。(これは違うと分かっていても見えてしまうという、空耳アワーの歌みたいでもある)。 以前2chでこのことについてケブンリッジで発見されたというような内容の文章がコピペされて広まり一時期有名になりそれ用の変換をするケブンリッジジェネレータのページ(JavaScriptで作られてたと思う)が作られたりもしていた。 今はもうないようだが今回のお題はこれである。つまり、入力された単語の最初と最後はそのままで途中の文字順序をランダムに入れ替えた結果を出力する。 日本語の文章は普通は単語と単語の間にスペースがないが、これについては処理を簡単にするためにスペースありで入力された文章しか正常に処理しないということにして良い。
500 名前:デフォルトの名無しさん mailto:sage [2018/05/19(土) 08:22:43.57 ID:VUe7Kazw.net] >>488 Ruby str = <<~EOT Alice was beginning to get very tired of sitting by her sister on the bank, and of having nothing to do: once or twice she had peeped into the book her sister was reading, but it had no pictures or conversations in it, 'and what is the use of a book,' thought Alice 'without pictures or conversations?' EOT puts str.gsub(/(?<=\b\w)\w*(?=\w\b)/){|m| m.chars.shuffle.join} #=> Aclie was bngneniig to get very terid of sntitig by her seistr on the bnak, and of hnvaig nnthoig to do: ocne or twcie she had ppeeed into the book her sitser was rniadeg, but it had no piteucrs or cinsoentravos in it, 'and waht is the use of a book,' tohught Aclie 'wtihuot pricetus or coenrovanstis?'
501 名前:デフォルトの名無しさん mailto:sage [2018/05/20(日) 12:39:54.67 ID:fjnXxBFP.net] >>478 これってその条件内なら普通に最適解(圧縮度)出せる方法とか存在する?
502 名前:デフォルトの名無しさん mailto:sage [2018/05/20(日) 12:52:52.72 ID:+POqszb4.net] 全通りやれば良い
503 名前:デフォルトの名無しさん mailto:sage [2018/05/21(月) 12:42:55.71 ID:DBB0b89i.net] >>488 Squeak/Pharo Smalltalk | input nonLetters | input := 'Alice was beginning to get very tired of sitting by her sister on the bank, and of having nothing to do: once or twice she had peeped into the book her sister was reading, but it had no pictures or conversations in it, ''and what is the use of a book,'' thought Alice ''without pictures or conversations?'''. nonLetters := input reject: #isLetter. (input findTokens: nonLetters keep: nonLetters) inject: '' into: [:acc :token | (token first isLetter and: [token size > 1]) ifTrue: [acc, (token first: 1), token allButFirst allButLast shuffled, (token last: 1)] ifFalse: [acc, token] ] "=> Ailce was beingnnig to get vrey tierd of sttinig by her seitsr on the bank, and of hvanig nohintg to do: once or twice she had peeepd into the book her seitsr was riaendg, but it had no piercuts or coitnevnarsos in it, 'and what is the use of a book,' thuoght Alice 'wtiohut ptriecus or ctnaseinroovs?' "
504 名前:デフォルトの名無しさん mailto:sage [2018/05/21(月) 18:51:56.06 ID:VDVE1q4f.net] みんな日本語スルーしててワロタw
505 名前:デフォルトの名無しさん mailto:sage [2018/05/21(月) 20:02:50.47 ID:I0TPptnw.net] >>483 やってみたけど、 馬鹿正直に検索するのと大して変わらんね 半径1000以下を全て検索するのは厳しそう 円周を検索するする昔ながらのアルゴリズムは優秀だ
506 名前:デフォルトの名無しさん [2018/05/21(月) 21:16:17.93 ID:FH7zIseK.net] 円周を検索するする昔ながらのアルゴリズムとは?
507 名前:デフォルトの名無しさん mailto:sage [2018/05/21(月) 21:24:09.15 ID:dve0ZlFL.net] >>488 Squeak/Pharo Smalltalk 日本語文章処理例 | input nonLetters | input := '以前2ch で このこと に ついて ケブンリッジ で はっけん された と いうような ないよう の ぶんしょう が コピペ されて ひろまり いちじき ゆうめい になり それよう の へんかん を する ケブンリッジ ジェネレータ の ページ(Java Script で つくられ てたと 思う)が つくられ たりも していた。 今 は もうない ようだが こんかい の お題 は これ である。つまり、にゅうりょく された 単語 の さいしょ と 最後 は そのまま で とちゅう の もじじゅんじょ を ランダム に いれかえ た 結果 を しゅつりょく する。 にほんご の ぶんしょう は 普通 は 単語 と 単語 の 間 に スペース が ないが、これ に ついては 処理 を かんたん に するため に スペース あり で にゅうりょく された ぶんしょう しか せいじょう に 処理 しない ということ に してよ
508 名前:い。'. nonLetters := input reject: #isLetter. (input findTokens: nonLetters keep: nonLetters) inject: '' into: [:acc :token | (token first isLetter and: [token size > 1]) ifTrue: [acc, (token first: 1), token allButFirst allButLast shuffled, (token last: 1)] ifFalse: [acc, token] ] "=> 以前2ch で このこと に ついて ケブリンッジ で はっけん された と いうような なよいう の ぶんょしう が コピペ されて ひろまり いちじき ゆうめい になり そよれう の へかんん を する ケンブッリジ ジレェーネタ の ページ(Jvaa Spcirt で つくられ てたと 思う)が つくられ たりも しいてた。 今 は もうない ようだが こんかい の お題 は これ である。つまり、にりゅうょく された 単語 の さしいょ と 最後 は そのまま で とちゅう の もゅんじじじょ を ラダンム に いかれえ た 結果 を しょゅつりく する。 にほんご の ぶんしょう は 普通 は 単語 と 単語 の 間 に スペース が ないが、これ に ついては 処理 を かんたん に すたるめ に スーペス あり で にゅうりょく された ぶしんょう しか せょじいう に 処理 しない といこうと に してよい。" [] [ここ壊れてます]
509 名前:デフォルトの名無しさん [2018/05/21(月) 21:36:05.44 .net] >>496 ランダムに入れ替えるのはいいけど、元の単語と同じ並びは排除しないと期待外れの出力になるね
510 名前:デフォルトの名無しさん mailto:sage [2018/05/21(月) 22:08:38.80 ID:GTjH0Q6M.net] 完全にランダムなんだから、結果が同じ並びでもそのまま出力するのが筋だろ 変更するなら日本語の文章の方だ
511 名前:デフォルトの名無しさん mailto:sage [2018/05/21(月) 22:24:50.52 ID:dve0ZlFL.net] >>488 Squeak/Pharo Smalltalk 同じ並びは排除 | input nonLetters | input := '以前2ch で このこと に ついて ケブンリッジ で はっけん された と いうような ないよう の ぶんしょう が コピペ されて ひろまり いちじき ゆうめい になり それよう の へんかん を する ケブンリッジ ジェネレータ の ページ(Java Script で つくられ てたと 思う)が つくられ たりも していた。 今 は もうない ようだが こんかい の お題 は これ である。つまり、にゅうりょく された 単語 の さいしょ と 最後 は そのまま で とちゅう の もじじゅんじょ を ランダム に いれかえ た 結果 を しゅつりょく する。 にほんご の ぶんしょう は 普通 は 単語 と 単語 の 間 に スペース が ないが、これ に ついては 処理 を かんたん に するため に スペース あり で にゅうりょく された ぶんしょう'. nonLetters := input reject: #isLetter. (input findTokens: nonLetters keep: nonLetters) inject: '' into: [:acc :token | | middle | (token first isLetter and: [token size > 3 and: [(middle := token copyFrom: 2 to: token size - 1) asSet size > 1]]) ifTrue: [ | shuffled | [(shuffled := middle shuffled) = middle] whileTrue. acc, (token first: 1), shuffled, (token last: 1)] ifFalse: [acc, token]] "=> 以前2ch で ここのと に ついて ケンブッリジ で はけっん された と いううよな なよいう の ぶしょんう が コピペ されて ひまろり いじちき ゆめうい になり そよれう の へかんん を する ケリンッブジ ジネレェータ の ページ(Jvaa Srcpit で つらくれ てたと 思う)が つらくれ たりも しいてた。 今 は もなうい よだうが こかんい の お題 は これ である。つまり、にりょうゅく された 単語 の さしいょ と 最後 は そまのま で とゅちう の もじじんゅじょ を ラダンム に いかれえ た 結果 を しょつゅりく する。 にんほご の ぶしんょう は 普通 は 単語 と 単語 の 間 に スーペス が ないが、これ に つていは 処理 を かたんん に すたるめ に スーペス あり で にうりょゅく された ぶょんしう"
512 名前:デフォルトの名無しさん mailto:sage [2018/05/21(月) 22:46:17.95 ID:ivTUanMr.net] 単語の最初と最後が正しいと途中の文字順序が違っていても正しい単語と見間違える というのは無いこともないが、やっぱりおかしな単語はおかしく見えるな
513 名前:デフォルトの名無しさん mailto:sage [2018/05/22(火) 02:04:34.13 ID:IBCwJBRn.net] >>488 Kotlin https://paiza.io/projects/vW2LiM_sGEYAb_l7QfaA_g paiza.io の Kotlin はちょっとバージョンが古いようで shuffle() がなかったので自作した。
514 名前:デフォルトの名無しさん [2018/05/23(水) 19:05:30.98 ID:Au5e7VGg.net] 僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方 役に立つかもしれません グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』 AI2XF
515 名前:デフォルトの名無しさん [2018/05/23(水) 22:43:13.42 ID:0Sl9hrHV.net] 僕の 知合いりの 知合りいが できた パコソン 一台で お持れちにな金る やり方 役立につ かまれもしせん グルグーで 検るす索と いかいも 『 ネットぐ方稼で法 モヌレアフニノ 』 AXI2F
516 名前:デフォルトの名無しさん [2018/05/24(木) 09:41:04.28 ID:c64g4uzw.net] 荒しだけの2連投か
517 名前:デフォルトの名無しさん [2018/05/25(金) 03:35:14.49 ID:thcmSanV.net] よく読み比べてみるとよい
518 名前:デフォルトの名無しさん [2018/05/27(日) 20:01:12.45 ID:zozk6gzj.net] 荒らし業者の連投規制回避の小さな変更 さっさとアク禁になれ
519 名前:デフォルトの名無しさん mailto:sage [2018/05/27(日) 20:37:36.93 ID:Yc9D3hww.net] 2個目はどう考えても業者じゃなくてスレ住人だろ… 業者はアク禁になってほしいのは同意
520 名前:デフォルトの名無しさん mailto:sage [2018/05/27(日) 22:59:09.70 ID:54akOR6H.net] >>507 お前のレスがあるまでケブンリッジジェネレータなのに気付かなかったわw
521 名前:デフォルトの名無しさん mailto:sage [2018/05/28(月) 01:26:16.34 ID:OHc1BnnP.net] いや、流石にそれは鈍すぎ
522 名前:デフォルトの名無しさん mailto:sage [2018/05/28(月) 08:49:15.07 ID:jUv7w+gM.net] まあ業者も日本語おかしいからね
523 名前:デフォルトの名無しさん [2018/05/28(月) 09:38:09.76 ID:KmDsu5r7.net] 人間の認識力はそんなもんなんだろうな。ちょっと似てると同じと判断しまう。そうやって脳は省力化してエネルギーあまり使わないようにしてるのかも知れない。脳を動かすには糖分沢山必要だからな。
524 名前:デフォルトの名無しさん [2018/05/28(月) 11:55:04.24 .net] 単
525 名前:なる老化 [] [ここ壊れてます]
526 名前:デフォルトの名無しさん mailto:sage [2018/05/28(月) 16:45:42.01 ID:3CvuwD8l.net] 逆に言えばいちいち全部の文字を正確に認識してたらちょっと誤字脱字や書き損じがあっただけで意味がわからなってしまうぞ
527 名前:デフォルトの名無しさん [2018/05/28(月) 19:20:35.39 ID:wGAafxHd.net] わからなって
528 名前:デフォルトの名無しさん mailto:sage [2018/05/28(月) 21:12:41.80 ID:NjmAPrvj.net] でもちゃんと読めちゃうってういね
529 名前:デフォルトの名無しさん [2018/05/28(月) 21:24:04.06 ID:GjCLG5ws.net] ういね
530 名前:デフォルトの名無しさん mailto:sage [2018/05/28(月) 21:32:08.47 ID:uFz834xt.net] くらだなといこに突っこんじんでゃねーよw
531 名前:デフォルトの名無しさん mailto:sage [2018/05/28(月) 23:42:55.16 ID:co2/BVdS.net] botの書き込みなんていちいち推敲モードで読まないからな
532 名前:デフォルトの名無しさん mailto:sage [2018/05/28(月) 23:59:37.57 ID:RI6Mq7Tq.net] 推敲は読むときにするもんじゃないぞ書くときだぞw
533 名前:デフォルトの名無しさん mailto:sage [2018/05/29(火) 00:08:28.36 ID:ijkA2Dj3.net] >>519 あ、ホントだ、恥ずかしいww 校正というべきだったか
534 名前:デフォルトの名無しさん mailto:sage [2018/05/29(火) 01:15:48.27 ID:zVPinOAm.net] くらだなといこに
535 名前:デフォルトの名無しさん mailto:sage [2018/05/31(木) 05:50:22.16 ID:89+9cUdj.net] >>488 Scala https://scalafiddle.io/sf/QK0Wdt3
536 名前:デフォルトの名無しさん mailto:sage [2018/06/03(日) 21:52:25.40 ID:Six28wK2.net] お題:モリカケ問題を解くプログラム
537 名前:デフォルトの名無しさん mailto:sage [2018/06/04(月) 21:24:56.45 ID:XnHANXyJ.net] numpyのdotを再現せよ
538 名前:デフォルトの名無しさん [2018/06/04(月) 21:32:40.88 ID:i7Qhv+/y.net] お題: RFC 5321, 5322 に従ったメールアドレスの文字列をテキストファイルから抜き出すプログラム 参考 Javaで正規表現を使って抜き出すプログラム(最初に正規表現のパターンが出力される) https://paiza.io/projects/Rc2wknAxofvjPfcs9MuYcQ 以下は日本語訳されたRFC srgia.com/docs/rfc5321j.html srgia.com/docs/rfc5322j.html
539 名前:デフォルトの名無しさん mailto:sage [2018/06/04(月) 21:34:02.48 ID:i7Qhv+/y.net] あ、ごめん。テキストファイルじゃなくて標準入力からでもいい。 何処から入力するかはたいした問題ではない。
540 名前:デフォルトの名無しさん mailto:sage [2018/06/04(月) 21:55:13.33 ID:J29vhHVp.net] www.din.or.jp/~ohzaki/mail_regex.htm RFC通りのメールアドレス判定なんて不毛だってはっきりわかんだね
541 名前:デフォルトの名無しさん mailto:sage [2018/06/04(月) 22:31:58.94 ID:lBwALx1Z.net] >>527 わらたwwwww
542 名前:デフォルトの名無しさん mailto:sage [2018/06/04(月) 23:19:04.56 ID:hdRuAjud.net] 昔仕事で MUA 作った時に >>527 にある folding white space をぶち込んでくる送信元がいて苦労した記憶が…
543 名前:デフォルトの名無しさん [2018/06/05(火) 00:27:36.36 ID:xCctA/+R.net] >>527 ここはお題スレだから不毛で良いんだよ。パズルを解くようなもんなんだから。
544 名前:デフォルトの名無しさん mailto:sage [2018/06/05(火) 00:33:47.39 ID:ueqUCLW3.net] >>476 に感化されて>>379 の(1)(2)(3)を勉強しながら書いてみた https://scalafiddle.io/sf/ZGr8M2X/1
545 名前:デフォルトの名無しさん [2018/06/18(月) 23:54:29.00 ID:2+ok0PtZ.net] お題: バイオリズム計算 計算結果の出力だけでも良いが、なんだったらアスキーアートやGUIで波形の絵を出したりしても良い。その辺は自由。 バイオリズムとは何かについては Wikipedia 参照。 https://ja.wikipedia.org/wiki/%E3%83%90%E3%82%A4%E3%82%AA%E3%83%AA%E3%82%BA%E3%83%A0 実際に計算して図を出すサイトもある。 https://keisan.casio.jp/exec/system/1231994137
546 名前:デフォルトの名無しさん mailto:sage [2018/06/19(火) 22:42:15.32 ID:j8jphcK/.net] 計算式まで示されちゃってるから出力形式に凝らないと厳しいかな・・・
547 名前:デフォルトの名無しさん mailto:sage [2018/06/22(金) 00:11:10.49 ID:3MP35Wby.net] お題: ある数値nが与えられた時に、次の条件を満たす2つの数値a,bを求め、表示するプログラムを作成しなさい。 ●aとbの最小公倍数がnとなる ●a<bかつaとbの差(b-a)が最小となる 例:n= 360→a= 36,b= 40 n=1000→a=125,b=200 例が間違ってたらゴメン
548 名前:デフォルトの名無しさん mailto:sage [2018/06/22(金) 01:02:12.60 ID:8ZynGqyy.net] 数学板で
549 名前:デフォルトの名無しさん mailto:sage [2018/06/22(金) 01:50:17.43 ID:Hssdw/9K.net] 数学板はアルゴリズムは範疇じゃない
550 名前:デフォルトの名無しさん mailto:sage [2018/06/22(金) 02:45:23.00 ID:OFAJDNNU.net] >>534 n=1000だとa=200,b=250?
551 名前:デフォルトの名無しさん mailto:sage [2018/06/22(金) 04:46:50.60 ID:OFAJDNNU.net] >>534 Java https://ideone.com/TJSzrf
552 名前:デフォルトの名無しさん mailto:sage [2018/06/22(金) 06:04:41.34 ID:3MP35Wby.net] >537 申し訳ない。その通りです。
553 名前:デフォルトの名無しさん mailto:sage [2018/06/22(金) 19:02:58.08 ID:OFAJDNNU.net] >>534 Java (>>538 を修正) https://ideone.com/vmgMtp
554 名前:デフォルトの名無しさん mailto:sage [2018/06/23(土) 00:13:54.74 ID:3GZ5DVjp.net] >>539 a=1 b=2 じやあかんか?
555 名前:デフォルトの名無しさん mailto:sage [2018/06/23(土) 00:40:06.00 ID:5Wb6fwhK.net] 数学板じゃなくてもさすがに最小公倍数くらいは このスレならみんな知ってると思ってた
556 名前: mailto:sage [2018/06/23(土) 01:29:42.07 ID:OlLfOCSW.net] >>542 公倍数は最小公倍数の倍数 公約数は最大公約数の約数 …当たり前のように思えて実際の証明は結構イメージしにくく、一回読んだだけではよくわからないのでした…
557 名前:デフォルトの名無しさん mailto:sage [2018/06/23(土) 01:40:18.34 ID:gWvFlQcl.net] お題:標準入力からhtmlが一行ずつ与えられるのでh1,h2などのhタグを階層化して出力しなさい。タグ内のテキストも一緒に出力し、タグ内にimgが含まれていたらそのaltを出力しなさい。 出力例: h1 5ちゃんねるにようこそ ....h2 クソスレ乙 ........h3 逝ってよし ....h2 オマエモナー
558 名前:デフォルトの名無しさん mailto:sage [2018/06/23(土) 04:54:51.31 ID:0hHcgEn+.net] >>532 C++ https://ideone.com/zLWLhl >>534 C++ https://ideone.com/TS6iHb
559 名前:デフォルトの名無しさん [2018/06/24(日) 06:33:26.88 ID:eSenA4KT.net] >>532 Kotlin https://paiza.io/projects/1cs_1FmFyWgV8HYYxdNWYg
560 名前:デフォルトの名無しさん mailto:sage [2018/06/25(月) 15:39:38.08 ID:NIfex5vk.net] 任意の文字列を含む有効なビットコインのアドレスを生成するプログラムを作成せよ。有効な形式のアドレスでなければブロックチェーンエクスプローラで検索しても認識されない。ビットコインアドレスの形式については下記サイトを参照。 https://qiita.com/pokochi/items/4d536a4a24067505abea 例:下記サイトの二番目にあるようなアドレス、 https://bitflyer.com/ja-jp/glossary/address
561 名前:533 mailto:sage [2018/06/27(水) 00:31:17.62 ID:vFJz85Ce.net] >>534 C++(使ってるのはほとんどCですが) https://ideone.com/S4H5Mo 自分の考えてたアルゴリズムをCで記述してみました。 模範解答、とはとても言えない代物です。もっと改良の余地がありますし、バグも取りきれてないかもしれません。 それと>534出題時に考えてたアルゴリズム(手計算でやってましたが)を↓に記述してみました。 こちらは明確に誤った答が出されてしまいます。参考程度に orz https://ideone.com/HdfYPe ↓
562 名前:デフォルトの名無しさん mailto:sage [2018/06/28(木) 20:31:12.40 ID:frbOjHXy.net] お題:三捨四入せよ 負の丸め方向はどちらでも良い https://ideone.com/Z6fTGh
563 名前:デフォルトの名無しさん [2018/06/29(金) 03:23:11.07 ID:9jOo9IQo.net] >>549 これでいいの?なんか妙に簡単に感じるんだが。 Kotlin https://paiza.io/projects/6DxRoEDJdya5lyflPo2P9Q
564 名前:デフォルトの名無しさん mailto:sage [2018/06/29(金) 09:31:42.23 ID:1XSLHtbi.net] だれか
565 名前:>>547 にも挑戦してくれ [] [ここ壊れてます]
566 名前:デフォルトの名無しさん mailto:sage [2018/06/29(金) 09:37:19.96 ID:dAZ4C3M0.net] 解いてくださいお願いしますだろ
567 名前:デフォルトの名無しさん mailto:sage [2018/06/29(金) 09:41:08.29 ID:1XSLHtbi.net] 説いてくださいお願いします
568 名前:デフォルトの名無しさん [2018/06/29(金) 09:46:26.83 ID:8O35Zxb2.net] やれるものならやってみろ。 などと挑発してみるとアホが大漁に釣れるかも知れない。
569 名前:デフォルトの名無しさん mailto:sage [2018/06/29(金) 09:47:16.90 ID:1XSLHtbi.net] やれるものならやってみろ
570 名前:デフォルトの名無しさん [2018/06/29(金) 10:00:35.27 ID:8O35Zxb2.net] 問題は釣れるのがアホなのでものすごく頑張った揚げ句たいしたものができない率が非常に高いことにある。
571 名前:デフォルトの名無しさん [2018/06/29(金) 14:17:42.63 ID:1XSLHtbi.net] やっとできた〜
572 名前:デフォルトの名無しさん [2018/06/29(金) 14:20:21.27 ID:1XSLHtbi.net] https://ideone.com/7plTpl
573 名前:デフォルトの名無しさん mailto:sage [2018/06/29(金) 21:50:25.20 ID:mF6xIVde.net] やれるものならやってくださいお願いします
574 名前:デフォルトの名無しさん [2018/06/30(土) 11:21:27.07 ID:xZj/2lQZ.net] ライブラリを入れ込んだver https://ideone.com/6WfH7S
575 名前:デフォルトの名無しさん mailto:sage [2018/06/30(土) 12:55:28.86 ID:xZj/2lQZ.net] これでこんなこともできる https://chainflyer.bitflyer.jp/Address/1MayukoMuraokaXXXXXXXXXXXXXXX5f8QC
576 名前:デフォルトの名無しさん mailto:sage [2018/07/03(火) 01:47:57.66 ID:dVWXwhE2.net] >>544 io !(?<_><.?>)(.)\k<_>! <- '\1'
577 名前:デフォルトの名無しさん mailto:sage [2018/07/03(火) 01:49:38.99 ID:dVWXwhE2.net] >>549 d~-(n+1).round
578 名前:デフォルトの名無しさん [2018/07/03(火) 10:14:17.19 ID:2Hrfam1D.net] >>562 >>563 それなんてエロゲ、じゃない、なんて言語?
579 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 00:42:21.28 ID:EM1Kat0+.net] >>544 Perl https://paiza.io/projects/dRg6gJ5qeJb_MNSQRS0agg
580 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 21:23:39.48 ID:N4SCi1OC.net] 情報オリンピックの問題って組合せ最適化ばかりなのかなぁ? ttps://www.ioi-jp.org/joi/problem_archive-light.html
581 名前:デフォルトの名無しさん [2018/07/04(水) 21:52:08.71 ID:gFgZc5FG.net] VXU
582 名前:デフォルトの名無しさん mailto:sage [2018/07/05(木) 16:25:31.76 ID:AeL6VB/V.net] 567
583 名前:デフォルトの名無しさん mailto:sage [2018/07/06(金) 02:46:13.60 ID:uFkmqose.net] 568
584 名前:デフォルトの名無しさん [2018/07/08(日) 08:40:53.67 ID:PyVF6x+z.net] 鈴木貫太郎 灘中 中学入試 整数問題 https://youtu.be/okKan0C_--E 問1 4つの異なる数字、1, 3, 9, x から、 異なる数字を取り出して並べる、3桁の整数は24個あり、それらの平均値は555 である時、x は何の数字か? 問2 5桁の36の倍数で、2, 3, 5 のどれもが、 いずれかの桁に、1回以上現れる整数のうち、最小のものを求めよ 答え、問1 : 7、問2 : 13,572
585 名前:デフォルトの名無しさん mailto:sage [2018/07/08(日) 09:46:25.71 ID:zc7zM8II.net] 瞬殺 灘中入れるかな?
586 名前:デフォルトの名無しさん [2018/07/09(月) 14:21:35.87 ID:RPo/jFjY.net] 灘中の問題は、以下の性質を使うものが多い 2 の倍数は、下1桁が偶数 4 の倍数は、下2桁が4の倍数 3 の倍数は、各桁の数字を足したものが、3の倍数 9 の倍数は、各桁の数字を足したものが、9の倍数 だから数字を因数分解して、これらに該当するかどうかで、問題を判別できる
587 名前:デフォルトの名無しさん [2018/07/09(月) 16:13:07.36 ID:OMEWQnbN.net] いただきぃ!! https://goo.gl/uAcy7u
588 名前:569 [2018/07/11(水) 18:04:55.63 ID:I//Y0R5O.net] >>570 問1 を、Ruby で作った。 問2 は、難しくて作れない nums_3 = [1, 3, 9] nums_4 = nums_3 + [0] (0..9).each do |num| next if nums_3.include? num # 含まれていれば nums_4[-1] = num sum = 0 nums_4.permutation(3) { |a, b, c| sum += (a*100 + b*10 + c) } puts num if sum == 24 * 555 #=> 7 end
589 名前:デフォルトの名無しさん mailto:sage [2018/07/11(水) 18:38:10.32 ID:XuPZzMyT.net] じゃあ問2を酷いコードで >>570 Java java.util.stream.IntStream.range(10000, 100000).filter(i -> i % 36 == 0).mapToObj(Integer::toString).filter(s -> s.matches("(?=.*2)(?=.*3)(?=.*5).*")).findFirst().ifPresent(System.out::println);
590 名前:デフォルトの名無しさん [2018/07/11(水) 21:04:09.51 ID:9T5mO0zj.net] コンピュータを使ってブルートフォースで答えを探す方法はわかってもコンピュータを使わずに数学的に解く方法が思い浮かばない。 しかしそれを小学生が解いて入学するという現実。orz
591 名前:デフォルトの名無しさん mailto:sage [2018/07/11(水) 23:18:42.60 ID:83LTUfxJ.net] >>570 Squeak/Pharo Smalltalk "問1" ((0 to: 9) copyWithoutAll: #(1 3 9)) detect: [:n | | set | set := Set new. '139', n asString combinations: 3 atATimeDo: [:comb | comb permutationsDo: [:perm | perm first ~= $0 ifTrue: [set add: (perm as: String) asInteger] ] ]. set size = 24 and: [set average = 555] ] "=> 7 " "問2" ((10000 roundTo: 36) to: 99999 by: 36) detect: [:n | n asString includesAllOf: '235'] "=> 13572 "
592 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 00:00:29.98 ID:gpOSM7dO.net] このスレprologニキっていないの? 手続き型以外の解法見たい あとJニキ最近見なくて寂しい
593 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 01:08:11.22 ID:gc75XwOp.net] >>570 問1 4種の数字から作られる24個の数字の平均が555 →合計が1110になる12組の数字にまとめられる→どの桁も合計が10になる2組の数字の組合せで構成される →1,3,9,xのうち1と9を除外した3と「足して10になる数」→x=7 問2 36の倍数→4の倍数かつ9の倍数 →5桁の数字は9の倍数なので各桁の数字の合計が9の倍数になる →5桁の数字には「2,3,5」が少なくとも1つ以上含まれているので、この時点で各桁の数字の合計は10より多くなる。 →各桁の数字の合計は9ではないので、18とする。残り2桁の数字の合計は8。この中で一番小さな数が作れるのは1,7。 →「1,2,3,5,7」の組み合わせの内、下2桁が4の倍数で最も小さい数は13572となる。 かなり乱暴に書くとこんな感じで解けば良いのかな? しかし、これをプログラムで表現しようとするのはかなり骨っぽい(数を1桁ずつ分解するのに余計な手間がかかりそう)。 それよりも総当たりで解いた方がコンピュータ的には手っ取り早い気がしますね。
594 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 01:52:58.79 ID:2elGYyrL.net] >>579 最初の「合計が1110になる12組の数字にまとめられる」が何故なのかわからん。
595 名前:578 mailto:sage [2018/07/12(木) 07:07:01.02 ID:gc75XwOp.net] >>580 作成される数字を順列とみなした時に 「ABCD ABDC ACBD ACDB ...」を逆順にした 「DCBA DCAB DBCA DBAC ...」という列を組み合わせたら…なんて考えてたんですが、後で見ると意味不明でした。申し訳ない。 問1について、それよりも単純な方法がありました。 xがどの桁で使用されてるかで場合分けし、それぞれを合計する x不使用:139 193 319 391 913 931 :2886 xが1の桁:13x 19x 31x 39x 91x 93x :2860 + 6x xが10の桁:1x3 1x9 3x1 3x9 9x1 9x3 :2626 + 60x xが100の桁:x13 x19 x31 x39 x91 x93 :286 + 600x 上記をすべて合計:8658 + 666x 24個の数字の平均が555だから合計は 555*24=13320 8658+666x=13320 666x=4662 x=7 若干手続きはコンピュータ向けと言えなくもないですが、やはりプログラミングするには手間ですね。
596 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 07:41:52.96 ID:KB59nVpm.net] 問1 24=4! なので4個の数字はすべて異なる 24通りを並べると各桁1, 3, 9, x が同じ回数出現する これらの平均が555なので 1, 3, 9, x の平均が5とわかる 1, 9の平均が5なので3, xの平均が5となる7が答え 問2 最小を求めるので10000の位が1になる数を考える (考えて、なければ他を考える) 各桁の合計が9の倍数から1, 2, 3, 5, 7とわかる この中で偶数は2だけなのでこれが1の位 1の位が4で割りきれないので10の位は奇数であれば4の倍数 つまり10の位が3, 5, 7のどれでも36の倍数になる 3, 5, 7を小さい順にならべて13572が答え
597 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 07:47:08.70 ID:KB59nVpm.net] 以上が東大数学科卒の考え方 両方で20秒くらい
598 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 09:03:09.86 ID:ax9CLQnp.net] 問1 x = 111 * (24 * 5 - 6 * (1 + 3 + 9) ) / (6 * 111) = 7 問2 5つの数を A, B, 2, 3, 5 とすると A + B + (2 + 3 + 5) = 0 mod 9 <=> A + B + 1 = 0 mod 9 かつ末尾2桁が4の倍数になる 従って一番左の桁は1で確定し {A, B} = {1, 7}も確定 2が末尾に来ることは確定していてかつそのとき任意の並びで4の倍数になるため13572が題意を満たす数 以上が東大理学部物理学科卒の考え方 両方合わせて40秒くらい
599 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 09:17:45.00 ID:kqFyQCjZ.net] やっぱ紙と鉛筆で解く問題だよね。 最初から解析的に解けない問題出して欲しい。
600 名前:デフォルトの名無しさん [2018/07/12(木) 10:06:30.92 ID:nIR9VMIg.net] >>581 小学生が解く場合に途中で 8658+666x=13320 のような数学的表現で考えるのはありなのか? 回答者個人にそれができるかできないかの問題ではなく小学校が教えている範囲にそれが含まれるのかの問題ね。 もし含まれていないとしたら他の方法で解く事が可能という事になる。
601 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 12:00:25.05 ID:hJKe2JzT.net] >>584 「従って一番左の桁は1で確定し」 がわかりません >>585 だよね
602 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 14:03:35.77 ID:Jbx8ub/k.net] 36の倍数は、4, 9 の倍数で、それらの特徴を利用できるかどうかだけ 捨て問題だろ。 考えたり解いたりすると、2問で10分使うから、落ちるだけ。 即座に無視しないといけない。 新パターンの問題は、時間を使わせるから無視しろっていう、受験テクニック 灘中高は、100%塾の生徒しか受からない。 灘用の受験技術だから、その授業を受けていないと受からない 文系が東大工学部に入る、受験技術のマンガ「ドラゴン桜」と同じ。 賢い者ではなく、塾代という貧富の格差で決まる 大型資格もそう。 TAC, 大原などに行ってないと受からない 貧富の格差、貧富の遺伝
603 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 17:25:23.25 ID:Tq83uIBL.net] >>588 だと灘の問題全て捨て問題になりそう
604 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 18:14:20.08 ID:ax9CLQnp.net] >>587 ものすごくかみ砕いて言うと A + B + 1 = 0 mod 9 (A, B ∈ {0, 1, ..., 9}) を満たす A, B に関して 任意のAに対して対応するBが少なくとも1つは存在することは自明なので A = 1 として 1XX32 という数を考えればこの数は36の倍数でありかつ 2, 3, 5 を各桁に含む (XXには A = 1 に対応する B の値の内の1つと 5 が入る) 解は
605 名前:10000以上1XX32以下の整数なので左端の桁は1であると確定する [] [ここ壊れてます]
606 名前:デフォルトの名無しさん mailto:sage [2018/07/12(木) 19:16:30.21 ID:uRWdzVZq.net] えらい省略したねえ
607 名前:デフォルトの名無しさん [2018/07/13(金) 02:14:22.89 ID:brGVybd4.net] >>570 問1のみ Kotlin https://paiza.io/projects/rG4rKSs27X473v0qxyicHQ 何も考えずに全パターン調べているだけ。
608 名前:デフォルトの名無しさん [2018/07/13(金) 02:29:27.10 ID:brGVybd4.net] >>570 問2のみ Kotlin https://paiza.io/projects/RS3SPZeRhx0caTVXDHQmaw こっちの方が簡単だったな。
609 名前:デフォルトの名無しさん [2018/07/13(金) 07:35:11.88 ID:isSSIGbX.net] >>570 Rubyで問1。 def odai_11_569_1(a_ary, a_avg) (a_ary.size + 1) * (a_avg / 111) - a_ary.inject(:+) end w_ary = [1, 3, 9] w_avg = 555 p odai_11_569_1(w_ary, w_avg) 結果:7
610 名前:デフォルトの名無しさん [2018/07/13(金) 08:03:43.23 ID:isSSIGbX.net] >>570 Rubyで問2。 def odai_11_569_2(a_ary, a_base, a_col) a_ary.map!(&:to_s) w = 10**(a_col - 1) w = w / a_base - (w % a_base > 0 ? 0 : 1) w *= a_base loop do w += a_base next if (a_ary - w.to_s.split('')) != [] return w end end a_ary = [2, 3, 5] a_base = 36 a_col = 5 p odai_11_569_2(a_ary, a_base, a_col) # 結果:13572
611 名前:デフォルトの名無しさん mailto:sage [2018/07/13(金) 08:58:11.48 ID:IlVyAeDp.net] rubyならさくっとワンライナーで p (10000-10000%-36).step(10**5,36).find{|i|(i.digits&[2,3,5])[2]} #=> 13572
612 名前:569 mailto:sage [2018/07/13(金) 16:26:20.44 ID:oo2UOY38.net] >>570 Rubyで、問2 str_ary = %w(2 3 5) (10_000...100_000).select do |num| next unless num % 36 == 0 # 2, 3, 5 をすべて含む if str_ary.all? { |s| num.to_s.include? s } puts num #=> 13,572 break end end
613 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 05:33:19.05 ID:jpR0mrXc.net] 国際数学オリンピック 問3反パスカル的三角形 https://twitter.com/worapolketanond/status/1017612366840717312
614 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 13:47:04.74 ID:3J9Q4qmi.net] そろそろ新しいお題を。 既出なら申し訳ない。 お題: 再帰・スタックを使用しないマージソートを実装し、整数型のデータn個の配列をソートするプログラムを作成しなさい。 データの個数は不定とし、特定の条件を満たす個数の配列にのみ有効なプログラムは不可とします。 データの内容はランダムとします。乱数の生成法はお任せします。 出来ればソート完了後に配列(の一部)を表示する、正しくソート出来たかチェックする処理を追加してみて下さい。 追加お題: 上記のマージソート処理の際、作業領域を元のデータの半分の量しか確保せずにソートを実行するプログラムを作成しなさい。
615 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 15:13:06.98 ID:QznZ4U7X.net] 1から100までの数字から4つを取り出したそれぞれに番号を振る速い方法ありますか? メモリもあまり使わずに 1 2 3 4 -> 1 1 2 3 5 -> 2 1 2 3 6 -> 3 96 97 98 99 -> 3921221 96 97 98 100 -> 3921222 96 97 99 100 -> 3921223 96 98 99 100 -> 3921224 97 98 99 100 -> 3921225
616 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 15:22:22.12 ID:wSvgACAH.net] >>599 残念ながら余り良い問題じゃない希ガス
617 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 15:57:46.49 ID:ETmmav0O.net] スタック不可だとスタック操作が隠蔽されてる高級言語はほぼ使用出来ない 無理やりCやC++でやるとしてもローカル変数や関数呼び出しを殆ど封印しなければならない これを良い問題と見るか悪い問題と見るかは分からないが俺はやる気が
618 名前:出ない [] [ここ壊れてます]
619 名前:デフォルトの名無しさん [2018/07/14(土) 16:00:11.93 ID:4RxIMQwD.net] >>600 組み合わせか 北大の湊 真一のZDD とか。 本も出てる
620 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 17:25:12.68 ID:btN22RWl.net] お題:Hello, World!を出力せよ。ただし出力系の関数を使ってはならない。
621 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 18:41:01.92 ID:3J9Q4qmi.net] >>602 すみません。>599の「スタック」はデータ構造としての利用のみを想定していて、他関数呼び出しの禁止などは意図してませんでした。 問題文が不明瞭ですみません。 >>601 ご期待に添えず申し訳ない。他のお題を思いついたら、また出題させていただきます。
622 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 20:04:39.81 ID:wFLY+TGv.net] お題: マップの広さと部屋の個数及び部屋間の繋がりが与えられた時、ダンジョンを作成せよ ・ダンジョンは部屋と通路からなる ・部屋は少なくとも3x4の大きさを持つ ・通路の幅は1 ・部屋同士は接しない ・マップ外に部屋や通路は無い 一応、想定としては標準出力に'#'と'.'で表示を考えてる 生成方法は自由だからゲーム的面白さのあるマップ作っても良い
623 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 20:21:35.37 ID:xV7EJA5w.net] 解釈がいろいろあり過ぎて コードに対して仕様の説明文が必要になるぞ
624 名前: mailto:sage [2018/07/14(土) 21:29:48.92 ID:CBXc6tpD.net] >>605 >>599 の問題はおもしろいし、お題として成立していると思います ・再帰を使用しないマージソートを実装 ・作業領域を元のデータの半分の量しか確保せずにソートを実行する で考えているところです
625 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 22:17:39.11 ID:7G4bCYRL.net] >>604 出力せよといいつつ、出力系は使うなとは、まるで一休さんのような
626 名前:デフォルトの名無しさん mailto:sage [2018/07/14(土) 22:31:41.56 ID:ZSFOzkp/.net] まて、関数は、とある つまりはシステムコールを直につかうんだ!
627 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 00:13:47.62 ID:upVjqm6g.net] >>604 じゃあC言語で。 #include <stdio.h> int main() {]
628 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 00:14:11.69 ID:upVjqm6g.net] ごめん途中で書き込みボタン押してしまった。
629 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 00:15:38.60 ID:upVjqm6g.net] >>604 #include <stdio.h> int main() { system("echo Hello, World!"); return 0; }
630 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 00:16:57.24 ID:iXIp3nZ5.net] >>610 システムコールの内部は関数 だったりして
631 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 00:17:46.78 ID:iXIp3nZ5.net] >>613 それ関数
632 名前:デフォルトの名無しさん [2018/07/15(日) 00:23:22.27 ID:upVjqm6g.net] >>610 クラスもありかも知れない。クラスの中にはメソッドがある。メソッドはメソッドであって関数ではない。 あるいは procedure でも良いのかも知れない。procedure は手続きであって関数ではない。 サブルーチンもありかも知れない。 昔のマイコン用のBASICでVRAMに直接 POKE で値を書き込んだりするのもありかも知れない。 もはや一休さん並のトンチであり言葉遊びである。
633 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 00:24:49.27 ID:upVjqm6g.net] >>615 出力系の関数は一切使っていない。
634 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 00:26:13.41 ID:iXIp3nZ5.net] 関数を使わないとなると int 21 とかじゃないの?
635 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 00:46:35.39 ID:YSciq3u7.net] >>604 J 'Hello, World!' REPL な処理系なら簡単
636 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 01:18:12.57 ID:i/vgUFG7.net] >>600 とりあえず出来たけどもっと簡単に変換する方法があるような気がする https://ideone.com/EnmoNU
637 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 03:18:16.17 ID:upVjqm6g.net] cat Hello, World! もはやプログラムですらない。
638 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 08:10:13.37 ID:YZu0PDvL.net] >>600 100この中から4個を選ぶことだから完全最小ハッシュ関数が使える
639 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 08:20:59.61 ID:YZu0PDvL.net] >>604 紙にペンで
640 名前:Hello, World! と書く。 [] [ここ壊れてます]
641 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 08:21:04.86 ID:YZu0PDvL.net] >>604 紙にペンでHello, World! と書く。
642 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 08:24:39.94 ID:iXIp3nZ5.net] 10 PRINT "Hello, World!"
643 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 09:17:28.76 ID:rFf4w5JC.net] 「何々禁止で何々を書け」って類いの問題で面白くなることはあんましないな
644 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 09:35:01.35 ID:d2Ttt1A+.net] >>600 Java https://ideone.com/oI3bvA 完全最小ハッシュ関数でぐぐっちゃった
645 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 12:21:14.41 ID:9lve5q3D.net] >>622 >>627 考え方分かりました ありがとうございました
646 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 13:09:18.09 ID:+eT7t0LR.net] 質問一回許すとなし崩しに宿題だらけになるぞ。警告はした。
647 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 13:13:37.51 ID:9lve5q3D.net] これ宿題じゃないですよ ここに書く前にコードも書いてたしもっと効率いい方法ここの人達なら知ってそうだと思ったから
648 名前:デフォルトの名無しさん [2018/07/15(日) 13:15:21.60 ID:kiP00q0W.net] >>600 1 2 3 4 -> 001002003004 97 98 99 100 -> 097098099100
649 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 14:11:04.01 ID:d2Ttt1A+.net] >>630 よし、そのコードを貼るのだ
650 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 14:14:11.66 ID:9lve5q3D.net] >>620 のもっと効率悪い奴だよ 元は100C4じゃなくて28C4だったけど int cc[4][32][32]; こんな二次元の配列使ってた
651 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 14:19:01.22 ID:ugn7dRUi.net] いいから貼れ
652 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 14:26:45.03 ID:9lve5q3D.net] https://ideone.com/VFv36f 2年前に書いたやつで今は何やってるかよく分からないけど >>620 のは昨日元のこのコードを見ないで30分くらい考えて作った
653 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 14:33:39.46 ID:ugn7dRUi.net] それの何が不満? 何をどう改善したいのかわからないと テーブル作成の速度? テーブル検索の速度? コードサイズ? バイナリサイズ? コードの分かりやすさや移植性?
654 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 14:35:44.41 ID:9lve5q3D.net] 何がってほぼ全てが不満だけど
655 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 14:36:24.88 ID:ugn7dRUi.net] ああ、 速度とメモリって書いてあったね
656 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 15:22:45.17 ID:ZKe7bXB/.net] 宿題スレでやれ
657 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 21:44:41.62 ID:WaX+Eind.net] 605、出題しておいて何だがこれめっちゃ難しいな マップの大きさの制約があると通路引くのが難しすぎる
658 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 22:38:32.27 ID:/hZTTtWu.net] いちおう解けるのを自分で確認してから出してくれないと困る
659 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 23:36:44.29 ID:ugn7dRUi.net] >>640 >>607
660 名前:デフォルトの名無しさん mailto:sage [2018/07/16(月) 00:30:52.75 ID:DlxdbTiq.net] 入力と出力の例とかあると良いよね
661 名前:デフォルトの名無しさん mailto:sage [2018/07/16(月) 10:10:17.82 ID:7UvME/Zj.net] >>608 で、出来てる?
662 名前: mailto:sage [2018/07/16(月) 11:53:01.88 ID:PLRcL5uS.net] >>644 一般に、再帰を非再帰に書き下すのは難しいのです…
663 名前:デフォルトの名無しさん mailto:sage [2018/07/16(月) 13:51:43.31 ID:yJ4dWfp7.net] お題 ポーランド記法による計算機を実装せよ 演算子は加算(+)と乗算(*)をサポートすること * + 1 5 + 2 3 => 30 * * * * 2 3 4 5 6 => 720
664 名前:デフォルトの名無しさん mailto:sage [2018/07/16(月) 13:53:41.91 ID:JYSC+BEo.net] ただし、スタックを使用してはならない
665 名前:デフォルトの名無しさん mailto:sage [2018/07/16(月) 13:56:53.16 ID:TD/1pPmS.net] さらに、分数と複素数をサポートすること
666 名前:デフォルトの名無しさん mailto:sage [2018/07/16(月) 14:01:43.77 ID:rAvhQng0.net] まーた、〜を使わないで、か。 宿題か何かかな
667 名前:デフォルトの名無しさん mailto:sage [2018/07/16(月) 14:36:11.63 ID:dBK+PWCu.net] >>646 Ruby 2.5.0 [ "* + 1 5 + 2 3", "* * * * 2 3 4 5 6" ].each do |_exp| exp = +-_exp nil while exp.gsub!(/([^\d\s]+) +(\d+) +(\d+)/){$2.to_i.send($1, $3.to_i)} puts '%s => %s' % [_exp, exp] end #=> * + 1 5 + 2 3 => 30 * * * * 2 3 4 5 6 => 720
668 名前:デフォルトの名無しさん [2018/07/18(水) 02:22:22.35 ID:7Z3eO87O.net] >>646 Kotlin で二つ作った。 Stack 使ったやつ。 https://paiza.io/projects/Qnrrux74abDRsr1kh77FNA Stack 使わずに MutableList で 計算記号、数、数のパターンを計算できなくなるまで繰り返し計算するやつ。 enumも使用。 https://paiza.io/projects/rHKDVtB2yjTvymuFLlBL7g
669 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 21:45:59.55 ID:bv0mlJEL.net] お題 N個の整数(a_1, a_2, ..., a_n, ..., a_N)と*+/()を使った数式の値が、ある整数aにもっとも近い数式とその値(実数)を出力せよ 引き算はなし a_n = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
670 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 21:52:08.91 ID:QlKeHbXC.net] うんざり
671 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 10:08:13.30 ID:Dnr6z2Ly.net] >>607 >>606 のは要はローグライクの部屋を作れってことだろ 出題者の説明不足 画像の1枚でも張れば見て分かる ttps://cdn-ak.f.st-hatena.com/images/fotolife/g/gaou2/20170905/20170905111314.png
672 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 12:45:23.08 ID:msj5ObGA.net] これ見た目では普通だけどかなり横に長い部屋なんだよな
673 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 12:55:16.04 ID:jy7p1ZdA.net] 部屋と通路以外の場所も存在するのかよ
674 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 13:01:35.53 ID:m/xgtmWb.net] >>655 今だと全角文字で作ればいいかな。絵文字もまじえて。
675 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 00:47:20.34 ID:PpbivrbM.net] >>598 Java https://ideone.com/VUgSXO 1行〜5行までしか答え出ないな うちの環境で 9行を探索するのに4.6秒 10行を探索するのに61.6秒 2018行はあかんww
676 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 01:28:14.71 ID:NOsumJU/.net] いやさすがに数学板でやれや。 国際数学オリンピックて自分で言うてるやんけ
677 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 02:06:08.36 ID:PpbivrbM.net] 数学とか使わずに総当たりでやってるのに数学板に行けとな
678 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 03:14:46.46 ID:64IGnOgv.net] いやこれは総当たりでは計算量的に無理だろ コードは書けるだろうけど 存在することを帰納法で証明するしかないから数学板の問題だ
679 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 09:13:59.71 ID:1RynmuAu.net] まーた数学コンプレックスが暴れてるのか 数オリに出るくらいの賢さがないから計算機の力も借りて解くっていう方向性は別にスレチじゃないだろ
680 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 09:22:17.32 ID:NOsumJU/.net] ここでレスリングの話しだして苦言を呈されると「まーたレスリングコンプレックスが暴れてるのか」 極端に言うとこういうこと。 レスリング板、数学板があるだろ。 わざわざここでオナニーしたいのは専門以外の板でマウント取りたいのかな? そんなひねくれた根性だから現実世界でミジメな生活なんだよ。
681 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 09:30:59.20 ID:1RynmuAu.net] 早速暴れてて草 正攻法で数オリの問題を解く話を延々してたんならうざいけど 飽くまで計算機使って解いてみようぜって言ってる人にまでその理屈が当てはまるわけないだろ それとも数学だけじゃなくて論理的思考もできないタイプか?それなら納得だわw
682 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 10:44:43.72 ID:NOsumJU/.net] 数学で解ける問題をわざわざコンピューターでムダな解き方するの?? 突き詰めていくと数学で出した解法そのまま引き写すだけになるのが分かりきってるのに。
683 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 10:51:14.48
] [ここ壊れてます]
684 名前: ID:1RynmuAu.net mailto: だからわざわざ「数オリに出るくらいの賢さがないから」って言ってるだろ日本語読めねえのかよ そりゃ灘の入試レベルならその通りだろうけど数オリで正解率1割切ってたような問題なんだから計算機使ったアプローチしてみるのもプログラミングのお題としては面白いだろ それともなんだ、円周率の計算だってペンと紙でできるんだから無駄だっていうのか?w そんな極論言うレベルの頭だから数学もできないんだよw [] [ここ壊れてます]
685 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 11:36:12.38 ID:64IGnOgv.net] そういう無駄に一般化した話も結構だけど、 個別具体的な話として>>598 は計算機を併用することに効果が無いから数学の問題だと言ってるんだよ。 2018を解けるほど効率化できるなら既に人力で解けているだろうからね。
686 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 13:48:16.24 ID:YvrMO5FL.net] それは総当たり以外にうまい方法が思い浮かばないから言えるだけでしょうよ。 あと素数判定アルゴリズムなんか考えればわかるけど、効率化できることと人力で解けることに相関はないぞ。 少なくともスレチではないと思うよ。
687 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 14:31:11.72 ID:v+At+/4W.net] 部外者だが 嫌なら回答しなきゃいいだけなのに 何文句言ってるの? って感じ
688 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 15:16:02.44 ID:b54Sk8mu.net] そんなことより野球のはなししようぜ!嫌なら無視すりゃいいだけ。
689 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 15:40:53.67 ID:7rDxwdj1.net] さすがにそれはスレチ
690 名前:デフォルトの名無しさん mailto:sage [2018/07/26(木) 20:25:33.46 ID:wiCSHgxo.net] アプローチ以前に >>598 の問題って存在するの それとも無いの
691 名前:デフォルトの名無しさん mailto:sage [2018/07/27(金) 00:30:20.41 ID:1FlI+KkW.net] 作るのは無理な気がするがよーわからん 一番大きい数値 1+2+…2018 = 2037171 は差の絶対値で作れないので最下段確定 一番大きい数値を出来るだけ上段に伝搬させるために小さい数値(1~2017)と組み合わせていっても最上段に残るのは 2018 → 2019 以上と組み合わせると 2017 未満の数値がダブる 最下段で 2037171 と 1 を組み合わせた場合、 2037169 も最下段に設置する必要がある 2037169 は 1~2018 の大部分と組み合わせられないので上のほうまで伝搬できずにアウト
692 名前:デフォルトの名無しさん mailto:sage [2018/07/27(金) 01:35:56.64 ID:DQ/IIgai.net] その長々とした理屈は2018が7でも6でも同様のことが言えるよね そして7や6には解がある
693 名前:デフォルトの名無しさん mailto:sage [2018/07/27(金) 01:42:27.70 ID:1FlI+KkW.net] >>674 適当に作ったプログラム(>>658 )じゃ5までしか見つかっとらんのだけど、6や7にも解あるんか
694 名前:デフォルトの名無しさん mailto:sage [2018/07/27(金) 02:06:17.44 ID:DQ/IIgai.net] ないのかごめん でも5でも同じことは言えるような
695 名前:デフォルトの名無しさん mailto:sage [2018/07/27(金) 04:54:59.02 ID:1FlI+KkW.net] 5以下の場合は数字が足りなくなる前に最大値からの流れに合流出来てるんじゃね?
696 名前:デフォルトの名無しさん mailto:sage [2018/07/27(金) 07:39:19.67 ID:9MbN0qgs.net] >>675 >>658 じゃなくてCで書いたけど6〜40までは解無し
697 名前:デフォルトの名無しさん mailto:sage [2018/07/27(金) 07:52:55.93 ID:2v1r+MgC.net] 数オリ経験者、東大数学科卒だけど 今度挑戦してみるか
698 名前:デフォルトの名無しさん mailto:sage [2018/07/27(金) 18:20:03.99 ID:KWveLgZ0.net] お題 非負整数nが与えられるので、以下に示すような六角形状の螺旋を描画せよ https://ideone.com/MmH3N6
699 名前:デフォルトの名無しさん mailto:sage [2018/07/27(金) 19:00:06.01 ID:2ZGMtSH+.net] >>680 質問です。 n>100の場合はズレが生じてくると思いますが、その時はどうしますか? それともn≦99で範囲を絞ってもよろしいんでしょうか? まぁ、私が作れるかどうか分からないんですがorz
700 名前:デフォルトの名無しさん mailto:sage [2018/07/27(金) 19:20:13.92 ID:KWveLgZ0.net] ご自由にどうぞ
701 名前:デフォルトの名無しさん mailto:sage [2018/07/27(金) 20:32:22.83 ID:2Zd5WnL8.net] 難しそうだが良いお題だな こういうお題を考えられるようになりたい
702 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 12:28:46.99 ID:SHZi2qln.net] まずは数学から入るか 中心つき六角数 - Wikipedia ttps://ja.wikipedia.org/wiki/%E4%B8%AD%E5%BF%83%E3%81%A4%E3%81%8D%E5%85%AD%E8%A7%92%E6%95%B0
703 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 08:56:47.82 ID:ngHwAmGC.net] >>681 nの大きさに合わせて-の数を決めれば、歪にならないと思うよ。
704 名前:597 mailto:sage [2018/07/29(日) 11:00:51.11 ID:g8Q1VsuY.net] こんな資料がありました https://ja.scribd.com/document/383589785/toads-pdf w3.math.sinica.edu.tw/bulletin/bulletin_old/d51/5120.pdf
705 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 13:36:35.25 ID:MuGsWv1+.net] >>686 へ〜やっぱ n = 5 までしかないんだな 後でちゃんと読んどくわ
706 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 17:52:03.38 ID:uE0dE1bw.net] 出題者は自分で書けるのを一度確認してから出題してほしいわ
707 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 15:14:43.83 ID:2n7XGxji.net] お題:パソコンのCPU温度を表示せよ
708 名前:デフォルトの名無しさん [2018/08/01(水) 15:31:54.60 ID:3rDDnIHy.net] ちょっと待ってね。温度計持ってくるから。
709 名前:デフォルトの名無しさん mailto:sage [2018/08/01(水) 19:12:40.95 ID:hJYNlAh1.net] >>689 BF +>+<-][+[->+[+>-<]<]<+[>+[.>]-]-]
710 名前:デフォルトの名無しさん [2018/08/01(水) 20:57:33.89 ID:WDXOLOCv.net] >>689 こうすると分かるんだって。 https://qiita.com/koara-local/items/1fac13704123717f5cc8 但し Linux 。
711 名前:デフォルトの名無しさん [2018/08/02(木) 00:18:21.78 ID:vClc7nAi.net] >>689 awk Linux 用 awk '{printf "%.3f℃n", $1 / 1000}' /sys/class/thermal/thermal_zone0/temp 実行例 56.000℃
712 名前:デフォルトの名無しさん [2018/08/02(木) 01:04:29.34 ID:vClc7nAi.net] あれ?\n が抜けた。 これね。 awk '{printf "%.3f℃\n", $1 / 1000}' /sys/class/thermal/thermal_zone0/temp
713 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 02:37:36.98 ID:aTwsiZBG.net] >>680 C https://ideone.com/Xpz0s9
714 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 19:31:00.50 ID:zwgkA1lD.net] 8888
715 名前:デフォルトの名無しさん [2018/08/10(金) 02:32:41.77 ID:3Gbr2Rmh.net] 鈴木貫太郎 灘中 中学入試問題シリーズ 整数問題 https://youtu.be/98U2qVDQltc 6桁の整数、5AB,C15 が999 の倍数である時、ABC を求めよ 答え A=8, B=4, C=4
716 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 02:38:30.89 ID:4W08/YUW.net] 数学板でやれ
717 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 04:25:49.65 ID:MBG3l1c9.net] >>697 C https://ideone.com/fQBfz1
718 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 04:27:27.01 ID:MBG3l1c9.net] お題:与えられた正の整数nを2進数〜16進数に変換して表示する。 11進数以降の10以上を表す文字はABCDEFを使用。 (10=A, 11=B, 12=C, 13=D, 14=E, 15=F) 例:12進数の11 ---> B 出力例: n=123456 base(2) ---> 11110001001000000 base(3) ---> 20021100110 base(4) ---> 132021000 base(5) ---> 12422311 base(6) ---> 2351320 base(7) ---> 1022634 base(8) ---> 361100 base(9) ---> 207313 base(10) ---> 123456 base(11) ---> 84833 base(12) ---> 5B540 base(13) ---> 44268 base(14) ---> 32DC4 base(15) ---> 268A6 base(16) ---> 1E240
719 名前: mailto:sage [2018/08/10(金) 07:06:46.57 ID:H9lF8aPc.net] >>700 mevius.2ch.net/test/read.cgi/tech/1480579110/909 https://mevius.5ch.net/test/read.cgi/tech/1434079972/29
720 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 10:02:14.32 ID:GIxLf6/p.net] >>697 500015 + <ABC00> = 0 mod 999 <=> 4151 + <ABC> = 0 mod 999 <=> 4151 + <ABC> = 999*5 <=> <ABC> = 844 >>700 Ruby #!ruby -p b, n = $_.scan(/\d+/).map &:to_i puts n.to_s(b).upcase #=> 12進数の11 B 2進数の123456 11110001001000000 3進数の123456 20021100110 16進数の123456 1E240
721 名前:デフォルトの名無しさん [2018/08/10(金) 10:56:59.12 ID:EBuB6o8O.net] >>697 何も考えてないPerlのワンライナー perl -e 'for(0..999){$n=sprintf"5%03d15",$_;if($n%999==0){print"$n\n"}}' 584415
722 名前:デフォルトの名無しさん [2018/08/10(金) 11:16:24.27 ID:EBuB6o8O.net] >>700 Linux等で動くGNUのbcコマンド プログラムをファイルに入れておいてbcの引数で指定し、変換させたい数値は標準入力から読ませる。 ibase = 10 n = read() for (i = 2; i <= 16; i++) { obase = 10 print "base(", i, ") --> " obase = i print n, "\n" }
723 名前:デフォルトの名無しさん [2018/08/10(金) 11:38:51.00 ID:EBuB6o8O.net] >>700 Kotlin https://paiza.io/projects/DLXMRKXWtRvwOyxd6wDtRw
724 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 14:15:41.82 ID:xmypHVHY.net] >>700 C https://ideone.com/5bUk4j
725 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 14:48:17.70 ID:MBG3l1c9.net] >>701 既出でしたか 失礼しました では追加でもう1つ お題: 時間を表わす文字列(hh:mm:ss形式の8文字)の秒数を求める 最上位の時間だけは99時間を超えた場合拡張される 例:123時間45分6秒 ---> 123:45:06 出力例: 01:23:45 = 5025 sec 333:33:33 = 1200813 sec 出題者の回答例:C言語 https://ideone.com/pnrcQ6
726 名前:デフォルトの名無しさん [2018/08/10(金) 17:50:01.60 ID:q2LOavXt.net] >>700 C言語 (再帰処理) https://paiza.io/projects/-8zTD_hGtIvLskFVO3sCZw
727 名前:デフォルトの名無しさん [2018/08/10(金) 17:57:07.00 ID:q2LOavXt.net] >>707 Perl https://paiza.io/projects/g2tBzJeNk0M_FJZMylBjuA ワンライナーにもできるが、今回はこれで。
728 名前:デフォルトの名無しさん [2018/08/10(金) 18:25:42.14 ID:q2LOavXt.net] >>707 bash https://paiza.io/projects/_3ZfQe1fXiGUBKS_z3JrJg
729 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 18:30:15.99 ID:GIxLf6/p.net] >>707 Ruby ゴルフ気分で #!ruby -palF: $_='%d sec'%(0..2).map{|i|$F[~i].to_i*60**i}.sum # input 01:23:45 333:33:33 # output 5025 sec 1200813 sec
730 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 18:40:53.56 ID:splKqZqj.net] >>707 bash (かぶった) https://paiza.io/projects/ESODDaszatdKxnhAzHsFWA
731 名前:709 [2018/08/10(金) 19:22:50.97 ID:q2LOavXt.net] >>712 あ、そうか。その方が簡単だな。
732 名前: mailto:sage [2018/08/10(金) 23:01:27.70 ID:H9lF8aPc.net] お題:10兆までの素数のリストを作ってみませんか? https://tech.nikkeibp.co.jp/it/article/Watcher/20100519/348242/ 条件:既存のライブラリ、モジュール、外部コマンド等を利用するのは不可 すべて自分で記述すること int64_t, uint64_t の使用は許可する
733 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 00:01:26.30 ID:DgZEeL87.net] Ruby では百万までで、処理に数秒掛かって、78,498個の素数があった class PrimeNumber # 素数 def initialize (to = 20) @to = to @prime_numbers = [] end def add_table (n) limit = Math.sqrt(n).ceil @prime_numbers.each do |prime_num| # 割り切れたら、素数ではない return if n % prime_num == 0 # sqrt より大きいなら、確かめずとも素数である break if limit < prime_num end @prime_numbers.push n # 割り切れない end def print (2..@to).each do |n| add_table n end puts @prime_numbers.length end end
734 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 02:38:16.74 ID:7kLiHGgf.net] >>714 perl 一応これで理屈の上ではできるとは思うんだが、477577まで行ったところでアホらしくなって止めたw #!/usr/bin/perl use strict; use warnings; my @pn = (2); my $n = 1; print "$n: $pn[0]\n"; $n++; LOOP: for (my $i = 3; $i <= 10000000000000; $i += 2) { for (@pn) { next LOOP unless ($i % $_); } push(@pn, $i); print "$n: $i\n"; $n++; }
735 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 03:54:44.08 ID:QfTJwHhj.net] >>714 Ruby 10兆なら改良されたAtkinの篩を使ってガシガシやるしかないだろう citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.192.4926&rep=rep1&type=pdf sup = 10**7 primes = [2, 3] 5.step(sup, 6){|i| 2.times{ primes << i if primes.none?{|pr| break true if pr*pr > i; i % pr == 0} i += 2 } } primes.pop if primes[-1] > sup p primes.size #=> 664579
736 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 07:04:06.66 ID:N9ICkOCi.net] >>714 昔やった アセンブラ & AVX & マルチスレッド 探してみる
737 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 07:37:04.51 ID:N9ICkOCi.net] みつかりました そんなに昔じゃなかった 2年半前 41兆くらいまで求めてます マルチスレッドではありませんでした 処理内容はよく覚えていません 素数表作成 ビットパターン作成 ふるい のようなコメントがあります 105単位でなにかやってます
738 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 09:37:18.90 ID:y6G1YdWM.net] だんだん思い出してきました 6n+1, 6n+5 に対応するビット列を保持 小さな素数の倍数はマスクを作ってAVX命令でANDしていって 大きな素数の倍数はp(210n+48個の値) にしぼって ビット命令でひたすらふるう感じ キャッシュサイズを考えて小さなバッファでやってます
739 名前:デフォルトの名無しさん mailto:sage [2018/08/11(土) 16:27:34.72 ID:VD7zYIqC.net] いいからコード貼れや
740 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 13:15:41.49 ID:DNU8qmV7.net] お題: ロト6で申込数字のいずれかが必ず5等以上に当選する 最小の申込数字の組み合わせを作ってください ロト6は01〜43の数字から異なる数字6個を順番不問で選び 申込数字6個のうち3個以上が本数字と一致すれば5等以上に当選となります
741 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 14:21:49.33 ID:ZHEExUj+.net] >>722 ・5等の当選条件を満たしている ・5等以上のいずれかの当選条件を満たしている この2つは同値なの?
742 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 14:57:56.60 ID:1gNSypiF.net] >>723 それを聞いてどうするの?
743 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 15:09:35.79 ID:ZHEExUj+.net] >>724 1〜5等に該当するならば必ず当選番号と同じ数字が少なくとも3つ入っているということがはっきりしない限り解けないでしょ
744 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 15:11:11.96 ID:ZHEExUj+.net] ごめん 申込数字6個のうち3個以上が本数字と一致すれば5等以上に当選となります を 申込数字6個のうち3個以上が本数字と一致すれば5等に当選となります と読み間違えてたわ
745 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 15:14:32.85 ID:1gNSypiF.net] >>723 と>>725 の質問内容が違う件
746 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 15:17:25.19 ID:ZHEExUj+.net] >>727 同値だよ
747 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 15:22:10.21 ID:O4fOyJLk.net] 15万個くらいの数字を吐き出して終わり?
748 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 15:26:16.88 ID:1gNSypiF.net] >>728 >>723 は>>722 とは無関係だが >>725 は(>>722 の解釈次第では)無関係ではない
749 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 15:29:22.68 ID:1gNSypiF.net] >>725 は 3個以上一致 <===> 5等以上に当選 3個以上一致 ====> 5等以上に当選 のどちらかをたずねたのかと思った
750 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 15:39:13.61 ID:ZHEExUj+.net] >>731 そもそもこっちが>>723 と>>725 で「申込数字6個のうち3個ちょうど本数字と一致すれば5等に当選」って誤解してたのが始まりなんだ わけわかんないこと言ってごめんね
751 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 17:47:14.42 ID:9O3GHV+n.net] >>707 Squeak Smalltalk ('01:23:45' subStrings: ':') reversed polynomialEval: 60 "=> 5025 " ('333:33:33' subStrings: ':') reversed polynomialEval: 60 "=> 1200813 " Pharo Smalltalk (('01:23:45' substrings: ':') collect: #asInteger) reversed polynomialEval: 60 "=> 5025 " (('333:33:33' substrings: ':') collect: #asInteger) reversed polynomialEval: 60 "=> 1200813 "
752 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 18:43:07.08 ID:9O3GHV+n.net] >>714 Squeak/Pharo Smalltalk で 100億まで | count | count := 0. Integer primesUpTo: 1e10 do: [:prime | count := count + 1]. count '=> 455052511 ' 組み込みだけど、書くとしても同じアルゴリズムで書くと思うので… https://ideone.com/zKMZYx
753 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 21:48:09.01 ID:cX8lnXZC.net] >>722 C++ https://ideone.com/gCsPec コンビネーション使う方法と、確率DPの二通りでやってみた。 (ちなみに5個当り222本は 6本が2等で、216本が3等) ※確率、期待値系は苦手だ
754 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 21:51:28.06 ID:AkqOEQdA.net] お題:ローカルホストの一覧を出力しなさい
755 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 23:20:11.13 ID:YPN3vVTA.net] >>735 >>722 って、 ・抽選される6個の数字が43C6通りのどの組み合わせでも5等以上が当たるようにくじを買う。 ・くじの購入数はできるだけ少なくなるようにする。 ってことじゃないのん?
756 名前:デフォルトの名無しさん mailto:sage [2018/08/12(日) 23:45:52.09 ID:3JJNsMDc.net] それ以外にどんな解釈が?
757 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 00:22:36.49 ID:yY3qu6sZ.net] >>737 完全に恥ずかしい誤読しました。
758 名前:デフォルトの名無しさん [2018/08/13(月) 04:38:57.55 ID:z6+TJcGX.net] >>736 いいのかこんなんで? cd /etc grep localhost hosts
759 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 09:43:58.01 ID:ux+ef9t8.net] >> 699 Ruby 実数、逆関数 https://ideone.com/lflSc0
760 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 15:57:52.91 ID:LVcLEl+f.net] >>736 訂正 お題:LANに繋がっているホストの一覧を出力しなさい
761 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 16:34:44.91 ID:z6+TJcGX.net] >>742 Linux 等の UNIX 系OSで ping -b ブロードキャストアドレス とやると同じセグメントに繋がっているやつは ICMP ECHO を返して来て IP アドレスが分かるかも知れない。 但しファイヤーウォールの設定で返さないかも知れない。また他のセグメントにはパケット送らないのでわからない。
762 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 16:35:44.08 ID:z6+TJcGX.net] あ、ごめん。これは IPv4 限定の話かも知れない。
763 名前:デフォルトの名無しさん mailto:sage [2018/08/17(金) 15:41:32.33 ID:N93NyTwd.net] 身長と体重がいくつか与えられるのでBMIを求めなさい なお身長と体重は1以上1000未満の整数とする 出力精度は小数第三位を四捨五入 各言語で一番短くかけた人が勝ち 例 ruby while gets end # input 150 50 160 55 180 120 # output
764 名前:デフォルトの名無しさん mailto:sage [2018/08/17(金) 15:47:03.36 ID:N93NyTwd.net] ミスった。 単位は身長cm, 体重kg 例 ruby while gets h, w = $_.split.map &:to_i puts '%.2f' % (1e4 * w / h**2) end # input 150 50 160 55 180 120 150 225 # output 22.22 21.48 37.04 100.00
765 名前:デフォルトの名無しさん mailto:sage [2018/08/17(金) 17:20:36.25 ID:6wrElEJt.net] https://ideone.com/lsWdqo
766 名前:デフォルトの名無しさん mailto:sage [2018/08/17(金) 19:23:09.62 ID:N93NyTwd.net] >>747 67Bまで縮めてみた C https://ideone.com/ivxfS2
767 名前:デフォルトの名無しさん [2018/08/17(金) 21:08:30.56 ID:7hC1UKUq.net] >>745 Perl https://paiza.io/projects/4DM4_8fx_EiOXO4D3aOV4A 普通ならダブルクォーテーション使いそうな箇所で qq() 使ってクォートしている理由は今Androidのタブレット使っててうまく入力出来なかったため。
768 名前:デフォルトの名無しさん mailto:sage [2018/08/17(金) 23:22:41.44 ID:eWaVkn5S.net] >>746 Python3で66バイト https://ideone.com/qWiKey
769 名前:デフォルトの名無しさん [2018/08/18(土) 02:50:37.57 ID:K3y6E3T8.net] 鈴木貫太郎 灘中 https://youtu.be/BnS7vMsVV2s 6桁の整数、ABCDEF の一番上の位のAを、 一の位へ移動した数、BCDEFA が、元の数の3倍になるとき、 この条件を満たす、元の数をすべて(2つ)答えよ ヒント。x = BCDEF とおいて考える 答え、142857, 285714
770 名前: mailto:sage [2018/08/18(土) 07:04:47.65 ID:/9y7PjMS.net] >>751 n/7 循環列問題ですか…
771 名前:デフォルトの名無しさん mailto:sage [2018/08/18(土) 15:32:13.56 ID:h7OdrOPI.net] >>745 Ruby 43 bytes #!ruby -pa $_='%.2f'%eval('1e4/'+$F*'**2*') >>751 3 * ABCDEF = BCDEFA ∧ A != 0 <=> 42857 * A = BCDEF ∧ A != 0 <=> 42857 * A = BCDEF ∧ A = 1, 2 <=> ABCDEF = 142857, 285714
772 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 01:16:27.70 ID:tX8wxXbT.net] >>751 C(ただの力技) https://ideone.com/MljBH1
773 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 01:18:54.67 ID:tX8wxXbT.net] お題: 1.BINGOカードを作る 2.BINGO抽選機を作る ここで使われるビンゴカードは5x5のマス目に1から75までの数字が ランダムに配置されており、数字が見つけやすいように左の列から B列(1〜15), I列(16〜30), N列(31〜45), G列(46〜60), O列(61〜75)が 配置された一般的によく使われるタイプ。 5x5のマスの中央はFree(すでに開いた状態)。 出力例:https://ideone.com/R6eADP (この形に従う必要はないです) 回答例(C言語): カード作成 https://ideone.com/aJBJ9v 抽選機 https://ideone.com/NuIRYm
774 名前:デフォルトの名無しさん [2018/08/19(日) 03:52:23.20 ID:FQWxbBlW.net] >>751 Kotlin https://paiza.io/projects/BFd9v2qeKaNcdssTQuj5Jw これも力業だな。ただループして調べているだけ。 尚、最上位桁が0の場合も含めると0も該当する値になる。
775 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 04:55:18.29 ID:FQWxbBlW.net] >>755 Kotlin カード作成 https://paiza.io/projects/YeZEal6Ke6l3goeaDt9JuQ 抽選機 https://paiza.io/projects/j-F4qhKHa_nNTCBEtFbk_w
776 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 02:30:06.13 ID:V9a8ZDkH.net] >>755 Perl カード生成 https://ideone.com/82oHLD 抽選機 https://ideone.com/ZICMOi
777 名前:UNIXプログラミング質問スレより mailto:sage [2018/08/21(火) 03:04:43.91 ID:34Jmks75.net] お題:【構造のあるテキストの処理】各項目の内容をそれぞれソートして元のテキストに埋め込め。 ====== 標準入力 ========== * Fruit apple banana orange banana * Animal dog cat penguin ====== 標準出力 ========== * Fruit apple banana orange * Animal cat dog penguin 条件:ソートには外部コマンドを用いること。
778 名前:758 mailto:sage [2018/08/21(火) 03:11:53.68 ID:34Jmks75.net] ソートに外部コマンドを使うのは、テキストの処理を取り替える拡張を想定しています。 例えば sort -u コマンドを tr '[a-z]' '[A-Z]' に置き換えて * Fruit APPLE のようにできるようにしたい。 UNIXプログラミング質問スレにて、 このような処理はシェルスクリプトには荷が重く Powershell や Ruby が向いている、みたいなことを伺いました。 ぜひ回答を参考にしたいです。
779 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 14:35:58.26 ID:2YpoFUMY.net] >>759 Ruby ext_cmd = 'sort -u' ary = $<.read.scan(/\*.*?\n(?:(?=\n)|\z)/m) str = ary.map.with_index do |s, i| temp_fname = "temp#{i}" File.write(temp_fname, s[/\n\K.*/m]) heading = s[/\A.*/] execed = `#{ext_cmd} #{temp_fname}` File.delete(temp_fname) [heading, execed] * $/ end puts str * $/
780 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 14:40:47.02 ID:2YpoFUMY.net] catを使うように修正 catのヒアドキュメントさえ使えれば一時ファイル作らなくて済むんだけど ext_cmd = 'tr a-z A-Z' ary = $<.read.scan(/\*.*?\n(?:(?=\n)|\z)/m) str = ary.map.with_index do |s, i| temp_fname = "temp#{i}" File.write(temp_fname, s[/\n\K.*/m]) heading = s[/\A.*/] execed = `cat #{temp_fname}|#{ext_cmd}` File.delete(temp_fname) [heading, execed] * $/ end puts str * $/
781 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 01:46:46.02 ID:wb9Zg9xS.net] >>759 Perl https://paiza.io/projects/8vYRslCsu29ZvqFXGkZC7A 項目の区切りは連続した2つの改行になってます。
782 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 01:56:27.69 ID:PmiUKg2L.net] >>759 zsh setopt rcquotes; sed -n '/^*/h; /^*/!{x;p;x;p;}' | paste - - \ | awk -F' ' -v OFS=' ' '$2 { print $1,$2 } ! $2 { printf "%c",0 }' \ | xargs -0 -n 1 -I@ -- zsh -c 'echo ''@'' | tee >(read -e | cut -f 1) | sed ''$d;'' | cut -f 2 | sort -u ;echo' null区切りでチャンク分け。構造がもっと複雑になるとこの方針では対応できない。
783 名前:デフォルトの名無しさん [2018/08/22(水) 03:09:32.13 ID:wb9Zg9xS.net] >>759 bash https://paiza.io/projects/Xq6KyZBO0dqynoJNUYhlEg
784 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 04:46:03.18 ID:h82tfzI1.net] 単純に、別々のファイルに、分割すれば良いのでは? * Fruit のファイル * Animal のファイル 各ファイルを、sort, unique する
785 名前:765 mailto:sage [2018/08/22(水) 05:05:39.72 ID:h82tfzI1.net] 一旦、別々のファイルにしたなら、PowerShell で、 cat .\test.txt | sort | gu gu は、Get-Unique のエイリアス。 漏れのPowerShell では、uniq のエイリアスは使えない
786 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 08:57:59.02 ID:AfGRGNs6.net] このスレでbashが多いのは何故?
787 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 09:06:48.94 ID:AfGRGNs6.net] 今見返したらそんなに多くなかった‥
788 名前:デフォルトの名無しさん [2018/08/22(水) 09:44:37.32 ID:zudhoHB+.net] >>768 Linuxのディストリビューションでは最初からインストールされてるのがよくあってある程度有名で、sh互換でshしか知らなくても書けるからではないかな。 それとWebの実行環境があるというのも理由かも。こういう所で公開するのには都合が良い。
789 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 12:27:54.30 ID:AfGRGNs6.net] >>770 そうなんですね! みんなの回答見てると正規表現や少ないコードや難しい表現でコーディングできてて関心します‥ 自分にはとても到達出来ない‥
790 名前:泣gの名無しさん mailto:sage [2018/08/22(水) 15:46:06.44 ID:PmiUKg2L.net] >>759 zsh setopt rcquotes; sed -E -e 's:^(\* .*):{ echo ''\1''; sort -u; echo } << *:' -e 's:^$:*:' | zsh xargsの区切り文字の辛さからは開放されたが、echo ''\1'' がイマイチだ。 なるほど、構造のあるデータはむしろファイル階層として表現したほうが自然か…
791 名前:デフォルトの名無しさん [2018/08/22(水) 23:06:19.28 ID:YlEU3d3x.net] >>759 Vim $ cat odai-pt11-758.input | vim -es '+:g /\%(^\*.*\n\)\@<=/,/[ \t\n]*\%(\n\*.*\|\%$\)/ !sort | tr a-z A-Z | nl' '+%p' '+:q!' /dev/stdin * Fruit 1 APPLE 2 BANANA 3 BANANA 4 ORANGE * Animal 1 CAT 2 DOG 3 PENGUIN $
792 名前:デフォルトの名無しさん mailto:sage [2018/08/22(水) 23:55:42.77 ID:h82tfzI1.net] 64ビットWindows10 なら、WSL で、Ubuntu を入れると、 bash, vim, Python は最初から入っている WindowsのExplorer では、BOMなしUTF-8 のファイルは検索できないから、 WSL でLinux側から、grep で検索している シェルスクリプトの欠点は、パイプラインがテキスト渡しになる。 オブジェクトの型が無くなって、すべて文字列になる 一方、PowerShell ではオブジェクト渡しだから、オブジェクトの構造・型が維持できる >>759-760 外部コマンドを切り替えるという抽象的な処理を、処理間にはさむのは難しい。 すべての処理の冒頭か最後で、一括でフィルターする方がバグらない
793 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 00:19:08.54 ID:FMBOl46f.net] >>774 なるほど… Powershellでの完全な回答例を見せていただけませんか? 標準入力からファイルに落として出力に吐くまで。オブジェクト渡しの雰囲気を感じたいです。
794 名前:765 mailto:sage [2018/08/23(木) 09:28:38.07 ID:qUZ5eK5Q.net] Set-PSDebug -Strict # 変数宣言を強制する $file = ( cat in.txt ) # 入力ファイル $dat_basenames = @() # 拡張子なしのファイル名の配列 foreach ( $line in $file ) { # 各行 if( $line.Length -eq 0 ){ continue } # 空行は処理しない if ( $line.Substring( 0, 1 ) -eq '*' ) { # 1文字目が、* なら $fname = $line.Substring( 2 ) $dat_basenames += $fname # 追加 $fname += '.dat' # 拡張子つき } else { Add-Content $fname $line # 追記 } } foreach ( $dbname in $dat_basenames ) { # 各 .dat ファイル $fname = $dbname + '.dat' # 拡張子つき $str = "* ${dbname}`r`n" $tmp = cat $fname | sort | gu # sort, unique $str += ( $tmp -join "`r`n" ) # 改行区切り echo $str } PowerShell で作った。 cd で、作業フォルダへ移動してから実行して 入力ファイル、in.txt から、各ファイルへ分割する。 分割後のファイル名を、Fruit.dat, Animal.dat として、各ファイルを処理した
795 名前:デフォルトの名無しさん [2018/08/24(金) 05:00:24.02 ID:QxK4Y8yu.net] 点が10個一直線に並んでおり、各点が他の点との右方向の距離をいくつか知っている時、最も左にある点を求めよ 最も左にある点が求められない時はあと何の情報があれば求められるのかを最低個数で列挙すること 例1 a,b,cの点がある。 a点はb点が30右にあることを知っている。 b点は何も知らない。 c点はb点が-40右にあることをしっている。 結果 最も左にある点はa点 例2 a,b,c,dの点がある。 a点はb点が30右にあることを知っている。 b点は何も知らない c点はd点が20右にあることを知っている。 d点は何も知らない。 結果 求められない。必要な情報は a点からc点までの距離
796 名前:デフォルトの名無しさん mailto:sage [2018/08/24(金) 05:58:44.74 ID:rBPgXHvS.net] >>777 実際に自分で書いてみて、求められたら解答例を提示できる?
797 名前:デフォルトの名無しさん mailto:sage [2018/08/24(金) 08:02:12.41 ID:ZkSPfVdV.net] 「知っている」の主語が点に見えるけど そうじゃないよね? なんでそういう文にしたの?
798 名前:デフォルトの名無しさん mailto:sage [2018/08/24(金) 10:33:50.94 ID:phPhGhWW.net] 連結リストを使って、出来上がったグラフが連結なら求められる つまり、出来上がったグラフが二つ三つそれ以上に分かれている非連結グラフになってると、距離は分からない ……直感的には多分こうだが、何かしらの証明は必要 「連結グラフだが距離が分からない」反例があればいい
799 名前:デフォルトの名無しさん mailto:sage [2018/08/24(金) 11:28:11.41 ID:qtSNV1ih.net] >>777 点が10個あるなら例1,2両方とも判断不能。どっちもあと最低7個必要 しかも直線がRなのかR∪∞∪-∞なのかで解が変わるから提示しろ あと出力はともかくデータの与えられ方くらい提示しろ
800 名前:765 mailto:sage [2018/08/24(金) 12:34:38.87 ID:ZgK6e0Tb.net] text = File.read 'in.txt' # 入力ファイル header = "" str_hash = { } result = [ ] def sort_string ( head, hash, res ) res.push head Hash[ hash.sort ].each_key { |key| res.push key } # sort hash.clear # 空にする end text.each_line do |line| # 各行 line.chomp! # 末尾の改行を削除する next if line.empty? # 空文字は処理しない if line.start_with? '*' # 先頭文字が、* なら sort_string( header, str_hash, result ) unless str_hash.empty? # 空でなければ header = line else str_hash[ line ] = true end end sort_string( header, str_hash, result ) puts result Ruby で作った。 PowerShell よりは断然、作りやすい。 ただ、sort_string( ) を2か所で呼ぶのが、ダサイ
801 名前:デフォルトの名無しさん [2018/08/25(土) 17:43:06.40 ID:nE7N9dPk.net] お題 将棋の初期状態の駒40枚を 利き筋に他の駒がないように配置する
802 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 20:05:04.08 ID:486ljwsa.net] 1000垓通り表示しろとでも?
803 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 20:45:34.12 ID:WT6GNhg9.net] 明記されてない条件は好きにしていいのがこのスレのルールですよ
804 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 20:55:52.54 ID:N/q1MSK+.net] お題を出す前に出題者は自分の解答を(解くことが可能かの確認も兼ね)作っておくのもルールだ 適切な入出力例や問題文にあるべき条件が抜けてるっていうのはそれをやってない証拠
805 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 22:57:36.63 ID:yggGxXGy.net] >>783 有名な作品がいくつかあるね 全て同じ方向を向いたヤツも >>784 全ての組み合わせを数えた人がいるの?
806 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 08:39:25.15 ID:8NHhsyIb.net] トランプの配置についてのアルゴリズムを考えてます。 トランプの横幅をX トランプの高さをYとし 並べるトランプは偶数枚 全てのトランプを配置した時の全体を、トランプ配置と呼ぶとして トランプ配置の横幅と縦幅の割合を、おおよそX:Yとしたい この場合、アルゴリズムはどう考えたらいいでしょうか?
807 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 09:35:40.65 ID:/JFPzkHn.net] ゴリ押しの総当たり 並べる枚数横にx縦にyが無尽蔵に大きくなれば比率に近づく 並べるトランプの上限が決まって無くて偶数枚だけが条件なら延々と並べる枚数を増やせばいい 一兆枚くらい並べれば比率はX/Yに近づく 1000000000億兆枚くらいのトランプを使えば横幅X高さYなんて充分に蟲出来るから全体の割合を調整するのは枚数が多ければ多いほどラク 10那由多ほど並べれば、本当にカードは点くらいなもので、縦横比率はx、yの枚数だけで決まる
808 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 09:52:42.49 ID:O9adGcKd.net] >>788 おおよそとかいまいちよくわからん 例を示して
809 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 09:59:10.89 ID:O9adGcKd.net] >>789 バカなの? > 並べるトランプの上限が決まって無くて偶数枚だけが条件 なら、縦横2枚ずつ(計4枚)並べればいいだけ
810 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 11:08:57.34 ID:MXsSoN4T.net] n枚をnX nYの長方形の対角線上に斜めにならべれば X:Yになるけど 問題あってる?
811 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 13:16:22.70 ID:HHP/3bjy.net] >>788 ┌─┐ │ ?│ └─┘ これを偶数枚並べて縦横比同じにするなら こうだよね ↓ ┌─┬─┐ │ ?│ ?│ ├─┼─┤ │ ?│ ?│ └─┴─┘ アルゴリズムもクソもないように思うのだが? 問題の書き方間違ってない?
812 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 13:22:25.82 ID:6zIp6UvA.net] さすがに、 枚数は外から与えられるのでは?
813 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 16:57:45.44 ID:2xrJOS4Z.net] 枚数nに対して p * q = n を満たす正の整数 p, q の内 |p - q| / |p^2 + q^2| が最小になる組み合わせを求めるだけでしょ?
814 名前: mailto:sage [2018/08/26(日) 23:44:29.53 ID:TLwXHnMN.net] https://mevius.5ch.net/test/read.cgi/tech/1480579110/981 に引き続いて、現に困ってしまった問題を出題 windows コマンドラインの xcopy コマンドを実装せよ コマンドラインから「xcopy パス1 パス2」 と入力すると パス1 以下にあるファイルをすべてパス2以下にコピーするようにせよ ディレクトリについては、再帰的にコピーせよ ・現実の xcopy コマンドには色々なオプションがあるが、それは実装しなくてもよい ・読み込み対象のファイルの属性については考慮しなくてよい、読み込めるファイルのみ所定のパスにコピーできればそれでよい ・その他、コピーに問題のある状態が発生したときには、標準エラー出力にエラー内容を表示すればそれでいい Windows Update の度にPCが激遅になるのに堪えかねて、C ドライブを SSD に換えることにしました。OS は再度インストールしなおすつもりです。 現在の C ドライブの内容は別途コピーしておいて、困ったときには参照できるようにしたいと思いました。 ところが、「xcopy c: x:/tmp」とすると、「メモリーが足りなくなった」といって途中で止まるのです…困りました…
815 名前: mailto:sage [2018/08/26(日) 23:57:13.93 ID:TLwXHnMN.net] >>796 条件を追加します ハードリンクやシンボリックリンクは考えなくともよい xcopy パス1 パス2 のパス2 がパス1 の下にある場合、実装がまずいと永遠にコピーし続ける困ったことになるが、それも考慮しなくてもよい (今回やりたいことは、「xcopy c: x:/tmp」であるので、これが問題なく動けばそれでよい…)
816 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 00:30:49.02 ID:FMLlc3nv.net] お金くれたら書くよ
817 名前: mailto:sage [2018/08/27(月) 00:37:15.85 ID:W4qvSHyH.net] >>798 ビットコインではいかがでしょう?
818 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 03:58:54.01 ID:EFFRlxLO.net] >>796 https://qiita.com/himrox/items/3dc7dec2c0e584a78e3d xcopy メモリで検索したらこんなページ出たがこれじゃあかんと?
819 名前:デフォルトの名無しさん [2018/08/27(月) 10:42:11.16 ID:ywsjsNTA.net] >>796 Windowsならエクスプローラ使ってただコピーするのでは何か不都合があるのか? まあ、お題としてそういうのなしで作れというのはアリだが、なんとなくWindowsの場合はエクスプローラが使っているのと同じライブラリ関数を一回呼び出すだけで終わってしまいそうな気がしてならない。
820 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 11:41:58.10 ID:ba8BcfX3.net] xcopy ではなく、robocopy を使えば?
821 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 21:06:25.46 ID:wliJqEsP.net] >>793 他の人も勘違いしてるけど、横縦比をx:yにする問題だよ。おおよそらしいけど。
822 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 21:25:27.41 ID:C1HpzEi0.net] >>803 問題を読んでみな
823 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 21:34:12.17 ID:wliJqEsP.net] 失礼しました…
824 名前:デフォルトの名無しさん [2018/08/27(月) 21:37:25.51 ID:l2rfNjjd.net] >>803 トランプの横幅がYで高さがXでしょ? で、偶数枚並べてX:Yにするんでしょ? 4枚でなるじゃん。およそどころかぴったりX:Yに。
825 名前:デフォルトの名無しさん [2018/08/27(月) 21:41:44.66 ID:l2rfNjjd.net] ごめん。逆か。まあしかしわかるよね。
826 名前: mailto:sage [2018/08/28(火) 00:09:17.09 ID:mZeP8xuo.net] >>796-797 https://mevius.5ch.net/test/read.cgi/tech/1434079972/52 >>800 有用な情報ありがとうございます なるほど、256バイト以上のパスは受け付けない、ですか… MSDN https://msdn.microsoft.com/ja-jp/library/cc429198.aspx なんかをみると、「この関数の Unicode 版を呼び出し、パスの前に "\\?\" という接頭辞を追加してください。」と書いてありますね でも、C++ でユニコードバージョンに対応させるってどうするのだろう?#define UNICODE だけではダメみたいだし…
827 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 00:22:03.08 ID:LPHHle1d.net] >>808 https://qiita.com/jugemjugemu/items/4db1dfd3d2737d3979df CreateFileW
828 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 00:26:01.26 ID:04IHxsB7.net] >>808 そろそろ適切なスレに移動したら?
829 名前: mailto:sage [2018/08/28(火) 00:29:32.20 ID:mZeP8xuo.net] >>810 >適切なスレ って、あなたはどこを想定しているのですか?
830 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 02:44:52.27 ID:Z7hOIgIF.net] スレタイも読めないのかこいつは・・・
831 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 10:27:46.88 ID:QGrjhPlD.net] >>806 流石に与えられた枚数は全て使うだろ アスペかよw
832 名前:デフォルトの名無しさん [2018/08/28(火) 16:31:53.27 ID:C1AWmFJx.net] >>813 与えられると何処に書いてある?
833 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 18:47:35.73 ID:4ROMapnq.net] とりあえず>>788 はちゃんと問題書くか取り下げるかしろよ…
834 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 22:17:12.42 ID:QGrjhPlD.net] >>814 近似値も想定している文意から汲めないならアスペ
835 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 22:36:38.28 ID:Gymzh0gE.net] >>816 とりあえずお前の解釈を書いてみな
836 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 23:00:50.43 ID:QGrjhPlD.net] >>817 ぱっと見て カードの数nとカードの縦と横の長さx, yが与えられたときに 総てのカードを並べて作った矩形の縦と横の長さをX, Yとして |X/Y - x/y|が最小になるような(X, Y)を求める問題かと思ったんだけど というか>>788 は言葉足らず過ぎるしアスペ云々は言い過ぎだったわすまん
837 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 23:15:02.28 ID:Gymzh0gE.net] n枚を矩形になるように並べる なんてことは書いてないけど あと 『|X/Y - x/y| が最小』 は数学的センスが無い x,yを入れ替えても値が変わらない誤差の定義にしたい
838 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 00:49:59.45 ID:e0sa1Xvi.net] >>819 矩形じゃないと縦幅と横幅が定義できないからそ
839 名前:アはいいんでない? >『|X/Y - x/y| が最小』は数学的センスが無い はその通りだね m := min{x, y}, M := max{x, y}, λ_x = X, λ_y = Y として として |m/M - λ_m/λ_M|の最小値を求めるべきだね [] [ここ壊れてます]
840 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 08:01:13.69 ID:cDvJjkNL.net] >>820 前半 どんな形に並べても縦と横の方向が決まっていれば縦幅と横幅はある >>820 後半 さらにセンスが無い
841 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 08:06:49.08 ID:e0sa1Xvi.net] >>821 『どんな形に並べても縦と横の方向が決まっていれば縦幅と横幅はある』 これは偽 少しは検討してから書き込んだらどうなんだ 後半が理解できないなら「テンソル」で調べてね
842 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 08:18:18.70 ID:cDvJjkNL.net] 横方向をx軸、縦方向をy軸としたx, y平面上に トランプを並べるとする 有限サイズ(>0)のトランプを有限枚(>0)並べるので トランプは有界で非空 xの上限 - xの下限 = 横幅 yの上限 - yの下限 = 縦幅
843 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 08:21:39.47 ID:cDvJjkNL.net] >>820 後半 さらにセンスが無い
844 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 08:41:09.91 ID:F6DjsKzv.net] オレオレ解釈でマウント取合いかよ w
845 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 09:24:22.25 ID:e0sa1Xvi.net] >>823 勝手な距離空間持ち出してこないでくれませんかねぇ
846 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 12:43:01.20 ID:r/8waa6p.net] 勝手な距離空間www 後に引けなくなってさらに痛くなる
847 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 17:30:59.79 ID:e0sa1Xvi.net] はいはい。頭いいね坊や 今度からは算数をきちんと勉強してからレスしてね
848 名前:デフォルトの名無しさん [2018/08/29(水) 19:00:11.58 ID:bZ2D0xRL.net] >>816 お前は勝手に汲み過ぎ
849 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 19:03:26.04 ID:e0sa1Xvi.net] >>829 はいはいよかったですねー
850 名前:デフォルトの名無しさん [2018/08/29(水) 19:10:03.95 ID:bZ2D0xRL.net] >>830 君が元の問題を書いた人か?
851 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 19:24:13.92 ID:5cagDv75.net] お題:標準入力から(で始まり)で終わる顔文字が与えられる。この顔文字を太らせて標準出力に出力しなさい。
852 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 19:40:07.15 ID:e0sa1Xvi.net] >>831 ちげーよ、出題者ならまともな条件追加してるわw 自分では何も提示しないのに難癖つけてくるアホがうざったいだけ
853 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 19:41:27.76 ID:5CKWgBXh.net] テンソル君頑張ってるね
854 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 19:53:04.28 ID:5CKWgBXh.net] トランプを並べる問題で 非ユークリッド空間を前提にしちゃう 頭がおかしい人
855 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 20:01:44.71 ID:F6DjsKzv.net] 頓珍漢なオレオレ解釈提示してドヤってる方がウザいわ
856 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 20:11:16.34 ID:V4Xw96gq.net] >>788 並べるのが矩形に限らないのであれば >>792 のとおり任意の枚数で可能 矩形に並べるとして 枚数が与えられないなら>>793 のとおり4枚で可能 与えられるなら>>795 のとおり 与えられた自然数を最も僅差の2つの自然数の積で表す問題と同値 ただこの場合、問題文の不備を不問にしても >並べるトランプは偶数枚 って条件がなぜ必要になるのか疑問が残るが… いずれにしても問題としては終わってるので これ以上長引かせるのは不毛
857 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 22:16:45.79 ID:Nirpjn+4.net] × 問題としては終わってる ○ 人間としては終わってる
858 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 22:32:57.89 ID:cDvJjkNL.net] どこからも 矩形に隙間なく並べる とは読めないのだけど
859 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 22:47:22.89 ID:AXEWk4o3.net] 書かれていない条件は勝手に解釈すればいい その条件の問題を解くのが楽しいと感じるならその条件で回答すればいいだけ グダグダと問題自体を統一する必要は無い
860 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 22:49:31.68 ID:cDvJjkNL.net] さすがに非ユークリッド空間は無いだろ
861 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 23:06:35.04 ID:rr2ZC/zS.net] 偶数枚並べるようなゲームを想定してるんでしょ
862 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 23:10:01.39 ID:cDvJjkNL.net] >>840 「問題を解く」という言葉がふさわしいような条件が見つからないから困っているわけで
863 名前:デフォルトの名無しさん mailto:sage [2018/08/30(木) 00:01:13.99 ID:s4UfRJo7.net] 面白みが無いならスルーでいいだろ
864 名前:デフォルトの名無しさん [2018/08/30(木) 01:37:09.37 ID:qgZ9UxCP.net] >>832 Kotlin https://paiza.io/projects/R255MQByNDBUFUfADcsP5w スペース入れただけなんだけど、これでいいのかな?
865 名前:デフォルトの名無しさん mailto:sage [2018/08/30(木) 19:45:18.01 ID:PhGGZV18.net] >>845 OKです
866 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 20:49:23.29 ID:QC9x0InA.net] >>248 java pastebin,com/7cnjtkNG
867 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 21:01:15.01 ID:QC9x0InA.net] >>847 変数宣言を増やせばいくらでも行けるけどこれが限界かも リフレクションはやっぱりクソだな
868 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 21:58:19.14 ID:UbfaileO.net] >>248 Squeak Smalltalk, インスタンス変数で254個まで | obj n limit | obj := Object new assureUniClass. n := 0. [[obj addInstanceVarNamed: 'i', (n := n + 1) asString withValue: n] repeat] ifError: []. limit := obj class instSize. "=> 254 " obj instanceVariableValues asArray = (1 to: limit) asArray "=> true "
869 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 23:18:37.32 ID:hdwU5T2H.net] 自然数nに対して 3Σ_{k = 0}^{2n}(-2)^k / (2n + 1)^2 が整数となるnを総て求めよ
870 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 10:36:15.07 ID:oWRhkMQP.net] 数学厨は帰れ
871 名前:デフォルトの名無しさん [2018/09/01(土) 10:57:14.89 ID:Wx/QBEc1.net] >>850 数式というか文字が何を表しているのか分からない。最初の { の直前の _ は何を意味するんだ? 更に { } で括った部分と ( ) で括った部分の違いは? まあわかったとしても解く気は起きないかも知れないので面倒なら解説しなくても良い。
872 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 11:24:51.31 ID:DlN6jaxu.net] >>850 じゃないけど _はΣの下 ^はΣの上 テキスト限定でのよくある表記
873 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 12:14:11.54 ID:9UhZQst+.net] 数学板でお題スレ立てようかと思ったらすでに似たようなスレがあった 面白い問題おしえて〜な 27問目 https://rio2016.5ch.net/test/read.cgi/math/1532793672/
874 名前: mailto:sage [2018/09/02(日) 01:44:20.01 ID:oSO4LvdH.net] >>796-797 >>808 https://mevius.5ch.net/test/read.cgi/tech/1434079972/53
875 名前:デフォルトの名無しさん [2018/09/02(日) 04:36:43.72 ID:4Jf6YH6e.net] >>853 そういう意味だとすると>>850 はこうかな。 Kotlin https://paiza.io/projects/3ObT5j3XNNkuKqDXdk6E7g しかし、本当にこれで全てなのかは不明。 Double 型で計算できる所まで計算して結果が整数の時の n を出してるだけなので。
876 名前:デフォルトの名無しさん mailto:sage [2018/09/02(日) 10:05:17.48 ID:jaQJTA9z.net] >>850 (1 + 2 ^ (2n + 1)) / (2n + 1) ^ 2 に変形できる 答えは多分n=1だけだと思う python3で時間いっぱいまで総当たり https://ideone.com/GGijCL
877 名前:デフォルトの名無しさん mailto:sage [2018/09/02(日) 11:43:51.21 ID:/9nCrt4M.net] >>850 は数学オリンピックのマスターデーモンだな 答えはn=0, 1のみ
878 名前:デフォルトの名無しさん [2018/09/02(日) 16:00:22.41 ID:4Jf6YH6e.net] ごめん。>>856 は3倍するのを忘れていた。
879 名前:デフォルトの名無しさん [2018/09/02(日) 17:40:51.50 ID:4Jf6YH6e.net] >>856 Forkして3倍にするの入れてみたけど大差ない・・・ https://paiza.io/projects/IZQxz8kWTqR-Fw04EN9o1w
880 名前:デフォルトの名無しさん [2018/09/02(日) 17:46:26.05 ID:4Jf6YH6e.net] >>858 あれ?そうなの? じゃあプログラム何か間違ってん
881 名前:のかなあ? [] [ここ壊れてます]
882 名前:デフォルトの名無しさん mailto:sage [2018/09/02(日) 18:31:32.88 ID:jaQJTA9z.net] >>861 double型の精度の問題 計算結果は指数関数が支配しているからnが大きくなると有効桁数が足りなくなる
883 名前:デフォルトの名無しさん [2018/09/02(日) 18:47:50.05 ID:4Jf6YH6e.net] >>862 なるほど。とすると32以上はもうダメな値ってことだな。 かといってBigDecimalとか使って延々と計算しても意味ないな。 数学的に答え出てるし。
884 名前:デフォルトの名無しさん [2018/09/05(水) 09:52:56.23 ID:lHAOj/Nm.net] プログラミングならここからだな https://site.moshimo.com/rhino/0002.html
885 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 22:16:42.52 ID:vC/rF1cv.net] 質問スレからパクってきた配列の易しい問題 質問者は他レス見るにプログラミング自体経験なさそうだが 893 デフォルトの名無しさん (アウアウカー Sa8f-aTuM [182.250.241.36])[sage] 2018/09/08(土) 21:43:04.65 ID:6/Xg/XCUa どこで質問するべき内容なのか迷っていたのですが調べているとプログラミング関係のようなのでここで質問させていただきます 例えば 1〜50までの数字の中で数字を10個ランダムで選ぶ乱数ツールは検索するとすぐにでてきます しかし、自分が求めているものは2つあり @ 1〜50までの数字の中で2.16.22.23.42.50を除いて10個ランダムで選ぶことができるもの A 1.2.5.6.16.18.20.21.23.28.30.33.39.4047.49.50の選択した数字中から10個ランダムで選ぶことができるもの @とAで挙げた数字は適当ですが場合によっては@で除外した数字やAの選択した数字は変えたいです このような場合自分でプログラミングしないといけないのでしょうか?
886 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 22:39:44.98 ID:CrgXDO1K.net] 百錬の覇王と召喚少女の奴隷魔術
887 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 22:41:19.06 ID:CrgXDO1K.net] >>866 誤爆
888 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 22:56:28.52 ID:DvgxKi+t.net] >>865 Squeak/Pharo Smalltalk "@" ((1 to: 50) copyWithoutAll: #(2 16 22 23 42.50)) shuffle first: 10. "A" #(1 2 5 6 16 18 20 21 23 28 30 33 39 40 47 49 50) shuffle first: 10.
889 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 10:46:50.62 ID:yaYW83OX.net] >>865 Ruby ([*1..50] - [2, 16, 22, 23, 42, 50]).sample(10) [1, 2, 5, 6, 16, 18, 20, 21, 23, 28, 30, 33, 39, 40, 47, 49, 50].sample(10) というか1~44までの数字の中で数字を10個ランダムで選ぶ乱数ツール使えばいいだけなのに質問者が謎
890 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 10:51:12.28 ID:XJaXrhZ0.net] ロト6を当てたい一般人だろ そんくらいは察してやれよ
891 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 11:22:22.79 ID:VWkPHcyt.net] >>869 >>870 自演
892 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 11:49:05.41 ID:na1duSUN.net] >>869 アスペ
893 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 12:05:30.79 ID:yaYW83OX.net] お、質問者様の登場か?w
894 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 13:55:51.77 ID:na1duSUN.net] >>873 糖質かよ
895 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 14:04:26.80 ID:iiqq7TK9.net] 発達障害イライラでワロタ
896 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 14:05:05.91 ID:juRJVYHI.net] くこけ?😗
897 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 14:06:54.57 ID:MtkyzY0F.net] とうふさんはすこか??😍
898 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 14:08:03.90 ID:uzOuEcd3.net] 自演死ね
899 名前:デフォルトの名無しさん [2018/09/09(日) 14:08:44.70 ID:x2owZh/r.net] イ '、 / ハ ', i ハ ノ | i、 | r‐-、 ,...,, | リ从-ノ ノリノノ-)リ、 l :i! i! |: : i!| | リ ‐=・-; -・=‐ Y l イェ〜イ〜プログラミング好きなオタクみってるう?なんJ民デース! ! i!. | ;| . .i从 | ` ̄,:  ̄´ |从! i! ヽ | | i リ,i ゚人,,__,,人:. | リ} ゝ `-! :|! . ハ: i. , __ij..__ 、: 'iノ´ r'"~`ヾ、 i! 彡、 `Zエlフ'´ /ミ ,.ゝ、 r'""`ヽ、i! 彡イ\ ` ̄´ / ト ミ !、 `ヽ、ー、 ヽ _/ ∧ > ―< ∧ \ | \ i:" ) ─ ' ¨: : : : | \ / |: : : \
900 名前:デフォルトの名無しさん [2018/09/09(日) 14:09:07.67 ID:0efZNutP.net] くこは罠🙅♀
901 名前:ニャース [2018/09/09(日) 14:09:35.76 ID:AYD3VQs9.net] ここでしたか
902 名前:デフォルトの名無しさん [2018/09/09(日) 14:09:50.68 ID:+yUoETM4.net] グレイシアちゃんのふたなりチンポ
903 名前:デフォルトの名無しさん [2018/09/09(日) 14:10:48.73 ID:m5NrVMRk.net] 【怒報】ワイ 専門板にて1人からアスペやら糖質認定を受ける【援護求む】 swallow.5ch.net/test/read.cgi/livejupiter/1536469396/
904 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 14:11:31.78 ID:lnlyvEPx.net] なんJから来たンゴwwwwwwww
905 名前:デフォルトの名無しさん [2018/09/09(日) 14:12:42.07 ID:V2BhMRg2.net] なんjの絆舐めるな!
906 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 14:14:26.66 ID:JLLEIooV.net] 試合中やぞ
907 名前:デフォルトの名無しさん [2018/09/09(日) 14:15:18.48 ID:KoiRlOSP.net] なんだこのスレ😨
908 名前:デフォルトの名無しさん [2018/09/09(日) 14:15:42.19 ID:1Rk7pi2L.net] アスペの>>869 が居ると聞いて
909 名前:デフォルトの名無しさん [2018/09/09(日) 14:16:23.81 ID:7fkrmWDW.net] なんj書き込んだキッズ 今度から一人で解決しようね🤗
910 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 14:16:27.10 ID:KW6FAnPg.net] >>872 >>874 実はこいつがなんJでスレ建てたんやで >>869 は被害者や
911 名前:デフォルトの名無しさん [2018/09/09(日) 14:17:33.96 ID:xWgdA58m.net] はい
912 名前:デフォルトの名無しさん [2018/09/09(日) 14:18:16.63 ID:UPePJlkV.net] ここになんjに助けを求めたガイジはいませんかー?🙋 負け犬は何処かな🤔
913 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 14:18:35.22 ID:mhobrALw.net] くこけ?
914 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 14:19:05.04 ID:SFaJ2QTJ.net] なんJにスレ立ててまでするチンパンジーが見れると聞いて来ました
915 名前:デフォルトの名無しさん [2018/09/09(日) 14:20:44.64 ID:UPePJlkV.net] 恥ずかしがらずに出てこいよ😘 ガイジくん😁 それとも顔真っ赤で出てこれないかな?🤔
916 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 14:24:20.57 ID:iiqq7TK9.net] >>895 負け犬はお前定期
917 名前:デフォルトの名無しさん [2018/09/09(日) 14:26:08.47 ID:UPePJlkV.net] >>896 キターーー😁 本物ですわ😏
918 名前:デフォルトの名無しさん [2018/09/09(日) 14:26:42.15 ID:7fkrmWDW.net] >>896 スレ立てガイジ本人いて草
919 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 15:05:27.62 ID:iMK3cxKN.net] 図星か
920 名前:デフォルトの名無しさん [2018/09/09(日) 15:07:21.91 ID:xWgdA58m.net] >>896 大丈夫か?
921 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 15:57:06.11 ID:yaYW83OX.net] 意味わからないんだがw ハンJでしょうもないプログラミングの質問した人がいたってことか?
922 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 15:58:03.09 ID:yaYW83OX.net] ハンJじゃないなんJ
923 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 16:03:08.91 ID:SFaJ2QTJ.net] また日本語怪しいじゃん君なんJでもまともに喋れなかったよね?
924 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 16:07:58.48 ID:yaYW83OX.net] >>872 が建てたのはこれかw tomcat.2ch.s c/test/read.cgi/livejupiter/1536469396/
925 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 16:20:59.20 ID:yaYW83OX.net] で元のレスがこれか https://mevius.5ch.net/test/read.cgi/tech/1526606537/
926 名前:893 [] [ここ壊れてます]
927 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:03:05.57 ID:na1duSUN.net] >>904 立ててないぞ 人になすりつけるな
928 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:12:29.21 ID:3HCWUffr.net] >>901 でなんjをハンjと打ち間違える時点で通報騒動知ってるやつやん >>873 で自分に都合の悪いレスつくと本人認定するような奴だしなんでもかんでも人のせいにしてきたんだろうな
929 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:20:33.91 ID:yaYW83OX.net] あ、これ俺に成りすまして他板でクソスレ立てて人をこっちに呼び込んでんのね 今理解したわ このスレの住人なら>>871-872 程度のことで他の板にスレ立てるわけないってわかってもらえると思うけど 荒れると嫌なんでしばらくROMりますわ
930 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:27:07.85 ID:3HCWUffr.net] >>908 今理解したわとか嘘だろ >>904 で>>872 が建てたと認定してる時点でお前はとっくにわかってただろ
931 名前:デフォルトの名無しさん mailto:sage [2018/09/09(日) 17:44:29.85 ID:C8FWMbW9.net] 単発ばっかだし質問を小馬鹿にされた質問者が自演で荒らしてんだろ いちいち反応すんなkz
932 名前:デフォルトの名無しさん mailto:sage [2018/09/10(月) 21:43:55.78 ID:YbX1NAV1.net] >>910 kzとかいつの時代やねん お前はミスターアンモナイトかwwwww
933 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 11:59:19.26 ID:bqaIVrpu.net] a-zからなる単語のペアが与えられるのでそれぞれの元を辞書順にソートした上で同値類を求めなさい なお同一のペアが2度以上入力されることはなく、また出力時の各行は順不同とする 例 -*- input -*- goose pigeon cat dog eel goldfish goose duck horse dog cod eel dove pigeon dog rhino goldfish squid goose lark -*- output -*- dove duck goose lark pigeon cat dog horse rhino cod eel goldfish squid
934 名前:デフォルトの名無しさん [2018/09/11(火) 15:17:49.53 ID:RXZvWAlK.net] >>912 同値類とは?
935 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 17:41:21.76 ID:bqaIVrpu.net] >>913 入力のペア"A B"は A = B を表しているものとして等しいもの同士をグループにまとめて出力してねという問題 正確には「同値類に分割せよ」か「商集合を出力せよ」と言うべきだったか 例えば S = {A, B, C, D, E, F, G} に対して A = B, C = A, D = F, E = G ……(☆) が成り立っているとすると S の全ての要素は A = B = C と D = F と E = G っていう同じもの同士に分類できるよね で (☆) の下で A の S における同値類とは {A, B, C} のことであり、 (☆) の下での S の商集合とは {{A, B, C}, {D, F}, {E, G}} のことを言うよ 問題を解く上で数学的な要素は無いから数学の言葉を使わないで出題すべきだった
936 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 18:43:20.13 ID:UwY6cfla.net] >>912 Squeak Smalltalk | input groups | input := 'goose pigeon cat dog eel goldfish goose duck horse dog cod eel dove pigeon dog rhino goldfish squid goose lark'. groups := OrderedCollection new. input linesDo: [:line | | pair | pair := line subStrings. (groups detect: [:group | group includesAnyOf: pair] ifNone: [groups add: Set new]) addAll: pair ]. (groups collect: [:each | each asSortedCollection joinSeparatedBy: ' ']) asStringWithCr "=> 'dove duck goose lark pigeon cat dog horse rhino cod eel goldfish squid' "
937 名前:デフォルトの名無しさん [2018/09/11(火) 18:58:42.97 ID:RXZvWAlK.net] >>914 それは良いとしても>>912 の問題における同値類とはなんなのか? 例として出されているのは入力が動物の名前のようで、出力は重複をなくした上で大まかな種類ごとに分類されているようではある。 しかしこのそれぞれの分類は一体いかなる基準によって同じと判別したのか? もしこれが単語の意味、およびそれの分類(動物なら四つ足だとか哺乳類だとか)によって分けなければならないとすると、単語の意味やその分類がプログラムの側でわかっていなければならない。 しかも入力にはどんな単語が来るかわからないというのであれば辞書並みの単語数に関してそれを保持していなければまともに分類できない。
938 名前:デフォルトの名無しさん [2018/09/11(火) 19:06:31.95 ID:RXZvWAlK.net] >>915 え?それでいいの?ペアになってるなつが同じ種類ってこと?
939 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 19:55:35.45 ID:zuM/oofP.net] >>916-917 >入力のペア"A B"は A = B を表している
940 名前:デフォルトの名無しさん [2018/09/11(火) 21:04:39.05 ID:RXZvWAlK.net] なるほど。また最初の問題が不備で無限の回答が出るか一つも回答が出ないパターンだったと。
941 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 21:40:27.09 ID:zuM/oofP.net] 見た感じ問題に不備はない まだ何か勘違いしてるのでは
942 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 22:23:42.34 ID:O7hfz4dz.net] >>912 Squeak Smalltalk (>>915 は入力順等によっては機能しないので差し替え) | fn input | fn := [:str | | groups | groups := OrderedCollection new. str linesDo: [:line | | pair found | pair := line subStrings asSet. found := (groups select: [:group | group includesAnyOf: pair]) ifEmpty: [{groups add: Set new}]. groups removeAll: found; add: (found inject: pair into: #,) ]. (groups collect: [:group | group asSortedCollection joinSeparatedBy: ' ']) asStringWithCr ]. input := 'goose pigeon 以下略'. fn value: input. "=> 'cat dog horse rhino cod eel goldfish squid dove duck goose lark pigeon' " fn value: input, String cr, 'squid lark'. "=> 'cat dog horse rhino cod dove duck eel goldfish goose lark pigeon squid' "
943 名前:デフォルトの名無しさん [2018/09/11(火) 22:32:02.08 ID:srQbLx59.net] >>918 「それぞれの元を辞書順にソートした上で」 これは間違いってことね。
944 名前:デフォルトの名無しさん mailto:sage [2018/09/11(火) 22:42:05.94 ID:6IJHkLyh.net] cat dog horse rhinoとかってアルファベット順に出力するよう要請してるのだから少なくともそのフレーズに間違いはないよ
945 名前:デフォルトの名無しさん mailto:sage [2018/09/12(水) 08:18:25.07 ID:FM7FP8m6.net] >>912 「cat cat」とか重複するペアとか任意のペアが来てもオッケーなバージョン def qs(er) h = Hash.new Float::INFINITY erc = 0 er.each do |r| min = r.map{|e| h[e]}.min ern = min == Float::INFINITY ? erc += 1 : min r.each{|e| h[e] = ern} end h.group_by(&:last).values.map{|s| s.map(&:first).sort} end er = $<.readlines.map &:split puts qs(er).map{|a| a * ' '} * $/ #=> dove duck goose lark pigeon cat dog horse rhino cod eel goldfish squid
946 名前:デフォルトの名無しさん mailto:sage [2018/09/12(水) 10:35:33.91 ID:0dikQX95.net] >>924 その実装だと仮に squid lark のペアが末尾に追加されたとき すでにある goldfish squid がキャンセルされちゃうけど? https://ideone.com/sbA9P5
947 名前:デフォルトの名無しさん mailto:sage [2018/09/12(水) 11:17:32.60 ID:FM7FP8m6.net] >>925 指摘ありがと 確かにまずかった https://ideone.com/gbKlMH
948 名前:デフォルトの名無しさん [2018/09/13(木) 02:06:53.72 ID:Pm51LGwI.net] >>912 Kotlin https://paiza.io/projects/QoBZQmhMgIbx2IHLgWC07A
949 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 08:17:03.84 ID:EC7Fu/Zv.net] >>927 よーわからんがペアの両方が既知の場合のマージ処理が抜けてない? A B C D A C の場合とか
950 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 10:08:33.08 ID:HHLUVU7a.net] >>912 の例をマージが必要になる順とかにしといてくれてれば…
951 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 10:14:48.87 ID:q0HzNtar.net] >>912 perl %h; while(<>){ chomp; ($f, $s) = split/
952 名前: /;#first, second undef $keyf; undef $keys; for $k (keys %h){ $keyf = $k if grep /$f/, @{$h{$k}}; $keys = $k if grep /$s/, @{$h{$k}}; } if(!defined $keyf and !defined $keys){ push @{$h{$.}}, $f; push @{$h{$.}}, $s; }else{ push @{$h{$keys}}, $f unless defined $keyf; push @{$h{$keyf}}, $s unless defined $keys; } } map{print join " ", (sort{$a cmp $b}@{$h{$_}}), "\n"}keys %h; [] [ここ壊れてます]
953 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 11:37:05.45 ID:HHLUVU7a.net] >>930 これもマージ処理>>928 が抜けてない? https://ideone.com/NAvn2f
954 名前:デフォルトの名無しさん [2018/09/13(木) 12:31:55.31 ID:cU5S5NHG.net] >>928 両方が既に入ってるなら何もする必要ないと思うのだが。
955 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 13:14:56.32 ID:EC7Fu/Zv.net] >>932 https://paiza.io/projects/YTmp_QaHw0hpHqxX4cBGKw 入力 A B C D A C 出力 A B C C D 期待される出力 A B C D じゃろ?
956 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 14:17:54.21 ID:q0HzNtar.net] >>912 >>933 %h; while(<>){ chomp; ($f, $s) = split / /;#first, second undef $keyf; undef $keys; for $k (keys %h){ $keyf = $k if grep /$f/, @{$h{$k}}; $keys = $k if grep /$s/, @{$h{$k}}; } if(!defined $keyf and !defined $keys){ push @{$h{$.}}, $f; push @{$h{$.}}, $s; }elsif( (defined $keyf and defined $keys) and !($f eq $s) ){#merge push @{$h{$keys}}, @{$h{$keyf}}; delete $h{$keyf}; }else{ push @{$h{$keys}}, $f unless defined $keyf; push @{$h{$keyf}}, $s unless defined $keys; } } map{print join " ", (sort{$a cmp $b} @{$h{$_}}), "\n"} sort{$a <=> $b} keys %h;
957 名前:デフォルトの名無しさん [2018/09/13(木) 20:39:52.56 ID:0RheZyur.net] >>933 あー。なるほど。そういうことか。 また考えよう。
958 名前:デフォルトの名無しさん [2018/09/14(金) 03:38:24.35 ID:SYmkUqRw.net] >>928 >>927 は修正した。(URL同じ)
959 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 04:53:58.08 ID:Z6RVr7Qr.net] >>936 差し支えなければ修正前のコードも別URLで再掲載してもらえますか? あるいは公開バージョンの履歴や差分を参照する機能がpaoza.ioにあったら教えてください くしくもマージを考慮「しない版」と「する版」が出揃ったのでどういう修正で対処したか調べると それぞれの言語の(あるいはアルゴリズムの)特徴が際立って面白いのではないかなぁとふと思ったので
960 名前:デフォルトの名無しさん [2018/09/14(金) 08:32:54.25 ID:SYmkUqRw.net] >>937 すまん。前の版はもうない。paiza.ioはそういう機能はない。 思い出して時間があったらなんとかする。
961 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 09:31:32.78 ID:PJYnZf+K.net] >>938 あーいやそこまでしなくても結構です。ありがとうございます!
962 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 12:57:38.55 ID:q6Zv3uN7.net] わざわざ書こうとしてくれるなんて良いやつだな
963 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 18:45:13.33 ID:9KWktx64.net] >>937 >>933 が>>927 の古いコードのコピペ
964 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 20:03:21.13 ID:Z6RVr7Qr.net] >>941 おおありがとう!
965 名前:デフォルトの名無しさん [2018/09/14(金) 20:39:39.94 ID:cNoNQyuv.net] >>941 おお。ナイス。
966 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 20:50:46.38 ID:SK0cQL9c.net] 結構みんな人の書いたコード読んでるんだな いい意味でびっくり
967 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 23:34:38.18 ID:vS2kVSOd.net] 逆になんで読まないの?
968 名前:デフォルトの名無しさん [2018/09/15(土) 00:06:11.66 ID:/ZWEPMk/.net] >>912 Rubyで。 https://ideone.com/MEO7XO
969 名前:デフォルトの名無しさん [2018/09/15(土) 08:52:18.54 ID:/ZWEPMk/.net] >>946 訂正。Rubyで。 https://ideone.com/er8XUC
970 名前:デフォルトの名無しさん [2018/09/15(土) 18:55:39.79 ID:Q0ygbCVz.net] >>947 とは別の戦略。 Rubyで。 https://ideone.com/osABKT
971 名前:デフォルトの名無しさん mailto:sage [2018/09/15(土) 19:09:51.94 ID:1YQGrLsT.net] >>948 ソート忘れてんよ
972 名前:デフォルトの名無しさん mailto:sage [2018/09/16(日) 00:15:22.99 ID:+Pq0rgCm.net] >>949 付けといて。
973 名前:デフォルトの名無しさん [2018/09/16(日) 08:13:10.07 ID:qJ8HI8bW.net] >>912 Rubyで。ソート、コメント付き。 https://ideone.com/9RyjEF
974 名前:デフォルトの名無しさん [2018/09/18(火) 20:26:30.74 ID:iTEamDZZ.net] https://www.rco.recruit.co.jp/career/engineer/entry/ ↑ この問題どうですか? 自分でも書いてみたのですが合ってるかちょっと分かりません C# https://ideone.com/KNpwLL
975 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 20:38:45.88 ID:qJ7HW+J2.net] こういうのって答え公開してもいいんか?
976 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 20:48:39.65 ID:sp2kbyYS.net] 企業がやってるのって大体駄目だったと思うで
977 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 20:49:39.59 ID:Iw2LHuqq.net] >>953 あくまでも過去の出題例、だからいいんじゃないですか?
978 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 00:29:21.73 ID:gYIP5Vsu.net] アウトかセーフか分からないときは答え公開しないほうが無難
979 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 01:18:48.14 ID:pHq1DkBS.net] >>956 アウトになる条件は、「エントリー後メールにて送付されるコーディング試験問題は、当社への応募以外の目的で無断使用しない」…@ だが、>>952 のリンクの問題は「エントリー後メールにて送付されるコーディング試験問題」ではないから@に反しない…A さらに、無条件に誰でも見ることのできる問題であること…B Aよりアウトではないと断定できるし、BがAの結論を補強する 結論として、>>952 のリンクの問題を公開しても問題ない >>956 「アウトかセーフかわからない」という結論にどういう道筋で到達したの?
980 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 19:43:34.67 ID:KaiQ4rsk.net] お題:コンプリートパネル(出展:高校生クイズ2018) 5×5のパネルが与えられる。各パネルは赤色か白色である。 各パネルに侵入すると、そのパネルの色が赤なら白、白なら赤に変化する。 最初のステップは、場外(左下のパネルの左隣)から左下のパネルへ侵入することである。 以降のステップでは、上下左右に移動することができる。 ただし、ひとつ前のパネルや場外に移動することはできない。 すべてのパネルを白色にするための移動経路を構成せよ。 WWWRR WWWWR WWWWR WWWRR RRRRW => 10 RRRRURUUUL (→→→→↑→↑↑↑←) WWWWW WWWWW WWWWW WWWWW WWWWW => 0 (移動の必要なし) WWWWW WWWWW WWWWW WRWWW WWWWW => 21 RRRRULULLDDRULURRDRDL (必ずしも最短経路である必要はない)
981 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 19:51:24.03 ID:WMjcSrAA.net] >ひとつ前のパネルや場外に移動することはできない 全部踏めばいいんだからライツアウトの解法の亜種で解けるんじゃねえの
982 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 19:59:02.78 ID:ZUIw2oHI.net] 状態を変えずに任意の場所まで移動できるなら 6箇所だけそれぞれ1つだけRだった場合を計算してあとは回転なりなんなりして重ね合わせればいけるな
983 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 20:34:03.00 ID:WMjcSrAA.net] ↑ □□□ □□□→ 2*3の全パターンで、この二つの方向のどちらかに抜ける経路が存在すればいい あとは合成で何とかなる
984 名前:デフォルトの名無しさん [2018/09/19(水) 21:11:11.50 ID:zcXFtBV7.net] うーん。これはブルートフォースでやろうとするとかなり無駄が多くなって時間とメモリを山盛りに食いそうな予感。
985 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 23:00:29.71 ID:gYIP5Vsu.net] 5x5=25マスの赤or白の2値だから25bit、現在位置25通り(5bit)に前回位置相対で4通り(2bit)、あわせて32bitパターン?
986 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 23:25:52.07 ID:WMjcSrAA.net] 5x5は序の口で、100x100くらいが本命でしょう ついでに最短の最適解も 問題も作るだけならラクだから1000x1000だって0.1秒程度で作れる もちろん解くのは面倒
987 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 01:27:25.92 ID:B4lxWLis.net] >>958 手でしか試してないけど 解けないパターンとかありそうな予感 https://i.imgur.com/u8zgEum.png
988 名前:デフォルトの名無しさん [2018/09/20(木) 09:43:56.68 ID:cMPVhU9i.net] プログラム考える以前に解くためのいいアルゴリズムが思い浮かばん
989 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 12:37:05.73 ID:B1/3j8uv.net] 辺の長さが3以上の時は戻るの禁止ってルールは実質的に無視できそうだな というのも閉路を2周すれば元通りに戻るわけだから xxx x↓x x↑x 上に行ってまた下に戻るって進みたいときは →↓x ↑←x // 中央「←」を3回目に踏むときは下に進む x↑x ってすればいいわけで 2*2 かどちらかの辺が 1 の場合以外は任意のパターンで解があることになる
990 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 23:43:04.82 ID:uzQ90Fqy.net] RWWWR WRWWW RWRWW RWWRW WRRWR 全てのパターンが解けて最長がこの形で44手かかる となったけどできたばかりだからまだまだバグがありそう
991 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 23:11:26.91 ID:1M+bqJR8.net] https://ideone.com/S7UA0k 表示までできるようになったので ここでは5秒超えるので結果表示されないみたい 10年前のノートで2分半かかる 結果はこんな感じ - - - - - - - - - - - - - - - - x - - - - - - - - RRRRULDRULLDL 13 x - - - x - x - - - x - x - - x - - x - - x x - x RRRRRUUUULLLLDDDDRRRURUULDLDDLUURDLURRUULLDL 44
992 名前:957 mailto:sage [2018/09/22(土) 13:39:38.33 ID:EQZKU8B1.net] 最適解ではないが、人間にも実行可能なアルゴリズムを考えた 上のラインから順番に確定させていく感じ https://ideone.com/nUgNh3
993 名前:デフォルトの名無しさん mailto:sage [2018/09/23(日) 05:22:08.89 ID:QL0eQEru.net] 解法全然分からないけど 枝狩りもメモ化もせず愚直に全探索すると44手目で10760814742109228通りになるのか…ヤバイな codepad.org/JXkGjMKb
994 名前:デフォルトの名無しさん mailto:sage [2018/09/23(日) 06:45:48.27 ID:QL0eQEru.net] >>971 メモ化のみの全探索でも厳しいね https://ideone.com/TpZyFM
995 名前:デフォルトの名無しさん mailto:sage [2018/09/23(日) 07:02:07.82 ID:QL0eQEru.net] >>963 の理屈上なら>>972 のstepの累積和が3,355,443,200(=25<<27)になった時点で全通り出たことになって最短の上限になるのかな?
996 名前:デフォルトの名無しさん mailto:sage [2018/09/23(日) 10:53:27.77 ID:daMeAE67.net] ttps://cdn-ak.f.st-hatena.com/images/fotolife/m/motcho/20180127/20180127034515.png 連続殺人犯が全ての目撃者を消して完全犯罪を目論む
997 名前:デフォルトの名無しさん [2018/09/23(日) 12:36:34.31 ID:FE85zabB.net] 文字列のペアがn対与えられる。 s(1),t(1) ... s(n),t(n) この時、ペアを適切な数選び適切な順番で並べる事で s(a1)s(a2)...s(ak) = t(a1)t(a2)...t(ak) とできるかどうか判定せよ (ペアを重複して選ぶのもOK)
998 名前:デフォルトの名無しさん mailto:sage [2018/09/23(日) 12:41:57.26 ID:A0stA7Ax.net] >>975 それって「s(i)=t(i)となるiが1つ以上存在するか」というだけのように思えるけど、違うかな?
999 名前:デフォルトの名無しさん mailto:sage [2018/09/23(日) 12:42:44.79 ID:A0stA7Ax.net] >>976 は勘違いでした。取り消します
1000 名前:デフォルトの名無しさん mailto:sage [2018/09/23(日) 13:27:09.60 ID:yBlaBAG2.net] >>976 最初全く同じこと思ったわw でもこれって十分条件に過ぎないんだな a ab bc c s(1)s(2) = t(1)t(2) = 'abc'
1001 名前:デフォルトの名無しさん mailto:sage [2018/09/23(日) 17:12:26.93 ID:daMeAE67.net] 応用だけは思い付いた ATCGTTGTAC, AAATTTCTCTCTTTCT GTGATGCGTTGCAGGT, ATGCCATGTGAC AAATTGCTGAC, ATGTTGCGTC ATGCGTACCCACG, AGTGCGTTCGTAC ...(以下、1万行続く)
1002 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 12:45:56.45 ID:ZWCrk0/p.net] >>975 空文字列は含むの?
1003 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 14:31:45.91 ID:twjLvrgB.net] 重複しても良いってなっているのでどうやっていいか分からなくなった。 重複なしなら単に順列の問題で全パターン調べれば良いだけなんだけどな。
1004 名前:デフォルトの名無しさん [2018/09/24(月) 14:56:44.30 ID:hAv+WLv3.net] >>980 含むと何も並べなければOKって事になりそう
1005 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 15:56:26.13 ID:IwP3sRIS.net] >>982 結果じゃなくて入力に 一つも選ばないのがOKならそもそも問題として成立しないだろ
1006 名前:デフォルトの名無しさん [2018/09/24(月) 16:14:35.67 ID:twjLvrgB.net] >>975 Kotlin 但し、重複選択は考慮していない。 https://paiza.io/projects/iRHJjFRj9BJIydX10SIn0Q
1007 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 19:57:46.70 ID:6VO2RDhD.net] >>970 ルール合ってるのかどうか知らないけど ゲーム風にしてみた (Win専用) fast-uploader.com/file/7093342064119/ PASS:11957 慣れると何となく解き方のコツが見えてくる 今まで解けなかった例は無さげ
1008 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 20:25:58.77 ID:8mxLASGw.net] 任意のパターンで解けることはここですでに言及されてるよ
1009 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 00:18:48.94 ID:sMuinsuC.net] エビングハウスの忘却曲線っていって人間のベストな復習間隔があるんだけど 例えば今日勉強したことは明日復習して3日後、1週間一ヶ月ごとに復習すると完全に長期記憶になる これをスマホアプリで管理するプログラミングしたい 理屈は簡単、カレンダーに今日覚えたことを「○○の20-40ページ」とか記入して 明日になったら今日やる復習を表示してくれるシステム プログラミングのプの字も知らんのだ どの言語を使うとかもわからんmacとxcodeはある どういう作り方すればいいかわからない教えてください個人用に使う
1010 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 02:12:07.33 ID:JXqOIinx.net] ここはそういうスレではないよ
1011 名前:デフォルトの名無しさん [2018/09/25(火) 02:40:25.79 ID:VjhU4mZC.net] >>987 このスレはそういう質問するスレではなく、誰かがお題を出して回答したい人がプログラミングして回答するスレだ。 そういう質問はまずは既存のソフトでそういうことが出来るのがないか以下のスレで聞いた方が良いと思う。 気軽に「こんなソフトありませんか?」Part.176 https://egg.5ch.net/test/read.cgi/software/1529929775/ それからどうしてもプログラムを自分で作ってみたいというのであれば何らかの言語を覚える必要があるが、 MacやiPhoneの場合は何が良いのか俺はよく知らない。この頃だと Swift なんだろうか? Swift は確か xcode 使って作れたと思うが、詳細は今の俺には分からん。MacOSやiOS関係のスレを探して聞いてくれ。
1012 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 22:18:07.66 ID:/SCmCNkm.net] お前らってファイルそのものへの参照を禁止したうえでquineを自力で書ける?
1013 名前:デフォルトの名無しさん mailto:sage [2018/09/27(木) 23:09:56.51 ID:TEegUJED.net] もう少し詳しく
1014 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 01:19:09.36 ID:voc6Rn8M.net] 次スレは
1015 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 10:09:57.20 ID:phwOkayR.net] 次スレ プログラミングのお題スレ Part12 https://mevius.5ch.net/test/read.cgi/tech/1538096947/
1016 名前:デフォルトの名無しさん [2018/09/28(金) 21:10:47.83 ID:WW7qy9i/.net] 埋め
1017 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 21:28:45.12 ID:CwsEryp/.net] うめ
1018 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 21:28:53.05 ID:CwsEryp/.net] うめ
1019 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 21:29:01.92 ID:CwsEryp/.net] う
1020 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 21:29:15.02 ID:CwsEryp/.net] め
1021 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 21:29:28.35 ID:CwsEryp/.net] あさうめ
1022 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 21:29:36.27 ID:CwsEryp/.net] うめ
1023 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 21:29:44.58 ID:CwsEryp/.net] うめ
1024 名前:1001 [Over 1000 Thread.net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 157日 0時間 44分 30秒
1025 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています