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


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

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



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/

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

892 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 16:06:12.32 ID:k7Z6O4lr.net]
>>857
8つだと多胞体が一意に定まらないと思うんだが

893 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 16:48:32.53 ID:qWzXCzKk.net]
>>853
64bit環境でやったらスラッシング起きて\(^o^)/

894 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 16:53:24.07 ID:iSg/oyC4.net]
>>860
じゃあ10個で

895 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 17:03:18.77 ID:k7Z6O4lr.net]
>>862
10でも足りないと思うんだけどひょっとして超五面体って五胞体のつもりで言ってる?

896 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 17:31:58.31 ID:iSg/oyC4.net]
4次元の5胞体

897 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 17:32:53.55 ID:iSg/oyC4.net]
5C2=10

898 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 22:30:10.81 ID:pBTqvDfH.net]
>>861
ウチはi6700メモリ8Gだな。20秒くらいボケーっとしてたらコンパイル完了する。
実実行より全然早い。

899 名前:デフォルトの名無しさん mailto:sage [2017/12/11(月) 23:43:41.01 ID:jF/PrBtV.net]
>>866
んー32bitでコンパイルしてみるかな
64bitはマジ卍ヤバい

900 名前:デフォルトの名無しさん mailto:sage [2017/12/12(火) 00:19:40.23 ID:JpJzeAvs.net]
>>866
悪い
VCで /constexpr:steps 1000000を付けてコンパイルしたら4秒ほどでコンパイルが終わった
多分/MPも付けてるからだと思う
実行結果は25になった

gcc 7.2.0 64bitだとどんどんメモリを食って行って最後にスラッシングが起きる
馬鹿正直な実装をしているからかも知れないね

VCの方がいろいろとメモリを食わないように工夫されてるのかも

Clangでも/constexpr:steps は -fconstexpr-steps という形でサポートされてるようだから
多分行けると思う
メモリ64G積んでるし



901 名前:デフォルトの名無しさん mailto:sage [2017/12/12(火) 01:27:56.58 ID:qpuoD4bc.net]
>>868
いいマシーンだな。
まぁ、ウチはあれくらいで資源尽きちゃうけど、メモリ64Gもあったらもっと行けるな。
気が向いたらどうぞ。

902 名前:デフォルトの名無しさん mailto:sage [2017/12/12(火) 04:08:00.08 ID:SvlIPxM4.net]
>>858 Java
https://ideone.com/ND4D2n

903 名前:デフォルトの名無しさん mailto:sage [2017/12/12(火) 22:52:21.86 ID:38dJ/vud.net]
以下のURLのように、同じ色の点同士をつなぐゲームがある。
https://play.google.com/store/apps/details?id=com.bigduckgames.flow

N×Mの2次元配列が与えられる。配列の各要素は半角英字('a'-'z')または'*'である。
半角英字は色付きの点を表し、'*'は空のマスを表す。
'*'以外の文字は、配列中に必ず2個ずつ存在する。

このパズルの解を一つ出力せよ。
・'-'は左右のマスをつなぐ
・'|'は上下のマスをつなぐ
・'.'はマスをつながない

解がない場合は"No solution"と出力せよ。

[input]
***rg
**bg*
r****
ob*yo
****y

[output]
*-*-*-r.g
|.......|
*.*-b.g-*
|.|......
r.*.*-*-*
..|.|...|
o.b.*.y.o
|...|.|..
*-*-*.*-y

904 名前:デフォルトの名無しさん [2017/12/15(金) 09:30:54.91 ID:gDuLBiTf.net]
>>841
やってはないけど、そもそもこれ間違ってるのと、同じような発想でやるとしても
全ての素数での分類ではなく、3分割くらいのほうが効率がいいのと、
Σ (2の倍数) + Σ (3の倍数かつ2の倍数でない) + Σ (2と3で割り切れない) 
分割する事もなく、N項の和だとしたらNの階乗か分数をなくせる最小公倍数かけてもいい。それだと掛け算もしくは割り算がいくつも出てくるが。

905 名前:デフォルトの名無しさん [2017/12/16(土) 14:04:43.43 ID:+Cq6iaDY.net]
>>871
等幅フォントで表示しているエディタにコピペしてようやっと何を言わんとしているか分かった。
それってマスとマスの間に - または | を入れて繋ぐってことでいいんだよね? で、つながない所がピリオドだと。
(まあ等幅フォントのASCIIでやるならそれしか方法ないとは思うけど)。

