[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 08/23 04:50 / Filesize : 284 KB / Number-of Response : 1021
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

プログラミングのお題スレ Part8



1 名前:デフォルトの名無しさん mailto:sageteoff [2015/10/07(水) 20:19:06.64 ID:c4LYwtKo.net]
プログラミングのお題スレです。

前スレ
プログラミングのお題スレ Part7
peace.2ch.net/test/read.cgi/tech/1429195275/

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

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

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

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

554 名前:デフォルトの名無しさん mailto:sage [2016/06/26(日) 01:55:05.38 ID:ifKGTnOo.net]
まぁ、ぼやっと思う感じでは、
1、ファイルAソート。時間で。
2、ファイルBソート。時間で。
3、両方を別バッファに取り込み。
4、一本化バッファ作成。
5、バッファA[i]の時間とバッファB[j]の時間を比較。
6、小さいほうを一本化バッファの後ろに追加。
7、追加したほうのインデックサをインクリメント。追加しなかった方はそのまま。
8、5にループ。
9、余ってるほうを全部突っ込む。
end。
って感じに思えるが。メンドクセー。

555 名前:デフォルトの名無しさん mailto:sage [2016/06/26(日) 02:35:16.23 ID:xbYmT3r1.net]
>>542
ソートしてダメならプログラムでやる意味ないじゃん
よくわからんお題だな

556 名前:デフォルトの名無しさん mailto:sage [2016/06/26(日) 08:12:11.46 ID:a+kSsv7i.net]
>>540
二つのファイルをマージするとどんなメリットがあるの?

557 名前:デフォルトの名無しさん mailto:sage [2016/06/26(日) 13:48:43.10 ID:kOUAeqMS.net]
とりあえずそのファイルをどこかに置いて見れるようにしとけよ。話はそれからだ。

558 名前:デフォルトの名無しさん mailto:sage [2016/06/26(日) 14:42:47.48 ID:VC0ezbuZ.net]
>>540
発生開始時刻と発生終了時刻の相加平均値でソートしてはどうでしょうか?

559 名前:デフォルトの名無しさん mailto:sage [2016/06/28(火) 21:40:42.79 ID:JU4eR3PY.net]
レス遅れてすまんが、お題としてはイマイチだったかな
ttp://www.opensubtitles.org/ja/subtitleserve/sub/5904174
ttp://www.opensubtitles.org/ja/subtitleserve/sub/6525137
>>546
英語の練習がしやすい

560 名前:デフォルトの名無しさん mailto:sage [2016/06/29(水) 02:19:12.68 ID:sVTYBpM+.net]
タダの準備不足。
人を動かす材料が足りない。

561 名前:デフォルトの名無しさん mailto:sage [2016/06/29(水) 23:31:32.20 ID:OPqpBspr.net]
そうか。すまんかった

562 名前:デフォルトの名無しさん mailto:sage [2016/06/29(水) 23:49:35.70 ID:frOOdHyw.net]
入力だけじゃなく出力も提示しないとわからんよ



563 名前:デフォルトの名無しさん mailto:sage [2016/07/03(日) 21:08:39.04 ID:KvQk5E4z.net]
>>540
JAVA ソース
ttp://ideone.com/vxIcvL

jarなど
ttp://www1.axfc.net/u/3686951.zip

564 名前:デフォルトの名無しさん mailto:sage [2016/07/05(火) 11:21:22.75 ID:ALuHk1mL.net]
レスがつかないのでいいのか悪いのかさっぱりわからん
無責任なやつだな

565 名前:デフォルトの名無しさん [2016/07/21(木) 20:01:41.38 ID:rb76Qzme.net]
お題:
いくつかの非負整数を区切り記号を略して書き並べてあります。
区切り記号の挿入箇所の組み合わせは全部で

566 名前:何通りありますか? []
[ここ壊れてます]

567 名前:デフォルトの名無しさん [2016/07/21(木) 20:05:24.57 ID:rb76Qzme.net]
>>555
あれ、例が抜けてた↓

"150301" -> 18
"150031" -> 16
"015000" -> 8
"2432902008176640000" -> ?

568 名前:デフォルトの名無しさん mailto:sage [2016/07/21(木) 23:07:45.64 ID:8Nf0PhCE.net]
>>555-556
C++
あってるかどうかは知らん
ideone.com/F28LZS

569 名前:デフォルトの名無しさん [2016/07/22(金) 12:57:04.31 ID:M/7Z6G3a.net]
>>556
↓のような分割かと思ったが・・・

0,15000
01,5000
015,000
0150,00
01500,0
0,1,5000
0,15,000
0,150,00
0,1500,0
0,1,5,000
0,1,50,00
0,1,500,0
0,15,0,00


570 名前:デフォルトの名無しさん mailto:sage [2016/07/22(金) 15:32:49.00 ID:JXjdchXx.net]
>>555
C言語 ideone.com/rIkKvv
例からすると区切り無しも含むのですかね

571 名前:デフォルトの名無しさん mailto:sage [2016/07/24(日) 06:35:51.96 ID:el9EgK1j.net]
>>555
Haskell
ideone.com/PsZ9vn

572 名前:デフォルトの名無しさん [2016/07/24(日) 23:19:04.90 ID:IHR53C+P.net]
久しぶりにこのスレ開いたけど
何か過疎ってね?



573 名前:デフォルトの名無しさん mailto:sage [2016/07/24(日) 23:34:50.13 ID:253cC3eo.net]
俺は最近はyukicoderとかpaizaとかでお題解いてるよ

574 名前:デフォルトの名無しさん mailto:sage [2016/07/25(月) 03:46:54.86 ID:0UVAPYM3.net]
「プログラマ脳を鍛える数学パズル」
2016、技術書部門の大賞、受賞作

図書館では、予約している人が10人ぐらいいて、
とても読めそうにないので、今日、買ってきた

Ruby, JS などで書いてある

575 名前:デフォルトの名無しさん mailto:sage [2016/07/28(木) 11:19:50.57 ID:XvUIxyvW.net]
>>555
ideone.com/r93ULh
ideone.com/PrKxyj
C++。数字が合わんがな。何か間違えてるかなぁ。
ルールの把握があいまいなのであってるか知らん。
もしかしたら、stringstreamでやってるwhileでカウントすればいいかもしれん。
それと対象ナンバーが64ビット超えたらたぶん動かない。
まぁいいや。せっかく作ったのでそれだけ認めてくれ。

576 名前:デフォルトの名無しさん mailto:sage [2016/07/28(木) 20:19:22.73 ID:IfzkZoT6.net]
>>564
150301だったら

1,5,0,3,0,1
1,5,0,30,1
1,5,0,301
1,50,3,0,1
1,50,30,1
1,50,301
1,503,0,1
1,5030,1
1,50301
15,0,3,0,1
15,0,30,1
15,0,301
150,3,0,1
150,30,1
150,301
1503,0,1
15030,1
150301

の18通りだと思うけど

577 名前:デフォルトの名無しさん mailto:sage [2016/07/29(金) 03:27:05.93 ID:11+SH8DV.net]
>>555
>>565
ideone.com/JHsovR
ideone.com/gz38Ko
C++。いじってみたけど、数字が合わず。何が間違ってるのかもわからない。
ルールを把握できないって、ぼけてきてるのかなぁ・・・。Orz
最近、思考してないし。

578 名前:デフォルトの名無しさん [2016/08/01(月) 04:25:27.15 ID:4Q/skcnH.net]
>>555
Pythonの勉強がてらやってみました
codepad.org/vszENnrW

>>566
最も愚直な方法は考えられる分け方を全て列挙し、その中から認められない分け方を除外して数えればいい
1,5,03,01の03と01のように二桁以上で先頭が0であるような分け方は認められないと思われる

579 名前:デフォルトの名無しさん mailto:sage [2016/08/02(火) 02:02:12.74 ID:YLg91Q2/.net]
>>555
>>567
ideone.com/8TbvLG
C++。やっと数字があった。
皆さま、愚かなワタクシメをお許しください。ラーメン。Orz

580 名前:デフォルトの名無しさん mailto:sage [2016/08/07(日) 22:49:29.00 ID:K0guDqg3.net]
>>555
>>567
ideone.com/ftx1M2
C++でさっくりと。
>>557にあるファイルからの入力受け取る方法いいすね

581 名前:デフォルトの名無しさん [2016/08/09(火) 11:14:00.48 ID:92/o3tci.net]
>>569
checkの返り値はboolなのにそのまま足しちゃうの?

582 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 03:08:08.02 ID:inQKn798.net]
>>570
bool型はtrue=1,false=0なので次のコードは同じ
if(flag)ans++;
ans+=flag;



