- 1 名前:デフォルトの名無しさん mailto:sage [2016/12/01(木) 16:58:30.97 ID:gTkHDluD.net]
- プログラミングのお題スレです。
前スレ プログラミングのお題スレ Part8©2ch.net echo.2ch.net/test/read.cgi/tech/1444216746/ 【出題と回答例】 1 名前:デフォルトの名無しさん お題:お題本文 2 名前:デフォルトの名無しさん >>1 使用言語 回答本文 【ソースコードが長くなったら】 (オンラインでコードを実行できる) ideone.com/ codepad.org/ compileonline.com/ rextester.com/runcode runnable.com/ code.hackerearth.com/ melpon.org/wandbox https://paiza.io/ 宿題は宿題スレがあるのでそちらへ。
- 960 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 08:07:25.24 ID:i+4FV8XV.net]
- >>918
brainfuck https://ideone.com/eJSjws
- 961 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 09:35:15.49 ID:wX0EFIYP.net]
- >>918
難しさの判定を人間が気分でするしかないとなると死ぬまで気に入らないと 言い続けて終わらないようにもできてしまうわけで、少なくともお題の判定 方法としては適切ではないのではないか?
- 962 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 11:19:23.23 ID:ZkyapKMq.net]
- 式を捏造せよと言ってんのに、検算して答えがあってることを確かめろとか矛盾してて草
- 963 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 11:41:23.15 ID:N8L362th.net]
- >>925
基本的かつ合理的。 >>926 投票制にする? >>927 答えは42になることだけは決まってるんだから、検算できないのはどういう理由? プログラミングやるんだから、イデオンとか使うんじゃだめなの?
- 964 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 15:25:23.94 ID:0tvuK50P.net]
- 片山に次ぐ逸材かもしれないが出題者が馬鹿だとやる気が出ないという良い見本
- 965 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 15:31:12.30 ID:N8L362th.net]
- 自由を泳げないって不便だね。
何やっても良いんだからなんかすればいいって話なんだけど。 定型の答えなんか求めてないのは出題見ればわかるだろ。 発想力が欠如してるんじゃないか? 基本的にベンチマークだと言ってるでしょ? 捏造っていう言葉が悪かったら謝るが。構成しろってことにすれば大体同じや。
- 966 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 15:32:51.23 ID:N8L362th.net]
- 口だけのやつはぶっぶーですわ。
- 967 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 16:00:26.20 ID:4ng0NpPh.net]
- 自由を泳げないって
- 968 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 18:49:12.75 ID:Er3In3fn.net]
- Cコ:彡
- 969 名前:デフォルトの名無しさん mailto:sage [2017/12/29(金) 00:30:23.43 ID:+gfutoXL.net]
- >>909 rust
https://ideone.com/H6mdNM ・BigInt不使用 ・n.to_s(b)の形にしたかったが素早く諦めた ・色んなところに迷いと妥協が見え隠れ
- 970 名前:デフォルトの名無しさん mailto:sage [2017/12/29(金) 02:28:40.84 ID:IV3yH5ho.net]
- お題:入力があったら6面のサイコロを振って出た目を出力してください
ただし数字を使ってはならない
- 971 名前:デフォルトの名無しさん mailto:sage [2017/12/29(金) 03:07:31.93 ID:GekNq94X.net]
- そういう数字を使ってはいけないって誰得なの?
- 972 名前:デフォルトの名無しさん [2017/12/29(金) 05:31:16.53 ID:5y9SQxLe.net]
- >>935
Unicode の U+2680 〜 U+2685 は? ??????
- 973 名前:デフォルトの名無しさん mailto:sage [2017/12/29(金) 09:00:41.20 ID:IV3yH5ho.net]
- >>936
さぁ。。。 >>937 確認してないけどいいのでは
- 974 名前:デフォルトの名無しさん mailto:sage [2017/12/29(金) 09:20:10.35 ID:GekNq94X.net]
- >>935
https://ideone.com/GrYSWB C++。こんな感じ?
- 975 名前:デフォルトの名無しさん mailto:sage [2017/12/29(金) 09:29:20.12 ID:GekNq94X.net]
- https://ideone.com/ZRXCD5
こっちの方がそれっぽいか。
- 976 名前:デフォルトの名無しさん mailto:sage [2017/12/29(金) 20:57:46.71 ID:QkO9em45.net]
- 数字を使ってはならないってのが謎
AAで出力しろってか?
- 977 名前:デフォルトの名無しさん [2017/12/29(金) 21:21:03.51 ID:aTe03Y1I.net]
- >>935
Rubyで。 p rand('abcdef'.length) + 'z'.length
- 978 名前:デフォルトの名無しさん mailto:sage [2017/12/29(金) 21:28:13.36 ID:FAMD2vO+.net]
- 数字を使うなって表示なのかそれともソースなのか?
表示なら ●●●●●●とか
- 979 名前:デフォルトの名無しさん mailto:sage [2017/12/29(金) 21:29:41.90 ID:u/2CuQjm.net]
- 両方だろ
- 980 名前:デフォルトの名無しさん mailto:sage [2017/12/29(金) 21:50:46.64 ID:VnRfvHlH.net]
- そもそも入力が何なのかすら意味不明。却下
- 981 名前:デフォルトの名無しさん [2017/12/29(金) 22:22:21.11 ID:1z8qBjEb.net]
- お題
自然数 n を入力とし, a と b を乗ずると n になるような自然数 a と b を出力する. a と b の侯補が複数存在する場合は, a と b の和がもっとも小さなものを出力すること.
- 982 名前:デフォルトの名無しさん [2017/12/29(金) 22:32:07.85 ID:5y9SQxLe.net]
- >>938
じゃあUnicodeのU+2680からの文字を使った版。Kotlinで。 https://paiza.io/projects/GElJ8jIbi45jocyYirbO8w 入力があったらの部分は最初の readLine() だ。 下の「入力」タブの所で改行を一つ入れてあるので開いたら即出力がある。
- 983 名前:デフォルトの名無しさん [2017/12/29(金) 23:03:49.04 ID:5y9SQxLe.net]
- >>935
また Kotlin。 サイコロの目の一つは5x5ビットあれば表現できるので配列に詰め込んで後で変換して出すようにした。 https://paiza.io/projects/uGhQ6cuRqbnlGc2TTvT92w?language=kotlin 別に配列でなくてもとにかく 5*5*6 (=150) bit 詰め込めるなら何でも良い。
- 984 名前:デフォルトの名無しさん mailto:sage [2017/12/29(金) 23:13:30.16 ID:VnRfvHlH.net]
- >>946
15.times{|n| sqrt_n = Integer.sqrt(n) (2 * sqrt_n..n + 1).each { |s| (sqrt_n..n).each { |i| next unless i * (s - i) == n puts '%d * %d = %d' % [i, s - i, n] break } || break } } 0 * 0 = 0 1 * 1 = 1 1 * 2 = 2 1 * 3 = 3 2 * 2 = 4 5 * 1 = 5 2 * 3 = 6 7 * 1 = 7 2 * 4 = 8 3 * 3 = 9 5 * 2 = 10 1
- 985 名前:1 * 1 = 11
3 * 4 = 12 13 * 1 = 13 7 * 2 = 14 [] - [ここ壊れてます]
- 986 名前:デフォルトの名無しさん mailto:sage [2017/12/29(金) 23:14:32.74 ID:VnRfvHlH.net]
- >>949はRuby2.5.0ね
- 987 名前:デフォルトの名無しさん [2017/12/29(金) 23:25:01.60 ID:IY4nOP57.net]
- >>935
https://paiza.io/projects/dpm1gJDuxMLd6pvQau8rig?language=kotlin
- 988 名前:デフォルトの名無しさん [2017/12/30(土) 00:34:17.12 ID:64dx8gku.net]
- >>946
def r9_946(n) Math.sqrt(n).to_i.downto(1) do |e| return [e, n / e] if (n / e) * e == n end end 1.upto(100) do |n| a, b = r9_946(n) printf("%d = %d * %d¥n", n, a, b) end
- 989 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 00:45:39.83 ID:6/kbfUjB.net]
- >>949から100倍くらい早くなった
https://ideone.com/4qZ3Di
- 990 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 01:37:16.58 ID:2QbO+yEX.net]
- >>951
出目が0〜6? 確率的には 0: 1.56% 1: 9.38% 2: 23.44% 3: 31.25% 4: 23.44% 5: 9.38% 6: 1.56% くらいか?
- 991 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 09:12:17.38 ID:6VD4P8Az.net]
- >>946
https://ideone.com/GSawYb C++。条件足りてるかよくわかってないけど、適当に書いたらそれぽい感じになった。 あってる保証はない。
- 992 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 09:19:03.41 ID:6VD4P8Az.net]
- なんか俺の劣化>>953みたいな感じだな。
うーん。名案だとは思ったのだけど。むむむ・・・。
- 993 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 09:31:25.37 ID:6VD4P8Az.net]
- うほ、フィルターしてる条件にバグがあった。良く動いてたな。
- 994 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 09:33:18.81 ID:6VD4P8Az.net]
- これ、片方1のやつって素数かな?
エラトステネスの篩とどっちが軽いかな。
- 995 名前:デフォルトの名無しさん [2017/12/30(土) 12:46:04.20 ID:ZPxTZMGf.net]
- お題
要素が素数, かつ要素の総和が2018になる集合のうち, 要素数がもっとも大きい集合を出力する.
- 996 名前:デフォルトの名無しさん [2017/12/30(土) 12:59:47.50 ID:64dx8gku.net]
- >>959
[2]*(2018/2)
- 997 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 14:25:23.55 ID:6VD4P8Az.net]
- >>959
https://ideone.com/lwcNQR C++。DPの練習。必要な数はわかったが過程の表示の仕方がわからない。 どうすれバインダー。Orz
- 998 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 15:14:55.24 ID:6VD4P8Az.net]
- >>961
https://ideone.com/DdepmL C++。あってるか知らんけど、力業でベタ作業した結果、それっぽい数字にたどり着いた。 と、思ったら全然違う数字を指していた。
- 999 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 15:16:57.66 ID:6VD4P8Az.net]
- >>959
https://ideone.com/XzeJ1E C++。でけたー。DP難しいなぁ。
- 1000 名前:デフォルトの名無しさん [2017/12/30(土) 15:18:24.57 ID:ZOKm+QEU.net]
- >>959
それ1なのでは?
- 1001 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 15:25:04.70 ID:6VD4P8Az.net]
- 要素数だから、コンテナカウントだと思って書いたんだけど。
え?題意勘違いしてる?
- 1002 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 15:25:53.45 ID:6VD4P8Az.net]
- element countだよね?
- 1003 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 15:30:31.85 ID:qiSXHyFx.net]
- 2が1009個ある集合、>>960で答えが出てる
- 1004 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 15:32:23.03 ID:6VD4P8Az.net]
- >>967
あー、それそういう意味だったのか。 うわー俺、蛇足だった。
- 1005 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 15:36:57.18 ID:6VD4P8Az.net]
- >>967
それをさ、プログラムで解くのきつくない? 総当たりしないと俺は無理。重複許可すると途端に大変になる。
- 1006 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 16:05:45.05 ID:6VD4P8Az.net]
- https://ideone.com/RVtf4i
適当に拡張してみたが、搭載メモリ8Gを使い切ってしまいデバッグ不可。 これ、意外と難問かもしれん。
- 1007 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 16:20:15.12 ID:6VD4P8Az.net]
- ちょっとくどいけど、
これさ、量子アニーリングじゃないと解けないやつかなぁ?? なんかさっきからいじってるけど、ローカルポケットに落ちてる気がする。 グローバルポケットに落とす方法が皆目見当つかない。 解説頼む。
- 1008 名前:デフォルトの名無しさん [2017/12/30(土) 16:48:17.65 ID:ZPxTZMGf.net]
- すみません, お題での 集合 は Ruby では Setクラス のような, 要素に重複や順序性のないものを考えていました.
想定していた回答例は以下です. answer (2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 113 127 131 137 139) (apply #'+ answer) 2018 (length answer) 33
- 1009 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 17:07:30.49 ID:YKsh4iwJ.net]
- 9個まではすぐ見つかるんだけど10個になった途端重くなる
10個の場合は存在しない? 逆に21個や33個の場合はすぐ見つかるんだ、どういう分布なんだろな
- 1010 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 17:11:07.91 ID:6VD4P8Az.net]
- >>972
おー、よかった。どこまで深淵があるのか怖かったよ。 多分、>>963であってると思う。たぶん。
- 1011 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 18:48:52.49 ID:YKsh4iwJ.net]
- >>959 C#
https://ideone.com/J9MmxS 33個と決め打ちした場合は4通りがすぐ出る そのあと延々ループしてるがTime limit exceededで打ち切ってくれる
- 1012 名前:デフォルトの名無しさん [2017/12/30(土) 21:03:54.80 ID:30TR5CU8.net]
- >>959
1も素数なんだが1が2018個ある集合はありなのか? それだとお題としてほとんど意味のないひっかけ問題みたいになるわけだが、 そうではないなら問題を修正しろ。
- 1013 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 21:15:48.77 ID:KgXg1sy3.net]
- >1も素数なんだが
>1も素数なんだが >1も素数なんだが
- 1014 名前:デフォルトの名無しさん [2017/12/30(土) 21:23:36.74 ID:bLWDJrON.net]
- >>977
あ、2か。 でも問題がこれだと同じことだよなあ。
- 1015 名前:デフォルトの名無しさん mailto:sage [2017/12/30(土) 21:26:45.29 ID:bA88XQgg.net]
- >>976
4つ上のレスも確認できないくせに何言ってんの
- 1016 名前:デフォルトの名無しさん [2017/12/30(土) 21:42:01.90 ID:ZPxTZMGf.net]
- 一般に, 素数は 1およびその数自身のほかに約数を有しない正の整数 と定義されますので, ここではその定義に従います.
また一般に, 重複や順序性のない もののあつまり を 集合(set) と呼ぶことが多いので, ここではその用法に従います. 集合(set)に対して, ものをならべたものは列(sequence)と呼ぶことが多いです. ここでは『AABBCC』は文字列ですが, 文字集合ではないとします. % irb irb(main):001:0> require 'prime' => true irb(main):002:0> 1.prime? => false irb(main):003:0> 2.prime? => true irb(main):004:0> require 'set' => true irb(main):005:0> Set.new([1]*2018).size => 1
- 1017 名前: mailto:sage [2017/12/31(日) 00:33:09.15 ID:UjqOw9qv.net]
- お題:指定した複数の wav フォーマットを連結して一つ wav ファイルを作成するプログラムを書け
・ファイルの指定方法はコマンドライン引数指定でかまわない ・wav ファイルフォーマットの仕様上の上限である 4GiB まで正常に結合できることを必須の最低条件とする ・PCM フォーマット・ステレオ2ch・サンプリング周波数 44.1kHz に対応しておればよい ・GUI に対応しておればなおよい 背景:いや、いろいろダウンロードして試しているのだけれども、4GiB まで正常に結合できるソフトウェアが見つからないのです‥
- 1018 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 01:09:52.02 ID:iFZSMKfw.net]
- それでこのスレに辿り着くのは面白い
- 1019 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 01:21:45.50 ID:QH0un2fa.net]
- 前からこのスレにいる人でしょ。
お題としてはまったくこのスレに向いてないと思うが。
- 1020 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 01:55:26.47 ID:mjAZsjOp.net]
- 2000から3000位まで試してみたが、大体33前後になるみたい
(微妙に増加していくが緩慢)
- 1021 名前:デフォルトの名無しさん [2017/12/31(日) 03:02:32.19 ID:rf+Z6LCT.net]
- >>981
これ使えないか? hakobe932.hatenablog.com/entry/20060613/1150208682
- 1022 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 05:23:36.13 ID:Q5J3BQB7.net]
- >>981
waveチャンクって2gbまでだっけ?sizeフィールドが32bitsignedだったような気がするんだけど。どうだっけ?
- 1023 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 05:28:08.43 ID:Q5J3BQB7.net]
- 書き出すのはそんなに難しくないんだけど、読み込むのが面倒なんだよなぁ。
それに、適当にくっつけるとくっつけたところにブツ!っていうのノイズが入ることがあったはず。
- 1024 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 05:33:17.47 ID:Q5J3BQB7.net]
- https://ideone.com/AExWE6
これで、ちっちゃいやつは書き出した実績がある。ローカルの話だけどな。 読み込みはRiffの仕様よく知らないからわからない。
- 1025 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 09:49:37.67 ID:Jha/n6sD.net]
- 自分で書くよりfoobar2000でMerge all tracks into one output fileしちゃうよな
むしろ6GBとかいける、wave64になってんのかな
- 1026 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 10:12:35.10 ID:vp+PvkVL.net]
- 完全にスレチ
- 1027 名前: mailto:sage [2017/12/31(日) 13:06:54.78 ID:UjqOw9qv.net]
- >>989
foobar2000 に merge する項目はありますか? 最新バージョンをインストールしましたが見当たりません‥
- 1028 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 14:14:14.10 ID:Jha/n6sD.net]
- >>991
foo_converter.dllが標準で入ってるからそのまま使えるよ スレチというかこの場合はサイト違いだな、Hydrogenaudioで検索した方が沢山みつかる
- 1029 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 19:53:16.48 ID:R6E+DNla.net]
- "2018と素数" 類似問題
[お題] 前問よりどうやら、ユニークな素数の和で2018を作ると、 構成(要素)数 33個が最大で 4種類あるらしい。 最小は2個で27種類あるみたいだ。 3個だと 73種類、 4個だと 85014種類あるみたいだ。 ユニークな素数の和で2018を作る時、 最大の種類が作れるのは、構成数何個のときで、何種類か。 (注) 8個を超えると10億超えがしばらく続くらしい。
- 1030 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 19:58:31.90 ID:Q/CIq2T0.net]
- >>981
ちゃんと理想の仕様を書けば作るけど
- 1031 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 20:02:31.92 ID:Q/CIq2T0.net]
- >>986
32bit unsignedで(4Gi-1)Bまでだね ファイルサイズも32bit unsigned
- 1032 名前:デフォルトの名無しさん mailto:sage [2017/12/31(日) 22:29:40.39 ID:q2wUTltf.net]
- >>993 Java
https://ideone.com/DHe5Ij
- 1033 名前: mailto:sage [2018/01/01(月) 00:07:03.13 ID:JOZ5/YyG.net]
- >>981
mevius.2ch.net/test/read.cgi/tech/1434079972/30 ‥‥書初めになりました
- 1034 名前:デフォルトの名無しさん [2018/01/01(月) 06:04:16.51 ID:4wMbPbHX.net]
- どうして2048ではなく2018などという中途半端な数にしたんだろうとずっと不思議に思っていたのだが(お題だから敢えて変な数にしたのかとか思ったんだが)、ようやっとわかったよ。今年の西暦年だったんだね。
- 1035 名前:デフォルトの名無しさん mailto:sage [2018/01/01(月) 06:13:54.33 ID:+ZNxt5nC.net]
- >>995
勘違いしてたか。訂正ありがとう。
- 1036 名前:デフォルトの名無しさん mailto:sage [2018/01/01(月) 08:09:01.71 ID:OeEKMk/d.net]
- >>997
そっちのスレに書くと本当にBTC貰えるの? てか、出題者と交渉したって貰える保障が全くなくて無意味なスレのような気がするんだけど。
- 1037 名前:1001 [Over 1000 Thread.net]
- このスレッドは1000を超えました。
新しいスレッドを立ててください。 life time: 395日 15時間 10分 31秒
- 1038 名前:過去ログ ★ [[過去ログ]]
- ■ このスレッドは過去ログ倉庫に格納されています
|

|