906 名前:デフォルトの名無しさん [2017/12/16(土) 14:07:59.25 ID:+Cq6iaDY.net]
しかしピリオドは

**
**

の時に

*.*
...
*.*

のようになって中央のピリオドが本来なら不要なものになるわけだが、それはスペースでなくても良いのかな?
まあただの幅合わせだからどうでもいいものではあるが。

907 名前:デフォルトの名無しさん mailto:sage [2017/12/17(日) 12:04:31.10 ID:V69L7+t+.net]
>>801 の方法で出来ると書いてるけど
結局誰もやってないのか

個人的には(高速には)出来ないと思っている

908 名前:デフォルトの名無しさん mailto:sage [2017/12/17(日) 12:18:14.72 ID:V69L7+t+.net]
>>871
課題じゃなくて
単にソルバーの作成依頼でしょ

909 名前:デフォルトの名無しさん mailto:sage [2017/12/17(日) 17:50:05.54 ID:3PMrWzl3.net]
無理に線引かないでrだのgだので埋めた方がわかりやすいと思うがな
すべてのマスを埋めなければ

910 名前:ならないルールが抜け落ちてるみたいだから
実は別物のゲームで交差があるとかなったらそうはいかないが
[]
[ここ壊れてます]



911 名前:デフォルトの名無しさん [2017/12/17(日) 20:33:27.61 ID:0HU8GFa9.net]
ブレゼンハム的なやつって、始点と傾き(と区間や境界等で決まる明示されない終点)が
与えられた際に、終点座標を求めてから始点に向かうのってアリなんだろうか?

912 名前:デフォルトの名無しさん [2017/12/18(月) 08:21:39.40 ID:T+ClDj4W.net]
ここでやるには問題がでかすぎ
100分割してほしい

913 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 14:37:42.61 ID:/SOyyWKP.net]
>>871 Ruby
https://ideone.com/EOj9mz
ただし解は1つでありかつ線が通らないマスは無いことを前提とする
問題はここから引用:→www.nikoli.com/ja/puzzles/numberlink

914 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 14:38:13.66 ID:/SOyyWKP.net]
あ、あと出力方法は自分好みに適当にいじってる

915 名前:デフォルトの名無しさん mailto:sage [2017/12/21(木) 15:58:54.33 ID:jrnuCabF.net]
訂正
ただし解は1つでありかつ線が通らないマスは無いことを前提とする
ではなく
解が存在すればすべての解は全てのマスを通ることを前提とする

916 名前:デフォルトの名無しさん [2017/12/22(金) 19:30:58.88 ID:PPoMR9m8.net]
お題
22の分割(たとえば3+3+5+8)のうち
分割したそれぞれの数の逆数の和が1になるものを求める

917 名前:デフォルトの名無しさん [2017/12/22(金) 19:39:05.90 ID:PPoMR9m8.net]
早速間違えましたすみません
3 +5 +6 +8
でした

918 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 20:06:25.02 ID:FRcsVGN9.net]
>>883 ruby
f=->n,k{n==1?[[k]]:(1..k/n).flat_map{|i|f[n-1,k-i].map{|j|[i,*j].sort}}.uniq}
(1..22).each{|i|f[i,22].each{|a|p a if a.map{|e|1r/e}.sum==1}}

#=>[2, 4, 8, 8]
[2, 5, 5, 10]
[3, 3, 4, 12]

919 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 21:21:23.60 ID:Mb+deFNF.net]
C++で書いたけど、オセー。
デバッグ大変だ。
うーん。困ったなぁ。

920 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 22:04:05.10 ID:Mb+deFNF.net]
https://ideone.com/3ZWKv1
C++。こんなコード書いてみたけど、無理ゲー。
ちょっと厳しいなぁ。最近解けてないなぁ。
ちなみにデバッグ不完全なのであしからず。



921 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 22:16:42.15 ID:cfNB9eDL.net]
こういう数学的な問題を解くにはやっぱりプログラミング以前に数学を勉強した方がいいのでしょうか?

922 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 22:23:25.38 ID:Mb+deFNF.net]
>>888
数学は大事だよー。
俺数学出来ないから、解けない問題がそれなりにある。
算数では限界だ〜〜。
まぁ、数学とプログラミングって習得時はオーバーラップするところが少ないから融合するまでちょっと大変かな。
でも数学は強力なツールです。

923 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 22:40:51.06 ID:wxhiocJz.net]
一般論でいえば必要だろうけど>>883なんて全部列挙したところで計算量はたかが知れてるし
目下必要なのは論理学的思考能力なのでは