583 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 07:54:16.90 ID:rXBd1I+h.net]
>>571
ん?

584 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 11:18:58.21 ID:eCSVoJoG.net]
三流のROM専だけど、trueはnot0と思ってたし、trueを数値として扱うのは違和感すごいの。

585 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 11:21:37.91 ID:eCSVoJoG.net]
少し訂正
boolを数値として使うのは違和感

586 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 12:30:53.29 ID:Gdje5e7d.net]
言語による。Cなら普通におk

587 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 12:35:35.23 ID:j6o9ee9V.net]
普通でもおkでもねえよw

588 名前:デフォルトの名無しさん [2016/08/10(水) 19:34:37.97 ID:87OBHkNz.net]
c++のbool型のtrueは1
if文のtrueがnon0であることとbool型の定義は別ってことを理解していれば使っていいんじゃないの?
ideone.com/s3uiYC

589 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 20:05:43.36 ID:6wlopmtf.net]
じゃあ\0とNULLを混同して使っても(実際こんな人わんさといるけど)何も問題ないな

590 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 20:20:05.28 ID:R4BTC7dG.net]
つか0(0x30)とNULL(0x00=\0)を混同だろ、お前まで間違えても何ら問題ない

591 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 20:22:43.02 ID:5BOEqgkW.net]
Pythonのboolはintのサブクラスで数値演算に混ざっても警告やエラーなし
互換性捨てたPython3でもそのままでintから独立させる気配がない

592 名前:デフォルトの名無しさん [2016/08/10(水) 20:29:02.04 ID:sHDHYt88.net]
偽ではないものが真です。言語によって偽の定義が異なる。



593 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 20:48:14.92 ID:qB+vEzvD.net]
if(韓国人の言うこと==true)
return false;
else if(中国人の言うこと==true)
return false;
else
return true;

594 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 20:48:26.57 ID:O/fexyuH.net]
>>576
C に bool はない,だから普通にOKだ,C99 はしらんが

595 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 21:08:56.81 ID:6wlopmtf.net]
>>579
言ってるそばから混同してる奴が出て来たけど、
\0とNULLはまったく意味が違う。

596 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 21:12:11.66 ID:6wlopmtf.net]
>>583
型としてboolはなくても真偽の概念はある。

597 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 21:23:29.03 ID:6bflnq0j.net]
boolをintにキャストして使うとお前らが怒ることはわかった
じゃあなんのためにキャスト出来るようになってるん?数値として扱うべきでないならキャストを禁止すべきだ

598 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 21:56:03.25 ID:6wlopmtf.net]
>>586
別に目的があってキャストできるようにしてるわけじゃない。
単にif文等を機械語に翻訳する時に都合がいいからfalseを0にしてるだけ。

599 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 22:17:30.88 ID:aUoQ61q7.net]
ブール値が無い、C89でも、実質的なブール値という概念がある。
真偽値を返す、比較演算 if(a == b)

これを、if(int型)などと書くのは、MISRA-Cなどではコーディング規則違反

偽は0だが、真は0以外で、1とは限らないかも

\0 は、NUL文字。文字列の最後に使う、番兵。
NULL は、無効なポインタで、0とは限らないかも

600 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 22:33:17.47 ID:20SNjYRS.net]
C++なら問題ないよ
検索すりゃ分かるけどbool->intは0/1になることが言語仕様で決まってる

601 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 22:48:50.81 ID:6wlopmtf.net]
>>589
だからそういう「問題」じゃないってばw
そういう話ならNULLと\0も混同しても問題ないことになるよ。

602 名前:デフォルトの名無しさん mailto:sage [2016/08/10(水) 23:10:16.36 ID:aUoQ61q7.net]
まあ、0, 1 とか暗号みたいな数値は、使わない方がいい

false, \0, NULL, 全ビット0 など、意図がわかるようにすべき



603 名前:デフォルトの名無しさん mailto:sage [2016/08/11(木) 00:10:30.93 ID:yzOHsc1F.net]
「私」は「言語」として考えたらboolをboolとして使いたいし、intとしては無しだと思ってます。
でも「プログラミング」としては有りだと思ってます。
宜しければ、bool論争をここで終結としませんか?

604 名前:デフォルトの名無しさん mailto:sage [2016/08/11(木) 09:47:35.13 ID:EgW5aVb5.net]
return (韓国人の言うこと)?false:!中国人の言うこと;