924 名前:デフォルトの名無しさん mailto:sage [2017/12/22(金) 22:51:38.40 ID:rSDEoHGj.net]
>>883 Java
https://ideone.com/WiMkNl

22くらいなら大丈夫だけど桁が増えると(´・ω・`)

925 名前:デフォルトの名無しさん mailto:sage [2017/12/23(土) 10:08:16.78 ID:t1pvAVGb.net]
お題
52をいくつかの自然数に分解して
それらの最小公倍数を最大化せよ

926 名前:デフォルトの名無しさん mailto:sage [2017/12/23(土) 10:30:51.64 ID:NDYwz7Jw.net]
分解って、積じゃなくて和で良いんだよね?
数学の知識を使うと一瞬だけど

927 名前:デフォルトの名無しさん [2017/12/23(土) 10:47:21.72 ID:xQ13BTQc.net]
>>892
2*3*5*7*11*23

928 名前:デフォルトの名無しさん mailto:sage [2017/12/23(土) 10:51:04.98 ID:NDYwz7Jw.net]
>>894
ダメだろ

929 名前:デフォルトの名無しさん mailto:sage [2017/12/23(土) 10:54:01.61 ID:NDYwz7Jw.net]
数学の知識が無いなら素直にコンピューターの力を借りなさ

930 名前: []
[ここ壊れてます]



931 名前:デフォルトの名無しさん mailto:sage [2017/12/23(土) 11:07:49.77 ID:afY4COyy.net]
そもそも数学で簡単にとけない問題を力わざでとくための計算機だろ

932 名前:デフォルトの名無しさん mailto:sage [2017/12/23(土) 11:20:55.96 ID:2Y/dvvuZ.net]
>>894
よくわからんが52の場合は
180180 [3, 4, 5, 7, 9, 11, 13]
ということらしいぞ

933 名前:デフォルトの名無しさん [2017/12/23(土) 11:22:52.27 ID:TLP4YLw7.net]
2+3+5+7+11+13+11=52

934 名前:デフォルトの名無しさん mailto:sage [2017/12/23(土) 11:23:44.11 ID:ZIVZRbx3.net]
C++17発行されたから開発環境がさっさと対応してGCDくらい使えるようになりたい。

935 名前:デフォルトの名無しさん mailto:sage [2017/12/23(土) 20:45:26.14 ID:PT43Bq9S.net]
>>768の問題で0<=b<10,0<c<10という制限がついた時
移動を何回か繰り返すと必ず元に戻るんだけど
その回数はbには無関係にc,10-c,10の最小公倍数で
okかな?

936 名前:デフォルトの名無しさん mailto:sage [2017/12/23(土) 23:54:31.73 ID:PT43Bq9S.net]
一回の移動ではd=1ね。
ま、その制限を付けなくともd,c,10-c,10の最小公倍数になるんだろうけど

937 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 06:15:12.28 ID:C5ELqEVz.net]
>>901-902
10-c,10の最小公倍数じゃね?

938 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 12:14:01.21 ID:PCWcyI8B.net]
>>899
>>896

939 名前:デフォルトの名無しさん [2017/12/24(日) 13:55:05.53 ID:aCkD6VOe.net]
数学云々言ってる奴って、何故かその成果見せないよな。
俺でも出来そうなFUD、いやマウントかな。

940 名前:デフォルトの名無しさん [2017/12/24(日) 16:16:06.49 ID:7ASFTRv4.net]
ていうか、計算機はどちらかというと算数だよな。
数学は公式とか証明とか、そういう手順みたいなものを考えるわけで、プログラミングに近い。
コンピュータは作られたプログラムに従って計算結果を出すだけ。
もちろんプログラムそのものをコンピュータに作らせることも可能だけどね。これは次元が違う話だよね。



941 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 20:21:20.17 ID:TJswah5E.net]
プログラムには算数と三角関数とかがあればいい
あとN進法

942 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 22:49:45.08 ID:ke4WkGne.net]
行列演算とか諸々の配列操作関数がないと無理だな

943 名前:デフォルトの名無しさん mailto:sage [2017/12/24(日) 23:49:37.37 ID:HHMC0VFW.net]
では簡単なお題を
bを底とする値vを、2〜36進数に変換し表示してください。
なお、bは2〜36の整数、vは0以上の整数とし、不正な入力はないものとしてよい。
また、底と値の区切り文字は入出力ともに特に問わない。
[入力例]
16 deadbabe
[出力例]
2#11011110101011011011101010111110
3#100122100210210001200
4#3132223123222332
5#30122344134421
6#1414413520330
7#161402600604
8#33653335276
9#10570723050
10#3735927486
11#1647919685
(略)
27#9h9ll1i
28#7l225hi
29#6842o9l
30#53m7kg6
31#46f9hir
32#3farelu
33#2tf7mor
34#2e7m366
35#214kbpb
36#1ps9w3i

944 名前:デフォルトの名無しさん mailto:sage [2017/12/25(月) 00:09:45.09 ID:3pQBp6tI.net]
>>909 Java 手抜き実装二つ
https://ideone.com/jybq1N
https://ideone.com/Wm8OQ2

945 名前: mailto:sage [2017/12/25(月) 00:32:41.94 ID:LEWwY/wL.net]
>>909
c++old mevius.2ch.net/test/read.cgi/tech/1434079972/29

946 名前:デフォルトの名無しさん mailto:sage [2017/12/25(月) 02:44:06.33 ID:FXcNW9u1.net]
>>909 ruby
n=eval"%2$p.to_i %1$d"%"16 deadbabe".split
(2..36).each{|i|puts"%d#%s"%[i,n.to_s(i)]}

947 名前:デフォルトの名無しさん mailto:sage [2017/12/25(月) 04:27:01.50 ID:Cnt90MG5.net]
>>909
https://ideone.com/dxqIrP
C++。まぁこれくらいなら算数でも解ける範囲や

948 名前:な。
ただしコードがバグってないとは言ってない。へへ。
[]
[ここ壊れてます]

949 名前:デフォルトの名無しさん [2017/12/25(月) 06:21:01.65 ID:P1JMpVx5.net]
>>909 lisp
https://ideone.com/6D7LRp

950 名前:デフォルトの名無しさん [2017/12/25(月) 12:28:00.12 ID:Lg9qxqUa.net]
>>909
Kotlinらしくしてみようとはしたが、あまりにも短く、更に俺がまだよくKotlinを知らないためにこんな風になった。
https://paiza.io/projects/BpAXUQuDCaOSD6Q6GN4O8A
肝心な所はJavaとほぼ同じ。



951 名前:デフォルトの名無しさん mailto:sage [2017/12/25(月) 19:56:50.93 ID:IEH/2als.net]
>>909 F#
https://ideone.com/rRZ949

952 名前:デフォルトの名無しさん mailto:sage [2017/12/26(火) 10:23:38.85 ID:Hd2qVaf/.net]
>>909 Squeak/Pharo Smalltalk

| n |
n := '16 deadbabe' replaceAll: Character space with: $r; asNumber.
2 to: 36 do: [:i | Transcript cr; show: i; space; show: (n radix: i) asLowercase]

953 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 04:53:27.57 ID:N8L362th.net]
お題を捏造してやるぜ。
アンサーが42になる式を捏造せよ。という数学パズル。
小難しい式をでっち上げた人が優勝。
算数から数学、物理まで式になってればすべての手法が使用可能。統計とかでもいいよ。
制約は答えが42になることのみ。
解けるものはいるか?

954 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 04:55:12.31 ID:N8L362th.net]
あー、忘れてた。
ちゃんと検算して答えを確認できること。
俺、算数しかできないから、各種サービスにかけて検算できるのが望ましい。

955 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 04:57:55.88 ID:8O6aNcDe.net]
ぷろぐらみんぐ・・・?

956 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 05:01:29.85 ID:N8L362th.net]
ベンチマーク的な感じだな。
たまには本気を出したいだろ?お前ら。

957 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 05:04:57.45 ID:N8L362th.net]
当たり前だが、必要な関数が標準ライブラリになかったら自作すること。

958 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 07:10:57.10 ID:s+AqweGp.net]
>>918 ruby
require 'open-uri'

expr = "the Answer to the Ultimate Question of Life, the Universe, and Everything"

uri = "https://www.google.com/complete/search?output=toolbar&q=%s"
puts open(format(uri, expr.gsub(' ', '%20'))).string[/data="\K[^"]*/]
#=> 42

959 名前:デフォルトの名無しさん mailto:sage [2017/12/28(木) 07:34:31.76 ID:N8L362th.net]
>>923
元ネタはそれ。正解の一端。

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みたいな感じだな。
うーん。名案だとは思ったのだけど。むむむ・・・。






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

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

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