605 名前:デフォルトの名無しさん mailto:sage [2016/08/11(木) 10:23:51.85 ID:TQheNK/m.net]
>>586
べつにキャストする必要はない

606 名前:デフォルトの名無しさん mailto:sage [2016/08/11(木) 18:35:49.99 ID:5aKqGy8m.net]
くだらないことで争ってんな
正しく動きゃいいんだよ、んなもん

607 名前:デフォルトの名無しさん mailto:sage [2016/08/12(金) 12:46:03.49 ID:W0ObG9Gv.net]
これだから型安全でない言語は糞なんだよ

608 名前:デフォルトの名無しさん mailto:sage [2016/08/14(日) 11:38:09.80 ID:uRifR0NT.net]
YukiCoderたのしー。
3問目を解説見ながら解いた。
幅優先探索は苦手だ。Orz

609 名前:デフォルトの名無しさん mailto:sage [2016/08/14(日) 19:57:07.32 ID:HA8B0Krx.net]
縦H横Wのマスの中に現れるa→b→cの順に辿れる道は全部で何通りあるか出力しなさい。
存在しない場合は-1と出力しなさい。
移動は縦横のみできる。斜めに移動はできない。
H==W、3<=(H,W)<=1000とする

問題例
--c-
cab-
cbac

答え 4
--c-|----|--c-|----
-ab-|----|--b-|-a--
----|cba-|--a-|cb--

610 名前:デフォルトの名無しさん mailto:sage [2016/08/14(日) 20:29:36.17 ID:itqO338w.net]
>>598
問題例に不備があるじゃないか。

611 名前:デフォルトの名無しさん mailto:sage [2016/08/14(日) 21:16:51.46 ID:HA8B0Krx.net]
訂正


問題例
--c-
cab-
cbac
----

答え 4
--c-|----|--c-|----
-ab-|----|--b-|-a--
----|cba-|--a-|cb--
----|----|----|----

612 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 01:18:23.97 ID:ATOVcA82.net]
全てのbの上下左右にあるaの数*cの数を足せば良いんだな。



613 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 05:08:48.91 ID:VvgCdVoy.net]
>>598
>>600
ideone.com/AW6YTZ
C++。Yukiだとサンプルしか通らなそうなコード。
まぁ、これが俺の地だしなぁ。
俺は俺にガッカリだよ。Orz

614 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 05:19:59.98 ID:VvgCdVoy.net]
>>598
>>600
ideone.com/oUQbfM
C++。>>601メソッド??
ちょっとすっきりした。

615 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 13:40:01.81 ID:YWGtPoG/.net]
お題

ズッカーマン数(Wikipediaより)
ズッカーマン数(-すう、Zuckerman number)は自然数で、各桁の数字の総乗が元の数の約数
であるような数である。例えば315は各桁の数字の積が 3×1×5=15 であり、15は

616 名前:315の約数で
あるので315はズッカーマン数である。

ズッカーマン数を最初から100個求めよ。
[]
[ここ壊れてます]

617 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 13:49:14.49 ID:/RUSPZDT.net]
梅干し食べて...

なんか力技でやるしかなさそうな感じだな

618 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 14:10:04.63 ID:VvgCdVoy.net]
>>604
ideone.com/t6xXhj
C++。あってるかな?

619 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 20:11:53.65 ID:NvOrOVSG.net]
こんな感じでいいのか?
ideone.com/NJ6rGr

620 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 20:38:01.87 ID:/9WWz1kS.net]
なぜいいと思った

621 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 21:21:48.34 ID:cQHsobNS.net]
C
ideone.com/peczRr

622 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 01:56:24.06 ID:fBfaZTKr.net]
>>604 F#勉強中@半年

https://paiza.io/projects/Zt_Tw1LaKtiB93Fi6dWkJQ

Wikipediaに書いてある数字との照らし合わせはしました
あと、paiza.ioのを貼るのは初めてなのでうまく貼れてるかどうか・・・
ちなみに、F#は主にyukicoderで鍛えてます、少しは分かってきたかも



623 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 02:08:11.71 ID:q0PyZcrj.net]
>>598 >>601のやり方で C言語
ideone.com/wkEP9Z

>>604 C言語
ideone.com/Pxskoy

624 名前:デフォルトの名無しさん mailto:sage [2016/08/16(火) 14:43:03.45 ID:9WgV32AQ.net]
>>604
@Mathematica

ideone.com/tq9juG

625 名前:デフォルトの名無しさん mailto:sage [2016/08/17(水) 08:55:07.31 ID:5k4XIPv4.net]
>>604 Squeak Smalltalk

| Zuckerman |

Zuckerman := Generator on: [:g |
 1 to: Float infinity do: [:n |
  (n isDivisibleBy: ((n asString asArray collect: #digitValue) reduce: #*))
   ifTrue: [g yield: n]
 ]
].

Zuckerman next: 100

626 名前:デフォルトの名無しさん [2016/08/20(土) 20:32:51.59 ID:vgYTWLvl.net]
>>604
Rubyで。
class Zuckerman
# @param [Int] num チェック対象数値
# @return [Bool] true:入力値がズッカーマン数, false:ズッカーマン数でない
def self.zuckerman num
w = num.to_s
.split(//)
.map {|e|e.to_i}
.reduce(:*)
w == 0 ? false : num % w == 0
end

def self.func1
cnt = 0
(1..Float::INFINITY).map { |e|
(cnt += 1; p e) if self.zuckerman e
break if cnt >= 100
}
end
end

Zuckerman.func1

627 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 01:56:15.80 ID:bS7dpt9A.net]
プログラミングのお題で言語間のコード量競うってか
いかに数学的アルゴリズムを考えるスレか?

628 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 04:07:51.39 ID://fxd30H.net]
競プロの故郷じゃよ。なんて。
俺算数で解いてるんだぞ・・・。Orz

629 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 07:18:31.83 ID:DtQd7MF/.net]
問題を解く早さ、

計算時間の速さ、

コードの短さ、

コードの美しさ、

色々あるね。

630 名前:デフォルトの名無しさん [2016/08/22(月) 00:07:09.67 ID:x59Y2UAa.net]
お題
フィボナッチ数列の先頭に近い数字の合計が、入力値になるように求める。
入力値の例--->出力
1 ---> 1
2 ---> 1,1
3 ---> 1,2
4 ---> 1,3
5 ---> 1,1,3
6 ---> 1,2,3
7 ---> 1,1,2,3
8 ---> 1,2,5

631 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 00:37:32.44 ID:RW2M/REU.net]
30人の生徒がいるクラスで、同じ誕生日の子がいる、確立を求めて

1年を365日とする

632 名前:デフォルトの名無しさん [2016/08/22(月) 00:49:12.07 ID:3wW8ItwJ.net]
>>619

「確立」は求められないけれど,「確率」なら求められる…というのはさておき,

同じクラスで誕生日が同じ子がいる確率の問題は,
森口繁一『応用数学夜話』
に解説があるのだが,その本が本の山の中に
埋もれていて,いま探し出せないのが残念。



633 名前:618 mailto:sage [2016/08/22(月) 01:14:27.85 ID:RW2M/REU.net]
1 - 全員が異なる誕生日である確率

で求めて

634 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 01:18:50.34 ID:38ySFfYc.net]
ideone.com/54J6iS
C++。数列に1を含んでいるので、例のようにやろうとすると全部1で分解しようとする。かも。
例がちょっと懇意なので、俺にはこれが限界やったわ。

635 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 01:27:31.25 ID:38ySFfYc.net]
>>622 -> >>618
安価忘れた。

636 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 01:53:51.46 ID:38ySFfYc.net]
>>619
>>621
ideone.com/BPf9XW
C++。確率の問題なんてだーいきらい。あってるか知らんけど大体こんな感じか?

637 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 02:06:45.94 ID:P8rthkb+.net]
>>621を出された時点で理論的確率を求めて欲しいのは明らかだけど、それだとプログラムを組む意味がない
要するにスレチ

638 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 02:15:23.57 ID:38ySFfYc.net]
>>625
算数でそれは無理なので、俺には無理だー。
( ゚∀゚)アハハ八八ノヽノヽノヽノ \ / \/ \

639 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 02:31:12.36 ID:ze8O1aG1.net]
>>625
いやいや、簡単な数式で表現できても人力で数値解を求めるのは
大変なんだから、それってまさに計算機の出番ではあるよ。

お題として楽しいかどうかは別にしてw

640 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 03:39:29.64 ID:PiS6AnEW.net]
>>619 Java
https://ideone.com/Qmn3oZ

641 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 03:55:16.97 ID:38ySFfYc.net]
あ、勘違いしてた。>>624の結果逆だ・・・。Orz

642 名前:デフォルトの名無しさん [2016/08/22(月) 10:05:22.23 ID:6SPK9Sy9.net]
お題
やじろべえの左右の腕に交互に重りを吊るしていく
ただし、左右の重りの重量差が10gを超えたらバランスを崩してしまう
重りの重量が順に与えられるので最後までバランスを保ったままかどうか判定せよ



643 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 10:32:46.57 ID:38ySFfYc.net]
>>630
右と左を引き算してABS取ればいいのはわかるんだけど、重りのサンプル無いかい?

644 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 18:46:34.40 ID:FFKbVhI+.net]
>>618 Common Lisp
https://ideone.com/A0NXTP

64個でタイムアウト
遅すぎるよねこれ
もっと速く解ける気がするけど分からなかった

645 名前:デフォルトの名無しさん [2016/08/22(月) 19:23:14.70 ID:3wW8ItwJ.net]
>>619

森口繁一『応用数学夜話』(ようやく見付けました)によると、この問題は、von Misesとのことです。
結果だけ書くと、k人からなるクラスで誕生日がだれひとりとして同じにならない確率は
(1/n^2):*(n!/(n-k)!)
で、kはひとクラスjの人数、nは場合の数で、閏年を考えなければ
n=365となります。
この本によると、この確率が0.5を超えるのは
k=23
の時だそうです、つまり24人以上のクラスからなる学校では、
誕生日の重なるクラスが多くなるということになります。

646 名前:デフォルトの名無しさん mailto:sage [2016/08/22(月) 22:39:24.73 ID:RW2M/REU.net]
24人で、0.5を超えるのか。不思議な感覚だな

漏れの感覚では、24人で、0.15ぐらい

647 名前:デフォルトの名無しさん [2016/08/23(火) 00:06:33.47 ID:nbfEIr8Y.net]
>>618
DP?

C言語
https://paiza.io/projects/NpNLBMGoxV-tDcmm4CycBQ
https://out.paiza.io/projects/NpNLBMGoxV-tDcmm4CycBQ/output.txt

648 名前:デフォルトの名無しさん [2016/08/23(火) 00:26:56.57 ID:nbfEIr8Y.net]
>>635
出力整形した

https://paiza.io/projects/rXzmboNl1gbBZflK_j8BrA
https://out.paiza.io/projects/rXzmboNl1gbBZflK_j8BrA/output.txt

649 名前:デフォルトの名無しさん mailto:sage [2016/08/23(火) 05:09:43.19 ID:1XZ2ZUlZ.net]
ideone.com/RLDrpn
ベンチマークしようとしたら、先に出力エラーになった。

650 名前:デフォルトの名無しさん [2016/08/23(火) 13:54:31.44 ID:nbfEIr8Y.net]
>>637
5,6,7は>>618の結果と違うようだけど

651 名前:デフォルトの名無しさん mailto:sage [2016/08/23(火) 14:03:36.67 ID:nbfEIr8Y.net]
そうかフィボナッチ数列はすぐ大きくなるから項数はそんなに大きくならないからgreedyでもいいのか
オーダーのことは未だよく分からないけど
たぶんDPよりgreedyのほうがいいのかな?
>>637がgreedyで求めてたので何となくそう思いました

652 名前:デフォルトの名無しさん mailto:sage [2016/08/23(火) 14:13:51.47 ID:nbfEIr8Y.net]
>>639
あ、greedyだから題意を完全に満たさない結果になってるのか
やはりメモ化探索か
brute forceはキツそうだし



653 名前:デフォルトの名無しさん mailto:sage [2016/08/23(火) 14:21:20.64 ID:1XZ2ZUlZ.net]
>>638
ちょっとよくわからないけど、バグかなぁ。>>635とかできてるしなぁ。
俺が悪かった。忘れてくれ。

654 名前:デフォルトの名無しさん mailto:sage [2016/08/23(火) 14:47:31.03 ID:nbfEIr8Y.net]
自分の解答>>635>>636は題意を満たしてに可能性があるかも
先頭に近い数字という条件を
構成数が最も多くなるうち最初に見つかったものという勝手解釈したが
そうじゃなく辞書順的に小さい数を含むほうを選択する必要あるなら構成数が最大になるとは限らないかも
俺も自分の解答>>635>>636を取り下げます






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<284KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef