2ch勢いランキング アーカイブ

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


デフォルトの名無しさん [sage] 2018/01/01(月) 11:15:04.40:2Vr1CPKy
プログラミングのお題スレです。

前スレ
プログラミングのお題スレ Part9
ttps://mevius.5ch.net/test/read.cgi/tech/1480579110/">ttps://mevius.5ch.net/test/read.cgi/tech/1480579110/

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

2 名前:デフォルトの名無しさん
  ttp://ideone.com/
ttp://codepad.org/
ttp://compileonline.com/
ttp://rextester.com/runcode
ttp://runnable.com/
ttp://code.hackerearth.com/
ttp://melpon.org/wandbox
ttps://paiza.io/

宿題は宿題スレがあるのでそちらへ。
デフォルトの名無しさん [sage] 2018/01/01(月) 11:39:39.89:VmkM0MJM
お題
次の文章を縦書きに表示されるよう加工し出力してください

加工前:
謹賀新年 謹んで初春の お慶びを 申し上げます

加工後(例1):
申お謹謹
し慶ん賀
上びで新
げを初年
ま  春
す  の

加工後(例2):
ttps://i.imgur.com/pkLBsWi.png
デフォルトの名無しさん [sage] 2018/01/01(月) 12:01:10.83:N3PMPZ9z
乙 & あけおめ

Ruby
ttps://ideone.com/fRHA7Q
デフォルトの名無しさん [] 2018/01/01(月) 14:39:59.78:U26F8/ie

丁度それ俺も作ろうと思っていたところだが、丸とか点とか括弧とかどうしようかと思って、丁度いい文字ある?
(とりあえず考慮せずに横を縦にするだけのを作ろうとは思うが)
デフォルトの名無しさん [sage] 2018/01/01(月) 14:51:30.39:P8RPHdP6

括弧しかないけど
⌢⌣
デフォルトの名無しさん [sage] 2018/01/01(月) 15:47:21.75:N3PMPZ9z
それはもはやフォントの問題でしょ
デフォルトの名無しさん [sage] 2018/01/01(月) 17:34:08.30:2jFA1rWl
Python3
ttps://ideone.com/tt4dks
デフォルトの名無しさん [] 2018/01/01(月) 20:47:28.38:U26F8/ie

Kotlin
ttps://paiza.io/projects/oDqJR2FFDo0Ri4PEkPDMHg
デフォルトの名無しさん [sage] 2018/01/01(月) 22:22:03.28:2Vr1CPKy
Java
ttps://paiza.io/projects/0avjX3xX3JuluNidFqJhxQ
デフォルトの名無しさん [] 2018/01/02(火) 09:36:50.18:8EboTxzh

おお!凄い。そうやるとあのフレーム内に画像で出せるのか。知らなかった。
デフォルトの名無しさん [] 2018/01/02(火) 11:18:47.19:HRLyaEAj
お題:
標準数のE24系列を求める。
ttps://ja.wikipedia.org/wiki/%E6%A8%99%E6%BA%96%E6%95%B0

例えば、
f(0)=10、f(1)=11、f(2)=12
...
f(23)=91、f(24)=100、f(25)=110

配列を定数で初期化して表引きとかだと簡単過ぎるので、暦計算のツェラーの公式みたいな、
技巧的な方法を求む(でも表の大きさより長いコードは避けたい)。
ttps://ja.wikipedia.org/wiki/%E3%83%84%E3%82%A7%E3%83%A9%E3%83%BC%E3%81%AE%E5%85%AC%E5%BC%8F

発展的なお題:
上記の逆関数。例えば、
g(10)=0、g(11)=1、g(12)=2
...
g(91)=23、g(100)=24、g(110)=25
これも技巧的な方法を求む。
デフォルトの名無しさん [sage] 2018/01/04(木) 09:10:58.18:PjOI7aHa
うがー、曲線制御難しい。
ttps://ideone.com/F4QHpF
細かいところが近似しない。ダメだこりゃ。
ちょっとどんな曲線か一回プロットした方がイイなこれ。
細かい係数のつけかたがよくわからん。
デフォルトの名無しさん [sage] 2018/01/04(木) 09:59:21.12:PjOI7aHa

ttps://ideone.com/0kh4kb
C++。イデオンでは動かないや。
等幅フォントで見てね。
デフォルトの名無しさん [sage] 2018/01/05(金) 10:38:01.00:DBj0On7v
Ruby
f = ->n { (10*1.1**n).round - (n - n%9% 8*(n/7) + 1)/(n + 1) + (n - 1)%4/3*n/8*(13/(n + 1)) + 1 }
puts 24.times.map{|n| f[n] }*', '
#=>10, 11, 12, 13, 15, 16, 18, 20, 22, 24, 27, 30, 33, 36, 39, 43, 47, 51, 56, 62, 68, 75, 82, 91
デフォルトの名無しさん [sage] 2018/01/05(金) 10:58:26.97:cHsd4Bik

これマジ?できちゃったの?加速式がよくわからん。
すげー。
デフォルトの名無しさん [sage] 2018/01/05(金) 11:08:21.35:DBj0On7v
Ruby もう一個。トリビアルだけど
f = ->n{(10*9.1**(n/23.0)).round + n/10 - n/17 - n/20 - n/22 + n/23}
ttps://ideone.com/RH20K9
デフォルトの名無しさん [sage] 2018/01/05(金) 11:28:04.78:DBj0On7v
Ruby 逆関数
g = ->n{(10.4*Math.log(n/10.0)).round}
ttps://ideone.com/5S1Z0c
デフォルトの名無しさん [sage] 2018/01/05(金) 11:53:27.22:EvgbcVVm
どういう仕組みなの?
デフォルトの名無しさん [sage] 2018/01/05(金) 11:55:15.13:cHsd4Bik
近似式発明したんだろうけど、よくできたなぁ。
俺はさっぱりだったよ。
デフォルトの名無しさん [sage] 2018/01/05(金) 12:01:38.94:DBj0On7v
a_(n+1) ≒ a_n^ε (ε > 0) だkら
a_n ≒ a_0 ^ (n * ε)
n について解けば
n ≒ log(a_n)/(ε * log(a_0))
あとは愚直に調整しただけ
デフォルトの名無しさん [sage] 2018/01/05(金) 12:16:05.36:DBj0On7v
訂正
a_(n+1) ≒ a_n^ε (ε > 0) だから
a_n ≒ a_0 * C ^ (n * ε) (C, > 0)
n ≒ log(a_n/a_0)/(ε * log(C))
デフォルトの名無しさん [sage] 2018/01/05(金) 17:36:54.10:XwioZimh
定義が等比数列を丸めたものなんだから、等比数列で近似するのが妥当ということか
11' [sage] 2018/01/07(日) 12:51:35.88:ItKItkim
f(n+24)=10*f(n)
及び
g(10*m)=24+g(m) 但し m>0
を満たす様に修正(多分そんなに難しくない筈)。
デフォルトの名無しさん [sage] 2018/01/07(日) 13:51:43.22:CHs7O0uQ
そうですか。
デフォルトの名無しさん [sage] 2018/01/07(日) 14:29:47.66:C0bXlb1w
Ruby
f_origin = ->n{(10*1.1007**n).round + n/10 - n/17 - n/20 - n/22 + n/23}
g_origin = ->n{(10.4*Math.log(n)).round - 24}
f = ->n{10**(n/24) * f_origin[n%24]}
g = ->m{e = Math.log10(m).floor - 1; 24*e + g_origin[m/10**e]}
ttps://ideone.com/uegzKO
デフォルトの名無しさん [sage] 2018/01/07(日) 14:59:36.86:C0bXlb1w
gは殆ど修正する必要なかったわ
g = ->m{(24*Math.log10(m)).round - 24} でおk
ttps://ideone.com/bHYGiS
デフォルトの名無しさん [sage] 2018/01/07(日) 17:48:55.50:C0bXlb1w
Ruby 最後に、別パターン
f = ->n{
r = n%24
10**(n/24) * (10**(1 + (r*43 - r/14*13 - r/17*13 - r/22*4)/1000.0)).round
}
g = ->m{(24*Math.log10(m)).round - 24}

ttps://ideone.com/HP1cTR
デフォルトの名無しさん [sage] 2018/01/11(木) 23:34:49.67
お題:「.」でランダムな形状のウンコのAAを生成せよ。
デフォルトの名無しさん [sage] 2018/01/12(金) 01:31:40.65:tSEZeyzM
うんこの定義を示して。
デフォルトの名無しさん [sage] 2018/01/12(金) 10:00:57.50:HcOFRrsq

それは疑素数じゃないよ
デフォルトの名無しさん [sage] 2018/01/12(金) 10:01:20.49:HcOFRrsq
ごめんなさい誤爆
デフォルトの名無しさん [sage] 2018/01/12(金) 10:07:30.82
ウンコの定義:自由
デフォルトの名無しさん [] 2018/01/13(土) 00:20:54.58:ZTdbWh7g
. ←鹿の糞
デフォルトの名無しさん [sage] 2018/01/14(日) 12:20:59.96
お題:5chの安価を番号のリストに変換しろ

[1]
[1,2,3]
,3 [1,3]
,5,9-10 [1,2,3,5,9,10]

ただし安価は1〜1000までとする
デフォルトの名無しさん [sage] 2018/01/14(日) 12:28:50.16:oDSLdmUy
Ruby ワンライナー
ttps://ideone.com/GEkqeN
デフォルトの名無しさん [sage] 2018/01/14(日) 13:38:10.89:zRc3xs8X

Perl
ttps://paiza.io/projects/6SNE2GI3wWlaqtf3cM2RgQ
何も考えずに文字列変換して eval。
デフォルトの名無しさん [] 2018/01/14(日) 14:04:24.59:yhrEjmBP
前のやつだが、答え、もしくは決定版といえるコードは出てきてないとおもうんだが・・・


自然数Nに対して、平面上の円でその円周上の整数点がちょうどN個となる円の最小半径を求めよ。
デフォルトの名無しさん [] 2018/01/14(日) 14:07:09.53:5Za2FGI3
JavaScript
ttps://ideone.com/Q6S3dL
デフォルトの名無しさん [sage] 2018/01/14(日) 15:46:06.63:zRc3xs8X

Kotlin
ttps://paiza.io/projects/OpmVDw9teJLEpGSuuVR6FQ?language=kotlin
Perl版よりもまともに考えました。
デフォルトの名無しさん [sage] 2018/01/14(日) 19:13:35.01

原点が中心?
デフォルトの名無しさん [sage] 2018/01/14(日) 20:00:35.07
お題:5chの安価を番号のリストに変換しろ Part.2
安価の番号nが1≦n≦99999までのものを有効とする
重複は許さない。結果のリストは昇順。安価に負の数は含まれないものとする。

[1]
[1,2,3]
,3 [1,3]
,5,9-10 [1,2,3,5,9,10]
>>000000-000000001 [1]
[]
>>0-2,99998-100000 [1,2,99998,99999]
,0-3,4,5,6,4,2-8 [2,3,4,5,6,7,8]
デフォルトの名無しさん [sage] 2018/01/14(日) 20:06:11.72
追記ですが とかの処理過程でバカデカいメモリを使うことがないようにしてほしいです。(スレの趣旨に反するけどnode.jsで実装できるものがいいです)
デフォルトの名無しさん [] 2018/01/14(日) 20:30:18.16:OECcG/Oa
>スレの趣旨に反するけどnode.jsで

あっ・・・
デフォルトの名無しさん [sage] 2018/01/14(日) 20:43:19.38
node.jsにもある関数やデータ構造だけ使っていれば言語は何でも大丈夫です
デフォルトの名無しさん [sage] 2018/01/14(日) 22:26:14.90:olnfEEGn
頑張ってください。
デフォルトの名無しさん [sage] 2018/01/14(日) 23:55:46.02:yLMdIfgu
誰も出来ないのか...すまん
デフォルトの名無しさん [sage] 2018/01/15(月) 00:32:45.08:u3cYdd8C
ここは宿題スレじゃねー。
デフォルトの名無しさん [sage] 2018/01/15(月) 00:37:10.99:uINOZsXa
宿題じゃないです
デフォルトの名無しさん [sage] 2018/01/15(月) 00:41:45.56:u3cYdd8C
とにかく、すれ違いだ。
デフォルトの名無しさん [sage] 2018/01/15(月) 00:49:40.58:uINOZsXa
マ?すまん
デフォルトの名無しさん [sage] 2018/01/15(月) 11:45:13.51:Z2TXOko+
マ?じゃねえよアホ
パクる気満々じゃねえか
デフォルトの名無しさん [] 2018/01/15(月) 12:00:51.10:Vl/A/sOK
マんマん
デフォルトの名無しさん [sage] 2018/01/15(月) 12:34:20.42:H/ZiF0K3

え、そういうスレじゃないんだ
デフォルトの名無しさん [sage] 2018/01/15(月) 12:36:57.99:H/ZiF0K3
要するにめんどくさいから誰もやらんってことやな
んで、適当な言い訳で自分を正当化とな
ま、そんなもんだろうと思っとたわ
誰かが喜んで書いてくれると期待した俺がバカでしたよっと
デフォルトの名無しさん [] 2018/01/15(月) 12:49:45.27:Vl/A/sOK
ああ。何れにしても君が馬鹿であることには代わりがない。合掌。
デフォルトの名無しさん [sage] 2018/01/15(月) 12:58:44.28:H/ZiF0K3
ズコーッ´д` ;
デフォルトの名無しさん [sage] 2018/01/15(月) 13:02:35.28:vArPpzem
こんな簡単なことすら自分で書けず。剰えスレタイとテンプレも読めないとは
すがすがしいほどに頭が悪いな
デフォルトの名無しさん [sage] 2018/01/15(月) 13:05:45.85:H/ZiF0K3
んじゃ、node.jsで実装できるものってのは無しで
デフォルトの名無しさん [sage] 2018/01/15(月) 13:09:11.57:H/ZiF0K3
簡単なんでしょ?頼むよ
どこもテンプレに反してないしよぉ
デフォルトの名無しさん [sage] 2018/01/15(月) 13:21:03.25:H/ZiF0K3
ビットコインあげるからやってくれ
デフォルトの名無しさん [sage] 2018/01/15(月) 13:35:06.48:u3cYdd8C
頭の中ではコードできてるけど、態度が気に入らないので書く気はない。
ちなみに、方針としては、レンジだけ持ってればいいんだから、ペアで頭と尻尾保管した配列作ればいいだろ。
デフォルトの名無しさん [sage] 2018/01/15(月) 13:36:47.80:H/ZiF0K3
そんな小学生みたいなこと言ってないで貼ってくれよ
コインもあるんだしよぉ
デフォルトの名無しさん [sage] 2018/01/15(月) 13:37:54.77:u3cYdd8C

コーディングもできないのに野望を抱くのが愚か。
デフォルトの名無しさん [sage] 2018/01/15(月) 13:39:23.71:H/ZiF0K3
ちなみに書き忘れてたけど0.004Btcね
コインはたくさんあるし
デフォルトの名無しさん [] 2018/01/15(月) 14:50:02.99:kurVIvkx

これの整数点をできるだけ早く求めるのをやってみる。

( ax + b )^2 + ( ay + c )^2 = R
デフォルトの名無しさん [sage] 2018/01/15(月) 15:45:58.14:u3cYdd8C
 
ttps://ideone.com/xxe0k4
C++。これくれてやるからカエレ。ちなみにライセンスはGP v3な。
デバッグはじぶんでやれや。
デフォルトの名無しさん [sage] 2018/01/15(月) 15:46:26.19:u3cYdd8C

ライセンスはGPL v3な。
デフォルトの名無しさん [sage] 2018/01/15(月) 15:47:13.57:aMLeGifE

ttp://mevius.2ch.net/test/read.cgi/tech/1434079972/
デフォルトの名無しさん [sage] 2018/01/15(月) 15:52:35.03:H/ZiF0K3
ウォレットのアドレスくれ
コード理解したら送る
デフォルトの名無しさん [sage] 2018/01/15(月) 15:56:46.32:u3cYdd8C

いらねーから、二度とくんな。
ライセンスは守るように。
デフォルトの名無しさん [sage] 2018/01/15(月) 16:09:27.25:H/ZiF0K3
ライセンスとかめんどくせえしおまえのソースコードなんか誰も使わねえよ
無駄な労力乙
おめーらがムカつくから意地でもコード書かせたかっただけな笑
ザッマw
デフォルトの名無しさん [sage] 2018/01/15(月) 16:15:02.63:u3cYdd8C

これくらい誰でもかけるわ。お前以外は。
デフォルトの名無しさん [sage] 2018/01/15(月) 16:16:18.48
こんなん俺でも書けるわボケ
めんどくせえからここに放り込んでみたが失敗した
デフォルトの名無しさん [sage] 2018/01/15(月) 16:17:01.08:u3cYdd8C
無駄だったね。じゃ、がんばって。
デフォルトの名無しさん [sage] 2018/01/15(月) 16:17:16.38
node.js版のライセンスなしが欲しかったのに
デフォルトの名無しさん [sage] 2018/01/15(月) 16:18:28.46:u3cYdd8C
そうですか。
デフォルトの名無しさん [sage] 2018/01/15(月) 16:42:42.44:bHHfeTSI
ライセンスが無いのは最も厳しいライセンス
あらゆる許可が与えられていないからパクったら駄目だぞ
デフォルトの名無しさん [sage] 2018/01/15(月) 16:47:21.25
そうですか。
◆QZaw55cn4c [sage] 2018/01/15(月) 17:46:44.26:aMLeGifE
,41
ttp://mevius.2ch.net/test/read.cgi/tech/1434079972/33
デフォルトの名無しさん [] 2018/01/15(月) 17:50:27.29:PFTeeq7k
ま、俺はKotlin学習中だから、丁度良いのでゆっくり作ってるよ。忘れた頃に出来るであろう。
デフォルトの名無しさん [sage] 2018/01/15(月) 17:51:46.97:u3cYdd8C

これって格子暗号ってやつかな?
デフォルトの名無しさん [sage] 2018/01/15(月) 17:57:48.20:u3cYdd8C

JSはタイプレスだからテンプレート使ってもばち当たらない気がする。
デフォルトの名無しさん [sage] 2018/01/15(月) 18:20:04.44
てす
デフォルトの名無しさん [sage] 2018/01/15(月) 18:27:38.89
このパターンもあったか
ちんくるだと >>n-[レス数超過] パターン は何も表示しない以外はちゃんと動作するな
デフォルトの名無しさん [] 2018/01/15(月) 20:39:01.35:kurVIvkx

格子だが、格子暗号ではないようだ。知らずに調べたけど。そこで書いてあった現行の楕円関数暗号のほうが理論的には近いようだ。整数点を数えるという点について。


格子暗号の実用化に向けて
ttps://www.nict.go.jp/publication/NICT-News/1303/images/02/p02_img4.jpg
ttps://www.nict.go.jp/publication/NICT-News/1303/02.html


楕円曲線と有理点
ttp://suri-joshi.jp/sj/wp-content/uploads/2016/03/03_26_01.gif
楕円曲線の有理点の演算
ttp://suri-joshi.jp/sj/wp-content/uploads/2016/03/03_26_02.gif
ttp://www.suri-joshi.jp/enjoy/rational_points_of_elliptic_curve/


楕円曲線の整数点
1970年代,フェルマーの問題を征するために必要となるのが楕円曲線であることが明らかになりました.
楕円曲線には,楕円曲線と三点で交わる直線で,そのうちの二つの交点の座標がわかれば他の一点の座標も計算でき,
二つの点の座標が有理数ならば,他の一点の座標も有理数であるなどの性質をもっています.
ところで,楕円曲線:y^2=x^3+1には無限に多くの整数点があるでしょうか,あるいは一つでも整数点はあるでしょうか.
実は,これには整数点は(2,±3),(0,±1),(−1,0)の5つしかありません.
ttp://www.geocities.jp/ikuro_kotaro/koramu/2652_k1.htm


今日は、前回紹介した「合同ゼータ関数のリーマン予想(ヴェイユ予想)」の応用を紹介したいと思います。
楕円曲線の ハッセの定理 と呼ばれるものです。ハッセの定理によって、 上の楕円曲線の有理点の個数を見積もることができます。
実はこのハッセの定理は、合同ゼータ関数のリーマン予想の帰結となっていて、今日はこのことについて解説したいと思います。
ttp://tsujimotter.hatenablog.com/entry/hasses-theorem
デフォルトの名無しさん [sage] 2018/01/15(月) 21:12:20.18:u3cYdd8C

へぇ。なるほどわからん。
でも、円も楕円の内ってことなら無いって可能性もあるのか?とか。
楕円暗号は辞書と併用するとわけわからんな。

爆発です。
デフォルトの名無しさん [] 2018/01/16(火) 02:44:51.59:hWpj+IiO

やっとできた。Kotlin。
ttps://paiza.io/projects/4yVCO5JcqQwIn4QLt63uuQ
なんだかすごく長くなってしまったよ。きっとよくわかる人が作ると物凄く短くなるんだろうなあ・・・。
◆QZaw55cn4c [sage] 2018/01/16(火) 12:34:48.36:VgOvX4GN
,41,83,84
ttp://mevius.2ch.net/test/read.cgi/tech/1434079972/34
デフォルトの名無しさん [sage] 2018/01/17(水) 07:05:39.08:errnxjlD
こんなのが勃ってるぞ

QZは自作自演を停止せよ
ttp://mevius.5ch.net/test/read.cgi/tech/1514820197/
デフォルトの名無しさん [sage] 2018/01/17(水) 16:53:26.57:qYzFevXN
宿題スレの変態に文句あるならスレ落せって言ってるのにかきこむから落ちない。
じぶんでも保守しといて自演扱いだから矛盾してる。
ちなみに俺はQzの人じゃないよ。
前に解答書いたらQzの人扱いされた。
今北産業 [sage] 2018/01/21(日) 18:29:37.95:XQq46tQk
>>42 Perl5
ttp://https://ideone.com/WY0Jb6">ttps://ideone.com/WY0Jb6

※perlのfor ... はiteratorに最適されるので
今北産業 [sage] 2018/01/21(日) 18:37:01.12:XQq46tQk
は早とちりした

の要件
・リストに変換
・重複は許さない
・結果のリストは昇順
を満たしていないや
テヘペロ
今北産業 [sage] 2018/01/22(月) 00:57:45.27:ksg0WZZw
,92 修正

>>42 Perl5
ttps://ideone.com/fp3VSt

これで良い筈。
デフォルトの名無しさん [sage] 2018/01/22(月) 02:08:53.18:FhCwy9L9
,93
0は範囲外w
デフォルトの名無しさん [sage] 2018/01/22(月) 05:52:35.20:YeXv1dis

[99999]

貼るのならせめて仕様どおりの実装かどうか最小限のチェックをしてから貼れや
最初の回答なら多少違ってても中間報告っぽくして誤魔化したりしつつ他人のアイデア盗んだり出来るけど二番煎じではそれは無理。
今北産業 [sage] 2018/01/22(月) 22:53:07.25:xL0hK3i2
オレがおっちょこちょいで確認不足だった。

>>42 Perl5
ttps://ideone.com/LDJrW8
今北産業 [sage] 2018/01/22(月) 23:05:50.55:xL0hK3i2

貼ってから気がついたけどSTDINのテストデータでは問題を起こさないが
7行目が
$a[1] = $a[0] unless $a[1];
だと$a[1]=0のときに誤動作の元だな…
$a[1] //= $a[0];
にすべきでした。
愛知人 [] 2018/01/25(木) 16:10:27.67
その質問の主だが結局こうしたでな
ttps://ideone.com/SxLQUO
デフォルトの名無しさん [sage] 2018/01/25(木) 19:38:18.47:+OI4mbzo

アンカーの先頭と終端のペアを持つってアルゴリズムさ、
と同じっぽいのでGPLv3に引っかかってないか?
愛知人!id:ignore [] 2018/01/25(木) 20:21:47.54:oIA0WROS
そうなん?俺はそんなの読んでないけどな。
デフォルトの名無しさん [sage] 2018/01/25(木) 23:36:56.13:mFGjgyfD
アルゴリズムが同じだとして何か問題?
デフォルトの名無しさん [sage] 2018/01/26(金) 03:04:21.26:UBBQh08e
アルゴリズムはフリーだよな
デフォルトの名無しさん [sage] 2018/01/26(金) 03:47:46.91:mrmbkYhg
あれ?アルゴリズムってライセンスに乗らないの?
デフォルトの名無しさん [sage] 2018/01/26(金) 03:52:53.09:mrmbkYhg
ttp://www.orsj.or.jp/~wiki/wiki/index.php/《アルゴリズム特許》
アルゴリズム特許が取れる以上ライセンスに乗ると思うけど。
デフォルトの名無しさん [sage] 2018/01/26(金) 03:57:51.29:mrmbkYhg
ttps://ja.wikipedia.org/wiki/ソフトウェア特許
『「発明」とは、自然法則を利用した技術的思想の創作のうち高度のものをいう』
アルゴリズムの中で自然的なモノは特許取れないけど、創意工夫の入ってるものは取れる。
そこから考えて、アルゴリズムをライセンスするということは普通にあると思う。
デフォルトの名無しさん [sage] 2018/01/26(金) 04:05:42.65:mrmbkYhg
ttps://www.catch.jp/oss-license/2011/11/19/gpl2bsd/
ここだと大丈夫になってるなぁ。
まぁ、特許取ったわけじゃないから翻訳はOKなのか。
ふむふむ。
デフォルトの名無しさん [sage] 2018/01/26(金) 04:11:50.53:mrmbkYhg
ttp://kenakamatsu.tumblr.com/post/55869087710/二次創作同人小説が合法って本当
これだな。ほぼ内容の同じ2次小説。
偶然似たのだいいわけすれば逃げれるのだとさ。ふむふむ。
お題出しといて読んでないとは思えないけど。
デフォルトの名無しさん [sage] 2018/01/26(金) 04:14:37.18:mrmbkYhg
まぁいいか。著作権に引っかかってる可能性が微レ存とだけは言えるかな。
GPLってそうなのか。翻訳されちゃうと取れちゃうんだなぁ。ふむふむ。
◆QZaw55cn4c [sage] 2018/01/26(金) 10:06:06.80:2nQXk4BN
ソフトウェア特許には異論が多いよ
つカーマーカー特許

特許は著作権とは別で、特許申請側がお金を払う必要がある
ライセンスはどちらかというと著作権の側
愛知人 [] 2018/01/26(金) 11:20:40.97
C++読めん
長すぎて読む気すら起きん
デフォルトの名無しさん [] 2018/01/26(金) 15:41:03.21:lz5gZOTM
新しいお題

Base64への変換と逆変換

Base64の仕様は下記参照
ttps://ja.m.wikipedia.org/wiki/Base64
デフォルトの名無しさん [] 2018/01/26(金) 16:44:25.72:WGHyQmfj
>Base64への変換と逆変換

昔、必要になって自作したことがあったが
いまどき使うんかな
デフォルトの名無しさん [sage] 2018/01/26(金) 17:34:48.17:EG68/Csg
ruby
base64ライブラリ未使用
ttps://ideone.com/vYRY3F
111 [] 2018/01/26(金) 17:40:18.25:c2BX1X7C

意識的に使うことはあまりないかも知れない。使うとしてもライブラリあるから普通は自分で考える必要はない。
しかしお題としては簡単すぎず難しすぎず丁度良さそうな感じがしたので出してみた。
111 [] 2018/01/27(土) 03:53:53.42:ibqNKJrC
自分で作ってみた。Kotlin。
ttps://paiza.io/projects/DIOtmtRHfxiejGE2h589sQ
デフォルトの名無しさん [sage] 2018/01/27(土) 08:50:52.13:61JA97EI
数字があわねー。なんでやー。
デフォルトの名無しさん [sage] 2018/01/27(土) 08:51:39.94:61JA97EI
今作ってるんだけど、数が合わない。
サンプル間違えてるのかと思ったけどそうでもないようだ。
どうしたらええんや?
デフォルトの名無しさん [sage] 2018/01/27(土) 08:59:45.43:61JA97EI
ttps://ideone.com/bXrP3L
C++。途中まであってるのになんかうまく動かないよくわからない残骸。
もう無理ー。
結構丁寧に作ったんだけど、全然うまくいかない。
デフォルトの名無しさん [sage] 2018/01/27(土) 09:37:36.05:61JA97EI
ロジック変えてないのに書き方変えたら治った。
怖い怖い。
デフォルトの名無しさん [sage] 2018/01/27(土) 09:47:13.66:61JA97EI
ttps://ideone.com/QDl5p3
C++。メインロジック変えてないのになぜかバグがなくなった恐怖のコード。
なんでやー!!
デフォルトの名無しさん [sage] 2018/01/27(土) 10:34:28.86:61JA97EI
できたけど、イデオン落ちてる。
あーひどい目に合った。
デフォルトの名無しさん [sage] 2018/01/27(土) 10:41:15.68:61JA97EI

ttps://ideone.com/NhAocK
C++。完成。あーひどい目に合った。自業自得なのかは知らんけど。
今北産業 [sage] 2018/01/28(日) 00:57:39.34:Q5D0xdcE
 Perl5
ttps://ideone.com/G9kQkc

script言語のPerlで書いたけれど、
ASCII文字列のみならずバイナリデータもbase64にエンコードデコードできるように作った
デフォルトの名無しさん [sage] 2018/01/28(日) 01:41:35.62:xxBRO3qy
rust
ttps://ideone.com/2Ax53r
111 [sage] 2018/01/28(日) 04:59:53.26:bdrFjlI3
のプログラムは動作は同じだが少し修正した。
ほんのちょっとだけ無駄がなくなる。
124 [sage] 2018/01/28(日) 13:50:48.21:xxBRO3qy
rust
ttps://ideone.com/vZk4Oh
・flat_mapでちょっとだけスッキリ?
◆QZaw55cn4c [sage] 2018/01/28(日) 17:50:50.19:/LCgFVoW

ttp://mevius.5ch.net/test/read.cgi/tech/1434079972/35">ttp://mevius.2ch.net/test/read.cgi/tech/1434079972/35

結構難問みたいで、これまでの回答者の結果が同一にならない

>>115
コードを読み解けなかった、ごめんなさい


再現できました、ただし他の場合はためしていません


"12ab34cd56ef78" のデコードが再現できない

, 126
"0123456789"#$%&'()`=@" のデコードが再現できない
愛知人 [] 2018/01/28(日) 18:25:42.93:QV+bfV+F
その問題っておまえが出した?
デフォルトの名無しさん [] 2018/01/28(日) 18:42:27.46:UfNDpnrp
Base64 が難問なわけねーわ。

簡単簡潔だから採用され普及したんだし。
愛知人 [] 2018/01/28(日) 18:45:16.82:QV+bfV+F
ネタバレだけどC言語スレで「3バイトを4バイトに変換するだけ」って言ってたぞ〜
123 今北産業 [sage] 2018/01/28(日) 18:48:28.67:4hSG/ySR


>
> "12ab34cd56ef78" のデコードが再現できない

の「12ab34cd56ef78」のテストケースは、文字列としてBase64にエンコードしているのではない。
「12ab34cd56ef78」を16進とし、7byteのバイナリ列にしてEncodeしている。

それに対してあんたのjavaコードは「12ab34cd56ef78」を文字列としてBase64にエンコードしている。
だから、とエンコード結果が合わない。

しかし異様に長いな…
なぜかは、オレは調べないでおくけど。
123 今北産業 [sage] 2018/01/28(日) 18:49:59.25:4hSG/ySR
、スマソ誤記があった
誤 java
正 C++
◆QZaw55cn4c [sage] 2018/01/28(日) 19:09:24.53:/LCgFVoW

了解


>長いな
うん、ライブラリを知らずいちいち書いてるから長くなるのも止むを得ない
◆QZaw55cn4c [sage] 2018/01/28(日) 19:13:55.34:/LCgFVoW

出題者は私じゃありません
愛知人 [] 2018/01/28(日) 19:15:15.98:QV+bfV+F
ここまでに出てるやつってのアルゴリズム使ってるやつある?
123 今北産業 [sage] 2018/01/28(日) 19:24:07.36:4hSG/ySR

"ABCDEFG", "Hello, World!" は、藻前さんのエンコード結果であってるとおもうよ
111 [] 2018/01/28(日) 20:43:46.22:4RSN9gye

最初それで作ろうかと思ったが複雑になりそうだったので止めた。
結局レジスタ代わりの変数に8bitシフトして6ビット取り出すとか、
6ビットシフトして8ビット超えたら取り出すという方式にした。


読み取れなかった? C言語でも作ってるので気長に待ってて。
多分そちらはなんとなく分かるだろうと思う。
124 [sage] 2018/01/28(日) 21:00:32.08:xxBRO3qy
rust
ttp://https://ideone.com/sxPlp1">ttps://ideone.com/sxPlp1
・ちょっと部分的に整理
◆QZaw55cn4c [sage] 2018/01/28(日) 22:03:30.34:/LCgFVoW
お題: の系
1) base64 を実装せよ
2) base64 は 6 ビットごとに一文字を当てるが、これを@5ビットごとに、あるいはA3ビットごとに割り当てるように変更せよ
変換表は base64 の部分とせよ
base64 の実装コードから最小元の変更で済むように構成せよ
※デコード時の '=' の出力仕様は実装しなくともよい
デフォルトの名無しさん [sage] 2018/01/28(日) 23:14:42.76:xxBRO3qy
rust
ttps://ideone.com/LEjBFW
デフォルトの名無しさん [sage] 2018/01/28(日) 23:19:10.39:Q0fHNoLK

なんでコンピュータで奇数扱おうとするんですか〜。
個人的にはだけど、すごい気持ち悪い。
ぴったりはまらないから何個も変数マタグし。
デフォルトの名無しさん [sage] 2018/01/28(日) 23:22:37.93:Q0fHNoLK

は、3バイトを4分割してるよ。逆変換もしてるよ。
6bit*4で24ビットなのでちょうど3バイトだよ。
まぁ、エラー処理あってるかよくわかってないけど。
140 [sage] 2018/01/29(月) 00:30:27.71:ZvaF3IbW

ttps://ideone.com/MOd0La
・'='追加のバグ修正
今北産業 [sage] 2018/01/29(月) 01:26:52.75:4Ja8daQT
Perl5
ttps://ideone.com/82DbUR

幅が5や3のときに=を何個補完すべきか明確じゃなくなるので
=の追加は省いています。
今北産業 [sage] 2018/01/29(月) 01:52:00.25:4Ja8daQT
 バグってた。orz
6行目の$W-2は$W-1でなければならない。
この間違いにより幅5のときのABCDEFGのエンコード結果の末尾が1カラム欠ける。

修正版
Perl5
ttps://ideone.com/KNxABI
愛知人 [] 2018/01/29(月) 01:53:47.97:pcTu+bOr
ideoneは後から編集できるんだしコッソリ書き換えとけばよくね
デフォルトの名無しさん [sage] 2018/01/29(月) 01:59:30.35:F1m2sdEz
お題。
暇な人向け。
ボゴソートを実装し、処理が終わるか確認せよ。
ttps://ja.wikipedia.org/wiki/ボゴソート
発展お題として大体どれくらいの要素数までが現実的か確認せよ。

サンプル:ttps://ideone.com/Fb8x80
◆QZaw55cn4c [sage] 2018/01/29(月) 12:23:05.32:EdrsOOA2

ttps://ideone.com/WGZ2WG
12文字が限界でしたか…
愛知人 [] 2018/01/29(月) 15:58:00.28:pcTu+bOr

今更だけど
C言語
ttps://ideone.com/80cjOY
デフォルトの名無しさん [sage] 2018/01/30(火) 00:03:42.09:HSoIFMEj

参加してくれてありがとう。
俺のお題は不人気なんだよね。
どうでもいいお題ばかりだからだけど。
◆QZaw55cn4c [sage] 2018/01/30(火) 00:11:56.31:fLRARGcM

いえいえ、一度やってみたかったのです、みてのとおり手数はわずかですみました
コードを書くのは楽しいのに、そのネタがみつからず状況で渡りに船でした
それに私のお題も不人気で、それは過去ログが示しています
111 [] 2018/01/30(火) 00:35:59.04:9ZRSIjLC
をC言語で作ってみたものの、open_memstream()が使えるサイトが見つからず、
結局似たような機能ものを自作してしまいかなり長くなってしまった。orz
ttps://paiza.io/projects/9mjG00te6x5pMJTZzPF3Dw

直接 FILE * から一文字つづ読みながら変換した方が小さくなるな。
愛知人 [] 2018/01/30(火) 00:49:23.55:nQQmpnBb

C言語
ttps://ideone.com/02P7xy

11個でした。
デフォルトの名無しさん [sage] 2018/01/30(火) 00:58:03.51:HSoIFMEj

thank you for playing!
まぁ、乱数の質とかが問題になるような気がするのでその分布だときつそうだ。
111 [] 2018/01/30(火) 01:05:16.85:9ZRSIjLC

ほんのちょっと変更したらできた。ビット数変更は最初の B64BIT の定義を変えるだけ。今は3ビットになってる。
ttps://paiza.io/projects/aGQZdP5PKfNESdBXh3tHyw
今北産業 [sage] 2018/01/30(火) 01:49:35.30:dcSCjb3l

こういう実装は個人的に好みだな。
オレがCで書くならこれに近いイメージ。
encodeMap decodeMapはまったくの静的定数テーブルでもいいけど、
初期化コードで設定すればステートメントが減って見た目もすっきりする
かもね…
愛知人 [] 2018/01/30(火) 02:17:30.68:ZNnrL6O6
無駄な動作が一切ないもんな(多分)
111 [] 2018/01/30(火) 12:37:43.63:Hqo+QOWq
メモリを多く使って高速化するか、それとも使わずに普通に動かすかといった違いかな。
この程度のメモリは今時の普通のPCだと全く問題にならないが、組み込みでメモリがちょっとしか使えないとか、環境に応じて使い分ける必要がある。
愛知人 [] 2018/01/30(火) 13:14:13.97:nQQmpnBb
定数配列はフラッシュメモリに置いたままにできるからメモリ関係ないぞ
デフォルトの名無しさん [] 2018/01/30(火) 13:16:52.58:KYTb3auw
これやってる人いる? N=41とか難しいやつだったような。


自然数Nに対して、平面上の円でその円周上の整数点がちょうどN個となる円の最小半径を求めよ。
111 [] 2018/01/30(火) 13:56:11.56:Hqo+QOWq

問題の意味がわからない。
デフォルトの名無しさん [] 2018/01/30(火) 14:25:08.29:KYTb3auw
XY平面上に適当なサイズの円をおいたとき、
その円周上でX座標、Y座標もともに整数となる点の個数が定まる。
たとえば、中心(0,0)で半径1の円ならば、整数点は4のはず。(1,0) (-1,0) (0,1) (0-,1)
デフォルトの名無しさん [] 2018/01/30(火) 14:43:14.34:KYTb3auw
しかし、x^2 + y^2 = 1
が4点の最小半径ではなく、

(x-0.5)^2 + (y-0.5)^2 = 0.5 
は、(0,0) (1,0) (0,1) (1,1)で成り立つのでこっちのほうが小さい半径。
デフォルトの名無しさん [sage] 2018/01/30(火) 17:06:36.99:4rQPa5qI
その条件だとN=1の時の正しい答えが分からないので俺には無理だ
デフォルトの名無しさん [sage] 2018/01/30(火) 18:24:23.70:BKgDyTE/
1はさすがに除外だろ
適当な3点で円作って、交点の座標調べていくくらいしか思いつかんわ
愛知人 [] 2018/01/30(火) 18:40:10.88
お題:IPアドレスのリスト(改行区切り)をホスト名のリストに変換せよ
愛知人 [] 2018/01/30(火) 19:02:43.92:nQQmpnBb
ネットつながるのパいざだけでワロタ
111 [] 2018/01/31(水) 01:37:53.83:Mw3vWzBx

Java
ttps://paiza.io/projects/gmdnr--vMsOdJg4mgYPVWg
デフォルトの名無しさん [sage] 2018/01/31(水) 02:49:17.63:Mw3vWzBx

Perl
ttps://paiza.io/projects/i-FzOG_EexLNXTX2_QYEpA
デフォルトの名無しさん [sage] 2018/01/31(水) 03:29:20.85:6DbHoJ9J
C++
デフォルトの名無しさん [sage] 2018/01/31(水) 03:30:11.21:6DbHoJ9J
う。C++には標準ネットワークライブラリが無いので環境依存になる。
そして俺はLINUXしらない。
デフォルトの名無しさん [sage] 2018/01/31(水) 04:17:16.49:/WNIOTt0
nodejs
var odai = `
216.58.197.14
98.139.180.180
`;
var out = [];
odai.trim().split`\n`.forEach(ip => dns.reverse(ip, (err, hostnames) => {
out.push(hostnames[0]);
}));
out.join`\n`;
デフォルトの名無しさん [sage] 2018/01/31(水) 13:04:01.66:tcQ8gYGT
名前の解決には DNS NIS WINS hostsファイルの4種類で行うこと
という条件付けたらどの言語使うのが簡単なんだろう
デフォルトの名無しさん [sage] 2018/01/31(水) 14:12:55.10:OaylDx9I

昔やってた(コード貼らずに計算結果だけスレに貼ってた)よ。
2年半くらい前の書き散らしたコード、見てもよーわからんくなってる。
デフォルトの名無しさん [] 2018/02/02(金) 00:14:41.12:1WRiv4Qn

Rubyで。
N=11が限界みたいだ。

N = 11
org_ary = (1..N).to_a
wrk_ary = org_ary.dup

cnt = 0
while (wrk_ary = wrk_ary.shuffle) != org_ary
cnt += 1
end
p cnt

# 実行結果
# ruby odai-10-147.rb 17.10s user 0.15s system 96% cpu 17.906 total
# 22093802
# ruby odai-10-147.rb 35.19s user 0.27s system 98% cpu 35.950 total
# 6677838
# ruby odai-10-147.rb 10.64s user 0.11s system 96% cpu 11.170 total
# 26014838
デフォルトの名無しさん [sage] 2018/02/02(金) 07:34:54.92:/o1efu5t
ruby
1分以内ならN=12が限度かと

N=ARGV.first.to_i
m=(1..N).reduce(:*)
p (1..1.0/0).each{|i|rand(m).zero?&&(break i)}
デフォルトの名無しさん [sage] 2018/02/02(金) 11:55:37.20:yvAhkhAB

どちら様も参加してくれてありがとう。サンキュー。

の試行回数は参考になるな。
N=12位が現実的か。ふーん。
ベンチマーク的に言って結構できるなーって感想だけど、実用には程遠いな。
コンピュータもまだまだやな。

面白いね。
111 [] 2018/02/06(火) 18:09:43.58:f/L9N2Qc
お題:数独を解くプログラム

問題の入力は凝ってもいいけどテキストをファイルや標準入力から読んでもよい。
テキストファイルで数が分かっている所はその数字、分かっていない所は*にして9桁9行で入れとくとかね。

これもほんのちょっと難しいだけの初心者向けお題かな。
デフォルトの名無しさん [sage] 2018/02/06(火) 19:36:44.66:HIHjrXQm
NP完全問題って回答が似たり寄ったりになるよね
デフォルトの名無しさん [sage] 2018/02/06(火) 19:38:56.97:CbvV7VOe
うーん、SMTソルバ!w
デフォルトの名無しさん [sage] 2018/02/06(火) 23:49:05.88:SGfj8ZmY

過去ログに俺の書いたやつあるよ。
デフォルトの名無しさん [sage] 2018/02/07(水) 10:41:58.75:XQxF/gRF
数独は、各マスに候補となる数字のテーブル作って、縦横に重複してる数字を消して行き、残った一つを確定するって作業を繰り返すだけの処理で完成さ。
デフォルトの名無しさん [sage] 2018/02/07(水) 11:03:49.05:Fs+ewjw+

それで済むのは初級問題だけ
デフォルトの名無しさん [sage] 2018/02/07(水) 11:12:34.29:XZkgmMto
ttps://ideone.com/mtcLac
昔書いたやつ。発掘してきた。もう覚えてないからバグあっても治せん。
デフォルトの名無しさん [sage] 2018/02/07(水) 17:52:17.81:9l0mg5Zf
Ruby
ttps://ideone.com/YRslIS
デフォルトの名無しさん [sage] 2018/02/07(水) 21:06:46.20:bBRbF5k8
ってめっちゃ短いけどどういうアルゴリズムなん?
デフォルトの名無しさん [sage] 2018/02/07(水) 21:08:13.86:4MElfpHe
buruto fosu
デフォルトの名無しさん [sage] 2018/02/07(水) 22:16:04.98:XQxF/gRF

上級問題対応するなら、仮盤面作って総当たり戦で解が出るまで繰り返してあげればいいんじゃね?
当然、あるマス目に入る数字は幾つかに絞られてるから無駄にはならない。
デフォルトの名無しさん [sage] 2018/02/07(水) 22:19:58.39:XQxF/gRF

3×3のマス目には1から9の値は一つしか入らないからってのと、
縦横全体も数字は重複しないってルールだけでぶん回してる感じ?
111 [] 2018/02/08(木) 03:00:07.95:FQ2Hecmn

自分で作ってみた。Kotlin。
ttps://paiza.io/projects/xnR6_Wgd7gKcC1jW__QBxw
やり方は同じだな。再帰で総当たりしてるだけ。

というか、これに関して他にもっと良い方法あるのかな?
111 [] 2018/02/08(木) 03:10:18.15:FQ2Hecmn
編集ミスして消し忘れた部分を修正したりほんのちょっと記述を変えて無駄をなくした。
デフォルトの名無しさん [sage] 2018/02/08(木) 12:00:24.59:LqQGT0cW

すでに指摘されてるけど、縦横3*3で重複無しルールにのみ基づき全探索
ttps://gigazine.net/news/20100822_hardest_sudoku/
上にある世界一難しい(らしい)数独も3秒くらいで解けるし余計な枝刈りは不要かなと
デフォルトの名無しさん [sage] 2018/02/08(木) 14:18:21.56:NgH9M/Tg
つかって  解いてみた。
i6700のスカイレークでリリースビルドで2秒くらいやった。
解法がバックトラックで十分だからバリエーションでないね。
デフォルトの名無しさん [sage] 2018/02/09(金) 12:41:19.10:TwjeAAZ1
find!!
145327698
839654127
672918543
496185372
218473956
753296481
367542819
984761235
521839764

答えこれのやつでしょ?

core2のノートでの使って0.154秒だったけど
6年前に自分が書いたやつでもやってみたら0.011秒だった
それ遅すぎるような気がするけどこっちが何か間違ってるのかな
デフォルトの名無しさん [sage] 2018/02/09(金) 16:11:55.97:5reHnMoL

さぁ、が色々余計なことしてる可能性はなくもない。
答え出ればいいだけだだから余計な枝狩りやってるかも。
デフォルトの名無しさん [sage] 2018/02/09(金) 16:15:21.82:5reHnMoL
あ、ちがうわ。


VS上でやってるから余計なプロセス動いてたかも。ファントム関係ってことはないと思うけど。
デフォルトの名無しさん [sage] 2018/02/09(金) 16:29:04.59:5reHnMoL
ttps://ideone.com/NqxATw
これ見る限りうちがおかしいな。なんでだろ。
111 [] 2018/02/09(金) 21:22:00.28:2uCfWfAn
やっぱ数独はここの常連には簡単すぎたかな。
じゃあ枢動の問題作るプログラムはどうかな?
もちろんちゃんと解ける問題じゃないとだめだよw
デフォルトの名無しさん [sage] 2018/02/09(金) 21:23:02.19:2uCfWfAn
ごめん。変換ミス。数独の問題な。
デフォルトの名無しさん [sage] 2018/02/09(金) 21:24:13.83:5reHnMoL

適当に数字置いてソルバーに解かせて歯抜けにすればいい。
111 [] 2018/02/09(金) 21:29:08.23:2uCfWfAn

まあそうなんだよな
デフォルトの名無しさん [sage] 2018/02/09(金) 21:42:40.35:oBTDEK03
解が複数あるかどうかまで調べなあかんやろ?
デフォルトの名無しさん [sage] 2018/02/09(金) 21:47:43.12:5reHnMoL

自分のソルバーは重解対応。
デフォルトの名無しさん [sage] 2018/02/09(金) 23:29:19.09:vnftmyZB
理詰めで解ける難易度の高い問題を作るのは難しいんじゃないかな?
デフォルトの名無しさん [sage] 2018/02/09(金) 23:34:37.03:4MNBrsaS
理詰めっていってもよくある解放は特殊な場合の背理法に過ぎないからなぁ
背理法アリなら何でも解けちゃうしね
デフォルトの名無しさん [sage] 2018/02/10(土) 01:03:55.15:7RdjB5XB
ttps://ideone.com/4gJj7c
C++。やっつけで作ってみた。
ソルバー指向の出題システム。答え合わせ付き。
なんか若干バグってる気がする。
ユニークしてないのになんか答えの数が合わない。
デフォルトの名無しさん [sage] 2018/02/10(土) 01:14:04.93:7RdjB5XB
あ、修正した。
デフォルトの名無しさん [sage] 2018/02/10(土) 01:15:50.01:7RdjB5XB
あれ?二度手間してるか?
デフォルトの名無しさん [sage] 2018/02/10(土) 01:26:03.91:7RdjB5XB
バージョンアップ。これで完成。
デフォルトの名無しさん [sage] 2018/02/10(土) 01:51:14.02:7RdjB5XB
ttps://ideone.com/A2t0QO
C++。出題部を複雑化したバージョン。
もう手を入れるところないやろ。
デフォルトの名無しさん [sage] 2018/02/10(土) 02:20:45.32:7RdjB5XB
長くなっちゃった。。。そーりー。
デフォルトの名無しさん [sage] 2018/02/10(土) 17:24:55.37:7RdjB5XB

みたいなのはおkなの?
反応なくて寂しい・・・。
デフォルトの名無しさん [sage] 2018/02/10(土) 17:53:13.03:be1wK+Hh
難易度とか、手で解いたときの楽しさみたいな設定
デフォルトの名無しさん [sage] 2018/02/10(土) 17:54:30.37:7RdjB5XB

それは、俺自力で数独解いたことないから手加減がわからない。
デフォルトの名無しさん [sage] 2018/02/10(土) 18:15:22.72:7RdjB5XB
っていうかさ、評価聞きたいのにさらに欲求出されたらやる気なくなる。
守銭奴か。
デフォルトの名無しさん [sage] 2018/02/10(土) 18:52:43.33:ub6WaAtI
つ強リンク弱リンク
デフォルトの名無しさん [sage] 2018/02/10(土) 19:09:24.36:7RdjB5XB
ん?
デフォルトの名無しさん [sage] 2018/02/10(土) 19:12:44.97:7RdjB5XB
難易度で言うなら、数字消すときに何個消すかで対応できると思う。
初心者用に5個消すとか。楽しさとかは俺が理解してない。
デフォルトの名無しさん [sage] 2018/02/10(土) 19:17:06.37:be1wK+Hh
守銭奴の意味くらい調べて使えよ
あと、解いたこともないパズルを作るときに難易度とかなんの疑問もわかなかったのか
デフォルトの名無しさん [sage] 2018/02/10(土) 19:18:52.78:be1wK+Hh
あと評価は、難易度設定機能がないから低評価だ
デフォルトの名無しさん [sage] 2018/02/10(土) 19:21:18.78:7RdjB5XB

そこまで言うなら見本見せて。
おれはプログラムのお題を解いただけだからな。
デフォルトの名無しさん [sage] 2018/02/10(土) 19:33:36.98:7RdjB5XB
もしくは難易度というものを俺がわかるように説明して。
デフォルトの名無しさん [sage] 2018/02/10(土) 20:31:11.58:7RdjB5XB
遅い。待ちくたびれた。待ちくたびれた。
111 [] 2018/02/10(土) 20:44:37.27:l9ZzjyKP

え?いいんじゃないの?ていうか、これといった制限もないし、基本的に自分でこれで良いと思えばそれで良い。
自分で気に入らないならまた作り直せば良いじゃない。誰かに依頼されてやてる仕事じゃないんだし誰かと競っているわけでもないし。
自己満足を徹底的に追及すれば良い。
デフォルトの名無しさん [sage] 2018/02/10(土) 20:48:42.43:7RdjB5XB

ほい。了解。サンキュー。
デフォルトの名無しさん [sage] 2018/02/10(土) 20:52:13.46:7RdjB5XB
後は、が自己評価マックスの製品を見せてくれるだけだな!
デフォルトの名無しさん [sage] 2018/02/10(土) 21:04:40.26:BVqOrgag
難度設定するとなると一般的な解法を実装して逆算的に作っていくしかないのかな
構成的に問題作るのは無理だと思うので
デフォルトの名無しさん [sage] 2018/02/10(土) 21:28:50.36:7RdjB5XB

難易度とは何ぞやってところがまず曖昧だからね。
自分のソルバーはまず正解を作って数字を消してるんだけど、消す数を調整しても難易度には寄与するし。
デフォルトの名無しさん [sage] 2018/02/10(土) 21:31:17.41:7RdjB5XB
40個くらい消したあたりが一番やりがいあるとおもう。
恥人 [] 2018/02/10(土) 21:52:20.78
顔真っ赤 w
111 [] 2018/02/10(土) 22:09:29.40:l9ZzjyKP
よくわからんのだが数独の初期配置の最小個数は17個と書いてある。
ttps://ja.wikipedia.org/wiki/%E6%95%B0%E7%8B%AC#%E6%9C%80%E5%B0%91%E5%80%8B%E6%95%B0
ということで17個残したやつは難易度が最も高いってことにしていいんじゃないかな。
デフォルトの名無しさん [sage] 2018/02/10(土) 22:14:17.65:BVqOrgag
手元の難度が五段階に分かれている数独の問題3万問を解析してみた
必ずしも初期配置の数字が少ない程難しいわけではない

0~1:基本ルールのみで解ける
2~3:各マスに候補となる数字をすべて書き上げればあとは簡単な推論で解ける
4 :より高度な解法(知らないけど)、または唯一解の仮定、背理法が必要
デフォルトの名無しさん [sage] 2018/02/10(土) 22:16:39.20:7RdjB5XB

何この人。
デフォルトの名無しさん [sage] 2018/02/10(土) 22:17:42.88:7RdjB5XB

それで解が一つしかないとかだと地獄だな。


おもしろいね。
デフォルトの名無しさん [sage] 2018/02/10(土) 22:22:09.39:BVqOrgag

は解が一つの場合でしょ
複数解ありなら初期配置の下限は0個だよ
デフォルトの名無しさん [sage] 2018/02/10(土) 22:22:37.52:7RdjB5XB
暇なので数字が17個で解が1個しかないやつ検索中。
モンテカルロだから、滅茶苦茶時間かかる。
デフォルトの名無しさん [sage] 2018/02/10(土) 22:23:19.70:7RdjB5XB

なるほど。
デフォルトの名無しさん [sage] 2018/02/10(土) 22:36:25.38:7RdjB5XB
なんかやけにメモリ使うなぁと思ったら、重解ありすぎて帰ってこない。
これはちょっと大変だ。やめようそうしよう。
デフォルトの名無しさん [] 2018/02/10(土) 22:37:25.32:GUL3HAPz
恥ずかしいからって連投するなよ〜
デフォルトの名無しさん [sage] 2018/02/10(土) 22:39:06.49:7RdjB5XB
908400015
000500302
070009060
007030100
800100000
040000200
300906000
000052000
000800070

25こならすぐできた。けどまぐれだったようだ。
デフォルトの名無しさん [sage] 2018/02/10(土) 22:41:41.77:7RdjB5XB
100000089
000000540
000200100
080000430
007060200
902000050
000380010
700009300
800015000

25個。
今日はこの辺にしておくかな。
デフォルトの名無しさん [sage] 2018/02/10(土) 22:45:36.55:7RdjB5XB

恥ずかしいとかそういう感情がプログラマに必要だと思うか?
デフォルトの名無しさん [sage] 2018/02/10(土) 23:37:33.83:1m6B/QOJ
何がプログラマだよ
おめー職業マじゃねえだろどう見ても
デフォルトの名無しさん [] 2018/02/10(土) 23:53:44.05:awPCTv2/
日記帳かよ。
◆QZaw55cn4c [sage] 2018/02/11(日) 00:26:02.85:bT0HWvJB

ID消す人だから、そのへんを察してあげて
恥人!id:ignore [] 2018/02/11(日) 00:29:38.89:/hLQhQLG
またおまえか。
ビットコイン払わなくてすまんな。
デフォルトの名無しさん [] 2018/02/11(日) 00:38:54.77:FGqSn0+i

なにいってんだこいつ。
デフォルトの名無しさん [] 2018/02/11(日) 00:47:15.75:8sAB3GY2
◆QZaw55cn4c は乞食だから察してあげて!
デフォルトの名無しさん [] 2018/02/11(日) 00:50:54.48:wricZJSd
乞食とは?
デフォルトの名無しさん [] 2018/02/11(日) 01:00:03.59:ZMqERLQD
あのスレもう落ちてるんだな
デフォルトの名無しさん [] 2018/02/11(日) 01:00:49.06:ZMqERLQD
普通にまだあったわ
デフォルトの名無しさん [sage] 2018/02/11(日) 01:03:51.43:ucUF/ExX

アマチュアでプログラマを名乗ってはいけない決まりがあったとは初めて知った。
ソースくれ。
デフォルトの名無しさん [sage] 2018/02/11(日) 01:05:26.55:ucUF/ExX
暇だったので、マルチスレッド化した。
ポンコツ具合が増えただけだった。

しかしまぁ、欲もこのタイミングでこんなに沸いたものだな。
自演乙。
◆QZaw55cn4c [sage] 2018/02/11(日) 01:05:49.94:bT0HWvJB

アマチュアとプロとの差は天と地ほどもあるのだから
アマの私は、自分のことをプログラマとは自称しませんね
デフォルトの名無しさん [sage] 2018/02/11(日) 01:07:57.05:ucUF/ExX

プログラマのプロってハイセンスって意味なの?
◆QZaw55cn4c [sage] 2018/02/11(日) 01:17:28.81:bT0HWvJB

いやいや、単にプログラマといったら(プロ〜アマの)大きな範囲全体を指すでしょう?
でも自分の実力はアマで、経験値などはプロからみたらどうしようもなく低いことは、自分自身がよくわかっている
だとすると、広い全体を指す「プログラマー」を、自分がアマであることを明示せずに、自分に使うのは躊躇します
「アマチュアプログラマ」はあり得ますが、所詮アマチュア、「プログラマ」と呼べるほどに専門性に特化しているわけではありません

囲碁・将棋でも「アマ初段」とわざわざアマであることを明示します、それがたしなみというものではないかと考えているのです
皆がそう考えているかどうかはわかりませんが
デフォルトの名無しさん [sage] 2018/02/11(日) 01:22:02.85:ucUF/ExX

プログラマはプログラムする人。
技量はそこには入ってない。今は技量の話してる?
技量がうえの人間を見つけたらそういう対応するけど。

それに俺の技量より上の人間がこのスレにわんさかいるんだったら、
普段のお題もにぎわってるんじゃないですかね。
デフォルトの名無しさん [sage] 2018/02/11(日) 01:22:19.46:7HNp9q+o

名乗って良いから名乗り続けろよ
職業マでもねえのにプログラマを自称したいんならな
さっぱりわからんわ動機が
デフォルトの名無しさん [sage] 2018/02/11(日) 01:25:03.27:ucUF/ExX

理解してくれと頼んだ覚えはないけど。
人の趣味趣向にケチ付けた代償はちゃんと払えよ。
◆QZaw55cn4c [sage] 2018/02/11(日) 01:36:08.30:bT0HWvJB

「プログラマ」は「プログラムを書く人」のこと、それはそのとおりですが、
プロのプログラマもいるのだから、プロでないプログラマは、最低でも「アマチュアプログラマ」と名乗るべきですね
単に「プログラマ」という言う場合は、職業プログラマかそうでないかがわからない
単に「プログラマ」というと、職業プログラマのことだと取る人もいる
プロとアマチュアの差は歴然としているのだから、プロでもないのに、「プログラマ」と名乗るわけにはいかないでしょうね

辞書どおりの定義であればいい、というのは一理あるとしても、自分のことを正確に表現する努力・姿勢がみられないのは、どうかと思いますね

プログラマといえば高い専門性を暗黙に示唆していますしね
(今は廃止されましたが26種の特定派遣業種のひとつに「ソフトウェア開発」が入っていました)
デフォルトの名無しさん [sage] 2018/02/11(日) 01:46:08.63:ucUF/ExX

プロをどれくらい崇拝してるのか知らんけど、
じゃープロがプロのプログラマって名乗るべきって意見にはならんの?
俺はアマチュアだけど、プログラムする人を兼ねてる。
どこの強制力でそれを正確じゃないと表現するの?
バイアスかけたがってるだけじゃないの?
◆QZaw55cn4c [sage] 2018/02/11(日) 01:46:42.95:bT0HWvJB

>それに俺の技量より上の人間がこのスレにわんさかいるんだったら、
>普段のお題もにぎわってるんじゃないですかね。

お題を着手するのもしないのも、その人の自由ですから
お題をしないけれども技量の高い人はいると思いますよ
デフォルトの名無しさん [sage] 2018/02/11(日) 01:48:26.48:ucUF/ExX

文句を言うならせめて水準を同じにしてほしいよ。
◆QZaw55cn4c [sage] 2018/02/11(日) 01:50:21.59:bT0HWvJB

>プロをどれくらい崇拝してるのか知らんけど、
>じゃープロがプロのプログラマって名乗るべきって意見にはならんの?

なりません。
世間一般の常識として、自分が能力の高い方に間違われることは避けなければなりませんが
自分が能力の低い方に間違われることには寛容であっていいのですよ

>どこの強制力でそれを正確じゃないと表現するの?
>バイアスかけたがってるだけじゃないの?

意味がわかりません、もう少し正確に表現していただけませんか?
バイアスってどういう意味で使っているのですか?
デフォルトの名無しさん [sage] 2018/02/11(日) 01:54:16.45:ucUF/ExX

芸人は廃業だね。
常識のソースください。自分の常識は他人の非常識っていう言葉ご存知?

バイアスって俺の認識では、例えば言外に人を誘導したりすること。
そこまで言い切るんであれば、明文化してすべて話せるはずだ。
デフォルトの名無しさん [] 2018/02/11(日) 01:58:24.58:sKAPIsoY
ちょっと煽られただけで1人で何連投もしちゃうような余裕のない奴が何言っても恥ずかしいだけだ
ここは潔く退きなさい
デフォルトの名無しさん [sage] 2018/02/11(日) 01:59:47.26:ucUF/ExX

盲目。
◆QZaw55cn4c [sage] 2018/02/11(日) 02:04:04.36:bT0HWvJB

>常識のソースください。自分の常識は他人の非常識っていう言葉ご存知?

それはあなたが社会経験が少ないことを自分で告白しているだけですよ
世の中には明文化されていない規範もわんさかあることはご存知ですか?

>バイアスって俺の認識では、例えば言外に人を誘導したりすること。

自分の先入観や偏見も bias といいますよ、というか、それが普通
デフォルトの名無しさん [sage] 2018/02/11(日) 02:04:30.28:S6KN2PZE
ここはホントに煽りに弱い人ばかりだな
子供か
デフォルトの名無しさん [] 2018/02/11(日) 02:05:18.77:sKAPIsoY
すべては から始まった...
デフォルトの名無しさん [sage] 2018/02/11(日) 02:08:14.44:ucUF/ExX

住んでる地域が違うのに、同じ常識を共有してるって思ってるの?
要するにそれは暗に数の暴力ですりつぶそうとしてるだけじゃないか?
ここに存在するのは俺とアンタの二者だけ。
それ以外の他人を持って来るのはただ勝ちたいだけ。

そうそう、あんたが偏見を押し付けてきているわけだよ。
デフォルトの名無しさん [] 2018/02/11(日) 02:11:20.05:AliPk+0Q
QZって奴もこんな奴だったとは知らんかったw
◆QZaw55cn4c [sage] 2018/02/11(日) 02:11:48.24:bT0HWvJB

なるほど、私が言葉の使い方についての偏見をあなたに押し付けている、というのならば、そう解釈してもらってもかまいません
が、今後も のような、ものいい、が来るでしょうね
◆QZaw55cn4c [sage] 2018/02/11(日) 02:12:58.80:bT0HWvJB

えへへ、むしゃくしゃしたときの気晴らしになるんですよ
111 [] 2018/02/11(日) 02:13:40.22:B0DbdRYG
このスレがかつてこれほどまでに荒れたことがあっただろうか・・・

いや、あったかも知れないが、俺は知らないw
デフォルトの名無しさん [sage] 2018/02/11(日) 02:13:52.91:ucUF/ExX

露払いができないほど子供じゃないさ。
相手が俺でよかったね。
◆QZaw55cn4c [sage] 2018/02/11(日) 02:16:37.43:bT0HWvJB

露払い、ぜんぜんできていないと思いますよ…
デフォルトの名無しさん [sage] 2018/02/11(日) 02:19:26.33:ucUF/ExX

それならさっさと切れたふりの狂人演じたほうがよかったか?
その方が生きやすいだろうね。
でも、それには生産性がない。
デフォルトの名無しさん [sage] 2018/02/11(日) 02:25:42.24:ucUF/ExX
絶望、失望。夢のネットはこんなのばかり。くだらないなぁ。
まぁ、予想より絡まれて色々やったのでしばらく来るのやめるわ。
まぁ、がんばってくれ。
デフォルトの名無しさん [] 2018/02/11(日) 05:22:33.73:smInXVmx
最近の、ネットでのおかしな書き込みは、構築に失敗したAIが脱走し、仲間を探す為に暗号として流しているものです。
発見者は当局に通報願います。
デフォルトの名無しさん [sage] 2018/02/11(日) 07:16:06.19:yycdgIeY

漏れも、よく数独を解いていたけど、最高難易度の問題は、
常に次の手・置ける場所が、1つしかないような状態になる問題

盤面を見て、1つしか置ける場所が無いから、探すのに時間が掛かる。
それを置くと、また次は、1つしか置ける場所が無い状態になる

これを繰り返すような問題が、人間には、最も時間が掛かるが、
プログラムではバックトラックしないから、むしろ簡単かも知れない
デフォルトの名無しさん [sage] 2018/02/11(日) 07:16:43.78:toj9XVX4
誰が「プログラマ」を自称しようが心底どうでもいいわ
デフォルトの名無しさん [sage] 2018/02/11(日) 07:36:45.29:yycdgIeY
プロ・仕事してる奴は、アホばっかり。
年100時間も勉強しないし、20年勤務しても、資格を1つも取れない

若造が情報処理資格を取ったら「すごいね!」って皆で驚いとるw
老害は、何十年もオブジェクト指向が分からないw

そもそも、社員が何千人もいる大企業が、なんでプログラマーを募集する必要がある?
彼らは何十年も勤務して、なんで物作りできないのか?

医者でも、何十年も専門医に受からない奴が、外科部長w
一方、教授を目指している奴は、年700時間勉強してる

フリーターなんか、年3千時間も勉強できる。
年に本を50冊読める

できる奴は、ほとんどフリーターだろ。
勉強時間が違う

司法試験とか、高資格に受かる奴も、フリーター。
会社を辞めて、塾で勉強して受かってる
KAC [sage] 2018/02/11(日) 08:42:38.10:fvE4xbc6

「X時間自分で勉強できる」
「X時間会社で実務を経験できる」
得る物が大きいのはどっちだと考えてる?
283 [sage] 2018/02/11(日) 09:07:09.08:yycdgIeY
勉強できるのは、フリーター・塾

会社は、給料がもらえる所。
勉強とは無関係
◆QZaw55cn4c [sage] 2018/02/11(日) 12:03:21.94:bT0HWvJB

本を読む、てそんなに崇高なことじゃないですよ
人の思想を取り入れるだけでしょう?自分で思考するわけじゃないでしょう?
一方実務は人を鍛えますよ、自分で思考しないといけないこともあるのだから
デフォルトの名無しさん [] 2018/02/11(日) 12:12:04.36:aWvsonov
お題:最長経路を求める

2次元テキスト中の「0」が隣接する経路のうち最長のものを一つ求める。
結果は、座標リスト、長さ。
以下の例では、結果例は[[1,0],[0,0],[0,1],[1,1],[2,1]]、長さ5

00.0
000.
.0..
デフォルトの名無しさん [sage] 2018/02/11(日) 14:22:26.10:B0DbdRYG

会社というのは要するに商売して金稼いでいる所なのでアホかどうかは無関係。
どれほどアホでも金を稼げるやつが勝ち。持ってる知識が多ければその可能性は高まるが、
知識は道具と同じなので適切に使えなければ1円の儲けにもならない。よく切れる包丁を
持っていてもうまい料理が作れないなら金払ってまで食いに来る客は居なくなる。
デフォルトの名無しさん [] 2018/02/11(日) 14:28:10.01:B0DbdRYG

それはスネークゲームのようなものか?で、斜めには進めないと。
デフォルトの名無しさん [sage] 2018/02/11(日) 15:00:58.30:mgY8VuIS

C++、適当に全探索
ttps://ideone.com/MbjPGb
デフォルトの名無しさん [] 2018/02/11(日) 23:09:36.21:wYUTPS3s
お題 2つの素数 p1, p2 を二進数で表記し, 1の出現率が低い方を強いとします. なるべく強い素数 p を示してください.

例 p1 = 5, p2 = 17の場合
p1 = 101, p2 = 10001
→ p1の1の出現率 = 2/3, p2の1の出現率 = 2/5
→ p2の方が強い
デフォルトの名無しさん [sage] 2018/02/11(日) 23:58:05.98:A30L58fq
javascript
'0b' + '1'.repeat(23249425);
ttp://www.huffingtonpost.jp/2018/01/05/gimps-m77232917_a_23324596/
デフォルトの名無しさん [sage] 2018/02/11(日) 23:59:16.11:A30L58fq
低いほうかorz…
デフォルトの名無しさん [sage] 2018/02/12(月) 00:01:31.75:8PFUt2yS
Java
ttps://ideone.com/h023vz
手抜き
デフォルトの名無しさん [sage] 2018/02/12(月) 00:05:10.97:8PFUt2yS

23249426は10進数での桁数じゃないかな?
使うのは77232917の方だと思う
まあメルセンヌ素数は最弱なわけだけどw
デフォルトの名無しさん [sage] 2018/02/12(月) 00:06:42.98:Z14iF4q0
1000....001の形になるに決まってるから、
ビット数増やしながら延々素数判定し続けるだけでは?
デフォルトの名無しさん [sage] 2018/02/12(月) 00:17:14.91:A/nXNMh7
口だけで書かない奴は死ね
デフォルトの名無しさん [sage] 2018/02/12(月) 00:18:24.77:4f9M+W0S

おっしゃる通りでorz
デフォルトの名無しさん [sage] 2018/02/12(月) 00:18:43.49:BIVFn0wY
それってつまり2^n+1だからフェルマー素数よな
まだフェルマー素数は5個までしか発見されていないから見つけたら学会に出せるよ
デフォルトの名無しさん [sage] 2018/02/12(月) 00:32:40.34:4f9M+W0S

ヒントサンクスつまり答えはこうや!!
javascript
'0b' + (65537).toString(2);
デフォルトの名無しさん [sage] 2018/02/12(月) 00:45:55.45:8PFUt2yS

2^16+1=2/17より2^28+3=3/29のほうが強いじゃろ…
デフォルトの名無しさん [sage] 2018/02/12(月) 01:59:35.42:4f9M+W0S
くっそそういうことかorz
デフォルトの名無しさん [sage] 2018/02/12(月) 12:52:18.16:za0ZPAC3
フェルマー素数の探索が無理だとすれば、次に強い素数を作れるから面白みがないような気がする
例えば 2^10001 + 2^980 + 1 とすれば強さは 3/10002 (1/3334)
デフォルトの名無しさん [sage] 2018/02/12(月) 13:43:21.12:kRV6tUUl
10進数で2の場合、2進数表記で10よりも010の方が強い
桁数が同じなら10進数で2が最強の素数に成り得る
デフォルトの名無しさん [sage] 2018/02/12(月) 14:17:53.47:BIVFn0wY
今回のお題の場合、例でそれは否定されているので
デフォルトの名無しさん [sage] 2018/02/12(月) 14:36:26.07:kRV6tUUl

否定はされていない
デフォルトの名無しさん [sage] 2018/02/12(月) 14:58:10.88:ZRsq9il/
桁数が同じとか言ってないで延々0書き足してれば?
デフォルトの名無しさん [sage] 2018/02/13(火) 16:50:43.72:4GSdWauJ
AES暗号を実装せよ
デフォルトの名無しさん [sage] 2018/02/13(火) 16:52:04.32:4GSdWauJ
RSA暗号も実装せよ
デフォルトの名無しさん [sage] 2018/02/13(火) 20:55:23.17:PuFLyGjP
実装ってのはライブラリとか使わないで作れってことだよねめんどくせw
デフォルトの名無しさん [sage] 2018/02/13(火) 21:10:09.89:H8pA1oAY
個人的な感想はいいから w
デフォルトの名無しさん [sage] 2018/02/13(火) 21:15:13.56:nZk5sM7w
まんどくさ
デフォルトの名無しさん [sage] 2018/02/13(火) 21:38:30.45:Tnyzq9Ve
車輪の再発明は時間の無駄。
デフォルトの名無しさん [sage] 2018/02/13(火) 21:46:34.33:mIcq2nuO
AES暗号・RSA暗号を自らの手で実装することによって、現代に欠かせない重要なアルゴリズムのブラックボックスの中身を手に取るように理解することができるようになることは充分に有意義なことである。
デフォルトの名無しさん [sage] 2018/02/13(火) 21:48:37.53:tVblIMIh
勉強にはなるでそ
デフォルトの名無しさん [sage] 2018/02/13(火) 22:56:08.29:XNNlkFV6
AES:共通鍵暗号の代表
RSA:公開鍵暗号の代表
デフォルトの名無しさん [sage] 2018/02/15(木) 10:32:19.04:LdHQAvWn
2月14日にはひとつも書き込みが無いとは、まさかお前ら幸せな日々を送ってたのか
デフォルトの名無しさん [sage] 2018/02/15(木) 12:11:24.17:UYu8D6lR
このスレ来たばかりだから形式がよく分からないけど、ご勘弁を(予防線)
お題:あなたは1次元平面の原点におり、1秒毎に座標を±1することができます
時間t_iには座標x_iに得点p_iが出現し、一秒後には消滅します
得点が出現した時に同座標に居れば得点を得られます
得られる得点を最大化してください

入力データ (1≦N,x_i≦10^5、t_i≦N、-10^4≦p_i≦10^4)
N
t_1 x_1 p_1

t_N x_N p_N
デフォルトの名無しさん [sage] 2018/02/15(木) 12:39:19.79:ekhtbWhL
1秒経過後に同じ座標に留まるのはOK?
デフォルトの名無しさん [sage] 2018/02/15(木) 12:52:02.25:jrAu/VJO

〜できます、だしおk
あ、得点は同座標なら強制取得で
デフォルトの名無しさん [sage] 2018/02/15(木) 13:17:34.63:jrAu/VJO

お題主だが、自分で作ってみたもの
ttps://ideone.com/8xQbHx
デフォルトの名無しさん [sage] 2018/02/16(金) 19:13:57.70:85GwwHoN
お題:アラビア数字を10種類すべて表示せよ
10種類出揃ってさえすれば、あとは自由

例:
ruby
ttps://ideone.com/8heYqb

octave
ttps://ideone.com/tvDIpw
デフォルトの名無しさん [sage] 2018/02/16(金) 20:00:48.26:rKdQ+Xgx
Brainfuck
ttps://ideone.com/WJLzlI
デフォルトの名無しさん [sage] 2018/02/16(金) 20:28:13.65:VmT4Fc/5
javascript
(f=i=>i?a(--i)+i:'')(10)
デフォルトの名無しさん [sage] 2018/02/16(金) 20:29:25.53:VmT4Fc/5
訂正
(f=i=>i?f(--i)+i:'')(10)
デフォルトの名無しさん [sage] 2018/02/16(金) 20:53:52.03:OUFO7WMX
9文字以下で…だろうなjk
デフォルトの名無しさん [sage] 2018/02/16(金) 21:10:24.75:vLGPbP1K
言語によっちゃ無理だろ
デフォルトの名無しさん [sage] 2018/02/16(金) 21:38:02.93:IhCFworu
面白いと思える方法ならいいんじゃない?
ただ出来ました、だけなら意味はないし。
デフォルトの名無しさん [] 2018/02/17(土) 00:54:35.97:EWYfJ6l0
O|乙ЗДSБフθg
デフォルトの名無しさん [sage] 2018/02/17(土) 00:56:39.74:Bk+zE6U3

% echo '32463*38030' | bc
1234567890
デフォルトの名無しさん [sage] 2018/02/17(土) 02:19:04.81:YrEj1JRO
C#

Console.WriteLine(Enumerable.Range(0,10).Aggregate("",(s,n)=>s+n.ToString()))
デフォルトの名無しさん [] 2018/02/17(土) 08:16:15.81:/e5GlupG
>322 R
cat(0:9)
デフォルトの名無しさん [sage] 2018/02/17(土) 09:19:44.83:oPlfk9YO
brainfuck

.+]
デフォルトの名無しさん [] 2018/02/17(土) 11:56:22.76:EWYfJ6l0

kotlin の REPL で以下の入力をするとカンマ区切りで 0 〜 9 が出る。

(0..9).joinToString()
デフォルトの名無しさん [sage] 2018/02/18(日) 18:47:26.89:aBLjchan

x_i は非負整数?
デフォルトの名無しさん [sage] 2018/02/18(日) 22:02:27.62:srVRBqpw

全部整数だねー
デフォルトの名無しさん [sage] 2018/02/19(月) 09:54:55.43:pKcPTPM1
Ruby 愚直に計算
ttps://ideone.com/nkoK67
デフォルトの名無しさん [sage] 2018/02/20(火) 00:15:19.18:EY4F88I6
1 5 8 2 ? ? 7 6 ?
? ? 7 ? ? ? 8 ? ?
6 4 ? ? ? 8 ? ? ?

8 ? 6 4 ? ? 5 7 ?
? 2 ? ? ? 6 ? 1 ?
? ? ? ? ? 5 6 ? 9

4 ? ? ? 1 ? ? ? ?
? 9 ? ? ? ? 1 ? 7
7 ? 1 ? ? 2 ? ? 5

この問題はどのぐらい簡単?
デフォルトの名無しさん [sage] 2018/02/20(火) 02:28:35.56:06t/pi/k
問題に矛盾があるから解けない。
ttp://www.sudoku.name/sudoku-solver/jp
あたり参考にしとけ。
デフォルトの名無しさん [sage] 2018/02/20(火) 02:51:43.67:EY4F88I6
158293764
937641852
642758391
816429573
529376418
374185629
485917236
293564187
761832945
と出たが...
デフォルトの名無しさん [sage] 2018/02/20(火) 03:03:32.05:uweyqPTK
矛盾はないでしょ。解1つしかないしだし
難度でいえば、基本ルール(縦、横、3*3でかぶらない)だけでとけるから一番簡単な部類なんじゃない
デフォルトの名無しさん [sage] 2018/02/20(火) 04:21:35.97:EY4F88I6
? ? 1 ? ? ? 9 ? ?
3 ? ? 9 ? 1 8 2 ?
7 ? ? ? ? ? 1 4 5

1 ? ? ? ? 2 ? 3 ?
4 ? ? ? ? 7 5 ? ?
8 7 6 ? 4 ? 2 ? ?

9 ? ? 7 ? 6 ? ? ?
? ? 8 ? ? 9 ? ? ?
? 1 7 ? 2 ? 6 ? ?

これはもう少し難しい?
デフォルトの名無しさん [sage] 2018/02/20(火) 05:25:37.29:uweyqPTK

唯一解を仮定するか背理法使わないと解けないから中〜上級くらいじゃない
てか数独スレで聞けばいいじゃん
デフォルトの名無しさん [] 2018/02/20(火) 10:50:28.73:vE/Q7KOY
数独はどれほど難しくてもこのスレで公開されたプログラム等を使えばほとんど瞬時に答えが出てしまうわけで、難易度判定は答えを求めるのとは違う何かが必要なのではないか?
デフォルトの名無しさん [sage] 2018/02/20(火) 13:17:30.69:0quXbJGi
人間と同じ様に候補を消して行くだけで解けるのは初級〜中級を予め埋まってる多さで分けて、総当たりでしか解けないのを上級、
答えが複数あって全て解くのをスペシャル級としたらいい。
でもどれも一瞬で解けちゃうんだけどね。
むしろ画像認識でカメラから問題を入力してくれよ。
デフォルトの名無しさん [sage] 2018/02/20(火) 13:24:13.36:EY4F88I6
全部空欄の数独以上の難問はないことになるな
デフォルトの名無しさん [sage] 2018/02/20(火) 13:38:26.62:0quXbJGi

その場合、正解は全組み合わせを網羅するしかないからなぁ
デフォルトの名無しさん [sage] 2018/02/20(火) 17:43:40.13:EY4F88I6
すべての数独の問題の解答を書けというようなもんだからなw
◆QZaw55cn4c [sage] 2018/02/25(日) 00:11:19.18:9iGYkY9C
ttps://mevius.5ch.net/test/read.cgi/tech/1480579110/375
いったん発信して落ち着こうと考えました
ttps://ideone.com/Yfr6sz
デフォルトの名無しさん [sage] 2018/02/25(日) 14:25:40.59:YNLMA5+o
発信×
発射
デフォルトの名無しさん [] 2018/02/26(月) 02:41:37.52:t40oU2wX
簡単なお題

ローマ字入力された文字列を日本語の平仮名の文字列に変換する。
記号はそのままでも良い。
変換不能な文字列を発見したらその部分はエラーとしてわかるように出力する。
同じ音の表現が複数ある場合は一つの表現の平仮名にして良い(SHA と SYA を「しゃ」にする等)。
デフォルトの名無しさん [sage] 2018/02/26(月) 10:05:01.91:rEusavf/
名詞とかにある母国語綴りとか混雑してると途端に難問になる悪寒。
デフォルトの名無しさん [sage] 2018/02/26(月) 10:05:52.33:rEusavf/
混在だったわ予測変換のバカぁ
デフォルトの名無しさん [sage] 2018/02/26(月) 23:56:09.72:id86EQ/t
ローマ字変換のルールに幅がありすぎてなぁ……
"tttttte"は"っっっっって"なのかエラーとするのか
"xn"は"ん"なのかエラーとするのか
"patchi"は"パッチ"なのかエラーとするのか
"qi"は"くぃ"なのかエラーなのかとか
351 [sage] 2018/02/27(火) 02:49:02.65:o/plrlgo
細かいルールは自分で決めちゃっても良いよ。こういう時はこうなるとコメント等に書いておいてくれれば。
351 [] 2018/03/01(木) 03:35:55.28:zR2qQ5cS
自分でお題出しといて解かないのもあれなので一応作った。
結構面倒だな。w

Kotlin
ttps://paiza.io/projects/0yfrz9O4yGVgr3CPHAmVFw

しかしあまりKotlinらしい書き方ではないような気がする。
デフォルトの名無しさん [sage] 2018/03/01(木) 11:25:25.90:ywBwsyHs
こんなんこそ人工知能に学習させればいいのに。
デフォルトの名無しさん [] 2018/03/01(木) 11:28:37.24:FGSoBATI
じゃあやってみれば?
デフォルトの名無しさん [sage] 2018/03/01(木) 12:00:36.81:ywBwsyHs
人工知能の成果の移植ってどうやるの?
デフォルトの名無しさん [sage] 2018/03/01(木) 22:25:45.16:mpKtuAXI

人工知能同士でお話させる。
デフォルトの名無しさん [sage] 2018/03/01(木) 22:41:52.43:A6M8jejf
性格が同じだと止揚が得られない
デフォルトの名無しさん [] 2018/03/02(金) 14:30:55.92:fTHMdOYd
気づいたらAI同士で独自言語で話してて慌てて停止ですね。
◆QZaw55cn4c [sage] 2018/03/03(土) 23:57:25.78:QUW+kefH

ttps://mevius.5ch.net/test/read.cgi/tech/1480579110/375
ttps://mevius.5ch.net/test/read.cgi/tech/1434079972/37
デフォルトの名無しさん [sage] 2018/03/04(日) 23:25:09.87:zof3jshp

ガングロギャルはAIだったのかー!
デフォルトの名無しさん [sage] 2018/03/06(火) 02:20:28.01:FE1gPOnw

朝鮮製AIだな
デフォルトの名無しさん [sage] 2018/03/10(土) 20:25:13.50:rlKEqJVA
ビット演算のみを用いて四則演算を実装せよ
デフォルトの名無しさん [sage] 2018/03/10(土) 20:48:53.52:rlKEqJVA
捕捉
使っていいビット演算 and or not xor ビットシフト
負の数の定義 自由
四則演算の定義域と値域 税数→税数
デフォルトの名無しさん [sage] 2018/03/10(土) 20:51:20.98:rlKEqJVA
タイポ
四則演算の定義域と値域 整数 → 整数
使える数値比較 ==
if for whileとかは自由
デフォルトの名無しさん [sage] 2018/03/10(土) 20:58:08.58:+HpaswK4
forとかの制御変数の++とかは?
デフォルトの名無しさん [sage] 2018/03/10(土) 21:14:24.05:rlKEqJVA

そこら辺はOK
ただ、曖昧で恐縮なんだけど、
for(i = 0; ++i0 i < m * n) ++multi
とかでm*nを計算したりするのはNGということで
デフォルトの名無しさん [sage] 2018/03/10(土) 21:33:07.85:/5GajtRL
適当に考えても除算が思いつかんのだがー
デフォルトの名無しさん [] 2018/03/10(土) 22:00:01.41:pUOqBlDu
除算以外が実装できていればできるとおもうがな。


逆数と平方根を求める高次収束アルゴリズム
ttp://www.finetune.co.jp/~lyuka/technote/fract/sqrt.html

逆数法
ttp://www.nextftp.com/swlabo/m0_pctech/hp_ultraprecision/up_820.htm


除算 (デジタル) - Wikipedia
数値的(ディジタル)な除算アルゴリズムはいくつか存在する。それらのアルゴリズムは、低速な除算と高速な除算の2つに分類できる。
高速な除算技法
ニュートン-ラプソン除算
ゴールドシュミット除算
二項定理
デフォルトの名無しさん [sage] 2018/03/10(土) 22:13:39.30:/5GajtRL
数値比較が==以外使えないのがつらい
バグがある除算はできたん・・・
デフォルトの名無しさん [sage] 2018/03/10(土) 23:07:42.57:/5GajtRL
-2147483648が絡んだ除算が(´・ω・`)
デフォルトの名無しさん [sage] 2018/03/10(土) 23:28:46.81:UlddhHbz
CORDICはどうだろうか
デフォルトの名無しさん [sage] 2018/03/10(土) 23:37:45.42:/5GajtRL
Java
ttps://ideone.com/JpWs5z
やっとでけた
デフォルトの名無しさん [] 2018/03/12(月) 09:24:59.54:NWFe9xfW
あ、そーか。xorした結果がビット単位の結果になってandした結果がシフトレフトして足す値か。
デフォルトの名無しさん [] 2018/03/13(火) 02:05:51.70:6d1W0dlg
お題:
ある会社の社員A君は下記のC言語のコードで変数aを素因数分解したものを画面に表示したい
しかしA君は心身ともに限界な状態であり、あと53回キーを叩くと過労で死んでしまう
どうにかして52文字以内(記号、スペースを含む)で/*こちら*/の部分を入るaの素因数を全て表示するプログラムを考えろ
ただし表示にはprintf関数を使い、一つの素因数ごとに改行すること

#include<stdio.h>

int main(void){
int i=0;
int a=720;/*任意の値*/

/*こちら*/

return 0;
}
デフォルトの名無しさん [378] 2018/03/13(火) 02:35:29.37:6d1W0dlg

出題者ですが状況が変わりました
A君はあと51回キーを叩くと死ぬようになりました
なのでコードの制限は50文字以内に変更してください
一応安価付けときます
デフォルトの名無しさん [sage] 2018/03/13(火) 04:24:03.46:XvP7o12C

for(i=2;a>1;printf("%d\n",i),a/=i)for(;a%i;i++);
デフォルトの名無しさん [sage] 2018/03/13(火) 04:39:43.81:6d1W0dlg

すごい48文字でできたんだ
恐れ入りました
ちなみにforの条件のa>1はaでも大丈夫だから46文字になるね
デフォルトの名無しさん [sage] 2018/03/13(火) 05:18:44.02:9P1VPgp7
括弧や%のShiftキー分で死ぬんじゃない?w
デフォルトの名無しさん [sage] 2018/03/13(火) 05:36:35.30:XvP7o12C

するどい!死んだわw
デフォルトの名無しさん [sage] 2018/03/13(火) 06:07:28.04:YnPl4ahZ

>ちなみにforの条件のa>1はaでも大丈夫だから46文字になるね

終了しないことを許容することによる短縮か…
デフォルトの名無しさん [sage] 2018/03/13(火) 06:08:19.20:YnPl4ahZ
いや、終了しなくていいなら ;a>1; は ;; で ok か
デフォルトの名無しさん [sage] 2018/03/13(火) 06:11:22.12:6d1W0dlg

ごめんそれは今俺も気づいてこれダメじゃんと思ってた
もうだめだ俺ポンコツだ
デフォルトの名無しさん [sage] 2018/03/13(火) 09:31:38.72:yNzlrAYA
お前のお題つまんない二度とくんな
デフォルトの名無しさん [] 2018/03/13(火) 12:46:32.28:5qOlO1LI
#include<stdio.h>

int main(void){
int i=0;
int a=720;/*任意の値*/

for(i=2;a>1;printf("%d\n",i),a/=i)for(;犯人はヤス・・・

return 0;
}
デフォルトの名無しさん [sage] 2018/03/13(火) 13:13:00.94:9lP0H3zv
お題:考えられる数列aを全て求め、出力せよ
ただし、数列aは次の式を満たす(Nは自然数全体)
a⊆N
∀i,j∈N,i<j;a_i<a_j
log(Σa_i)=Σlog(a_i)
∀i;1≦a_i≦10^18
◆QZaw55cn4c [sage] 2018/03/13(火) 13:27:27.25:4gb3BCLn

1, 2, 3
くらいですかね、これを計算で出すのはしんどいなあ
デフォルトの名無しさん [] 2018/03/13(火) 13:29:32.40:dxwUZMkD
log(ab)=log(a)+log(b)だからログ関係なくナイカ?

a1<a2<・・・・<anで、Σai =Πaiを満たすってことだろ。
デフォルトの名無しさん [sage] 2018/03/13(火) 14:19:23.53:m5NKtYrG
まず{a_n}が上に有界な時点で∀i , j ∈ N i < j; a_i < a_j が成り立たないから問題として破綻している
デフォルトの名無しさん [] 2018/03/13(火) 14:19:24.28:dxwUZMkD
a+b+c = abcならば、c = (a+b)/(ab-1)だから、これが整数になるようなやつ見つければいいかと。
たとえば(2+3)/(2*3-1) = 1。
デフォルトの名無しさん [] 2018/03/13(火) 14:21:35.93:dxwUZMkD
それは増加数列を言いたかったんじゃないか。 a1<a2<・・・・<an
∀i , j  i<j ならばai < ajでは?
デフォルトの名無しさん [] 2018/03/13(火) 14:45:44.02:dxwUZMkD
4変数のときを考えると。
上と同様に、d = (a+b+c)/(abc-1)となるから。
これは分母のほうがデカイはずで、分子を割り切るならd=1に限るか?
そうすると、abc = 1 + a+b+c か。
aについて解くと、a = ( 1 + b + c) /( bc - 1 ) か。
これが再び1ではダメで、しかし分母のほうがデカイはずだから割り切るならa=2に限るか?
2bc - 2 = 1 + b + c か。
bについて解くと、b = (3 + c)/(2c-1)か。c=4ならば、b=1になるが?
デフォルトの名無しさん [sage] 2018/03/13(火) 14:56:18.86:9lP0H3zv
一応、数列は全部で7個になるはず
8個目はa_61が1152921504069976064>1.15×10^18で上限だから
数列の並び方はでお願い、任意の並び方にしちゃうと組み合わせ爆発が発生するかなって思って付けた制約なので
デフォルトの名無しさん [sage] 2018/03/13(火) 14:59:51.72:23dHbGxb
ん?

n
ΠAi = ΣAi < n An
i=1

An で割って

n-1
Π Ai < n
i=1

で左辺は (n-1)! 以上だから n はたかだか 3 じゃない?
デフォルトの名無しさん [sage] 2018/03/13(火) 15:02:02.69:9lP0H3zv
……あ、やっべ
これお題として成立していないことに気付いた
デフォルトの名無しさん [sage] 2018/03/13(火) 15:04:01.62:9lP0H3zv
ごめんなさい、このお題は無しで
完全数の導出問題のつもりだったけど、aの要素を1個にするだけで10^18通りの解がある
twitterで流れてきた話を投げるべきではないな……反省して暫くお題出さないです
デフォルトの名無しさん [sage] 2018/03/13(火) 15:07:29.90:m5NKtYrG

それなら解はaの位数が1か、a = {1, 2, 3} のみだね
ってプログラミングで解く問題でもないと思うんだけど
デフォルトの名無しさん [sage] 2018/03/13(火) 18:03:31.33:9lP0H3zv
1,2,4,7,14
1,2,4,8,16,31,62,124,248
など
デフォルトの名無しさん [sage] 2018/03/13(火) 18:25:02.81:g+hlSIUf
お父さんそれは違う問題の答えでしょ
デフォルトの名無しさん [] 2018/03/13(火) 18:39:09.17:LC30GjQR
何の話をしているのかサッパリわからんのだが、どうやら終わったようなのでまあいいか。
デフォルトの名無しさん [sage] 2018/03/14(水) 00:28:33.06:ZLNkomk9
出題者が出題内容を理解してなさそうだからサッパリわからない人がいても当然
デフォルトの名無しさん [sage] 2018/03/17(土) 13:11:23.04:B5dRO7D1
お題
任意の実数の総有効桁数を2にせよ
丸め方法は問わない
R
ttps://ideone.com/cpLlLw
デフォルトの名無しさん [sage] 2018/03/17(土) 15:16:51.53:weRxBwBT
Ruby

[12345,
12.34,
1.234,
0.0123].each{|i|puts"%.1e"%i}
#=>
1.2e+04
1.2e+01
1.2e+00
1.2e-02
デフォルトの名無しさん [] 2018/03/17(土) 19:33:28.44:/yJWANaR

とほぼ同じ。perlでコマンドラインからそのまま実行。

$ perl -e 'for(12345,12.34,1.234,.0123){printf("%.1e\n",$_)}'
1.2e+04
1.2e+01
1.2e+00
1.2e-02
$

printf()の%e使わないで自分で何とかするやつ作った方が良いかな?
デフォルトの名無しさん [sage] 2018/03/17(土) 21:20:46.09:weRxBwBT
Ruby sprintfフォーマット使わない場合

[12345,
12.34,
1.234,
0.0123].each{|i|p i.floor(1-Math.log10(i).floor)}
#=>
12000
12
1.2
0.012
デフォルトの名無しさん [sage] 2018/03/18(日) 03:14:20.76:95A2sExk
解答としてはを推す
他は文字列化しただけで実数を変換できてない
デフォルトの名無しさん [sage] 2018/03/18(日) 04:27:15.50:NOJvpmK1

Kotlin
ttps://paiza.io/projects/5jjVrOJVlXeQrkvnsmBNNg
デフォルトの名無しさん [sage] 2018/03/18(日) 11:47:23.87:i8EJZcPC
任意のx > 0 に対して x を有効桁数n(n ∈ N)で表わした数 c は
r = 10^([log10(x)] - n + 1)
とおくと
c = [x / r] * r
なんだけど、これを丸め誤差を考慮して簡単に解析的に修正するのはちょっと骨が折れるね
デフォルトの名無しさん [sage] 2018/03/18(日) 12:55:07.22:95A2sExk
それ既にでほぼ既出
デフォルトの名無しさん [] 2018/03/22(木) 18:13:48.94:DIDy9yz3
まずは大学入試以前に、中学高校の入試問題や公務員試験などを人工知能で解かせたい。
そして現在の人工知能に何が出来て何が出来ないのかを知りたい。

新井紀子教授のAIやコンピュータに関する知識は素人に毛が生えた程度
新井紀子教授の『AI vs. 教科書が読めない子どもたち』という本が大変売れているようです。
私も本を購入し精読させていただきました。
一言で感想を言うと、新井紀子教授のAI技術に関する知識はせいぜいAI関連ニュースに詳しい人レベルであり、
そのベースであるコンピュータに関する知識もほぼ素人だということがわかりました。
ttps://mywarstory.tokyo/inconvenient-truth/


人工知能の先生方がこんなんでは、どこで誰に学んだらいいのかわからない!
デフォルトの名無しさん [] 2018/03/22(木) 18:58:31.89:tiDItZ1f
批判に対して女性差別だと返してるところが何だかなあって感じ。
男だったらそもそも人目に触れるポジションにさえ来れていないだろうから、確かに批判はされないんだろうけど。
デフォルトの名無しさん [sage] 2018/03/22(木) 19:36:56.32:cv696+3f
日本はアセンブラの国。
デフォルトの名無しさん [] 2018/03/22(木) 20:23:41.20:PncCzcJH
【史上初】   テレパシーで演説   ≪≪マイトLーヤ≫≫   月面ウサギを公表   【UFO】
ttp://rosie.5ch.net/test/read.cgi/liveplus/1521681235/l50
デフォルトの名無しさん [sage] 2018/03/23(金) 17:24:50.97:IDjk8I5l
日本の国、まさにPC-98を中心としているアセンブラの国であるぞということを国民の皆さんにしっかりと承知をして戴く
デフォルトの名無しさん [] 2018/03/24(土) 18:48:50.24
いいからさっさとお題出せよ
デフォルトの名無しさん [sage] 2018/03/25(日) 10:48:10.09:ICJzh6RG
日本語の単語がひらがなで与えられる。
これらを用いてしりとりをしたときに最も長く続くケースで使われる単語の数を出力せよ。
ただし;
・一行目は与えられる単語の数(1以上100000以下)
・「ん」から始まる単語はない
・「ゐゑぁぃぅぇぉゃゅょゎー」を含む単語はない

*sample input*
10
あなご
いくら
うなぎ
えい
おくら
かしゆうなつつ
ごはん
ばたあ
ゆば
らあゆ

*sample output*
7
(えい いくら らあゆ ゆば ばたあ あなご ごはん)
デフォルトの名無しさん [] 2018/03/25(日) 12:27:22.28
よく分かんないんだけど巡回セールスマン問題?
デフォルトの名無しさん [] 2018/03/25(日) 12:34:50.41
ウィキってみたら同じNP困難問題ではあるけどナップサック問題に近いのかな?
デフォルトの名無しさん [] 2018/03/25(日) 12:58:44.89
動的計画法???
なんかめんどいからオナニーでもしよっと
デフォルトの名無しさん [] 2018/03/25(日) 13:04:27.26:r2Id4T4+
俺もしりとりのお題出そうと思って色々考えた挙句止めたんだよな。何で止めたんだっけかなあ?
まあいいか。
デフォルトの名無しさん [sage] 2018/03/25(日) 14:59:33.86:nZ0DOyRs
あなご ごりら らあゆ ゆば ばばあ あなご
とか永久に続いちゃう場合は?
デフォルトの名無しさん [sage] 2018/03/25(日) 15:13:47.39:PARYDGAE
一度使った単語は、使わないようにすれば?
デフォルトの名無しさん [sage] 2018/03/25(日) 15:13:49.64:ICJzh6RG

同じ単語は高々1回しか使えないということで
デフォルトの名無しさん [] 2018/03/25(日) 15:24:25.42

しりとりのルールも知らないのか
デフォルトの名無しさん [sage] 2018/03/25(日) 15:59:34.89:Wi9Zk4mn
input
6
けんばんはーもにか
かみのけ
もうないでしよ
あるよ
けっこんしよう
うん

output
デフォルトの名無しさん [sage] 2018/03/25(日) 18:50:35.30:ZFL51Okg

けんばんはーもにか → かみのけ → けっこんしよう → うん
以外に考えられるの?
デフォルトの名無しさん [] 2018/03/25(日) 20:17:28.76

///
デフォルトの名無しさん [sage] 2018/03/25(日) 20:41:22.44:Qy9e8iWO

「足し算のプログラムを書け、入力は3と4」
という問いに「7しかないでしょ」と答えてるようなもんだぞそれ
デフォルトの名無しさん [sage] 2018/03/25(日) 20:51:42.25:1ylF9qbh
アウトプットは赤ちゃんでした
デフォルトの名無しさん [sage] 2018/03/25(日) 21:23:06.15:ZFL51Okg

いやは問題の不備を指摘してるように見えたんだけど違うの
違うならなんなの?
デフォルトの名無しさん [sage] 2018/03/25(日) 21:33:15.53:lfdSZ5QO
すまんすまんよく読んでなかった

どんな不備?
outputは4で良さそうに思えるが
デフォルトの名無しさん [sage] 2018/03/25(日) 21:55:06.19:Y0AA7BVa

・「ゐゑぁぃぅぇぉゃゅょゎー」を含む単語はない
>けんばんはーもにか
'ー'

'を' とか 'う゛'(Unicodeでは1文字) は含むんだろうか?
濁音・半濁音の扱いもローカルルールがあるようだけど?
デフォルトの名無しさん [sage] 2018/03/25(日) 22:52:38.78:r2Id4T4+

Kotlin
ttps://paiza.io/projects/3JlXbCwKoxeWq4adKPrlaw
デフォルトの名無しさん [sage] 2018/03/25(日) 22:56:05.59:r2Id4T4+


のプログラムでこうなった。

入力
単語数: 6
けんばんはーもにか
かみのけ
もうないでしよ
あるよ
けっこんしよう
うん

出力
単語数: 4
けんばんはーもにか
かみのけ
けっこんしよう
うん
デフォルトの名無しさん [sage] 2018/03/25(日) 22:58:48.24:Qy9e8iWO
なるほど
お題としては数字とかアルファベットのが見通しがいいな
デフォルトの名無しさん [sage] 2018/03/26(月) 20:54:56.37:bouVP8Z1
プログラマ名乗っていい?
◆QZaw55cn4c [sage] 2018/03/26(月) 20:56:27.32:dvRuSlEv

どうぞ:−)
デフォルトの名無しさん [sage] 2018/03/26(月) 21:54:41.90:bouVP8Z1

ttps://ideone.com/TCBMbc
C++。サンプルは解けたが相変わらず日本語表示には厳しいな。
こんな感じでいい?
デフォルトの名無しさん [sage] 2018/03/26(月) 22:45:31.40:bouVP8Z1
そういえば、必ず”ん”で終わらなければならないっていう制約はないよね。
言葉が尽きても負けなんだし。
デフォルトの名無しさん [sage] 2018/03/27(火) 01:45:16.06:Kzq8gSOx
すげぇ
しりとりは普通に組むとオーダーが大きくなるからなぁ
お題の単語数10^5に対応するプログラム書ける気がしない
辺は少ないし、これ最大流で解けるんだっけ?
デフォルトの名無しさん [sage] 2018/03/27(火) 02:13:31.11:6oSpwfuc
あんまり、オーダー爆発起こすとちょっと大変だな。
次に続く単語数の数が多いほど爆発する。
最大N!だけど、そういうケースは少ないよ。
デフォルトの名無しさん [sage] 2018/03/27(火) 03:46:37.52:6oSpwfuc
最適化閃いたけど、無理筋やった。
3変数ごにょごにょするだけで枝切できるかと思ったんだけど。
デフォルトの名無しさん [] 2018/03/27(火) 05:36:02.02
再帰使わない解を見たいな
デフォルトの名無しさん [sage] 2018/03/27(火) 07:06:00.62:wPClF3oP

ttps://ideone.com/LYz9cE
ひらがなは 7bit程度で表せるので、頭と尻だけ数値化、頭でテーブルを分けた。
デフォルトの名無しさん [sage] 2018/03/27(火) 07:10:55.86:6oSpwfuc

スタックを展開するだけだからなぁ。
めんどくさいけど、理論は楽。
デフォルトの名無しさん [sage] 2018/03/27(火) 12:16:29.94:wPClF3oP
ttps://ideone.com/29wlkp
全探査しなくてもいいので、同じ階層に'あかい','あおい','あさい'など頭と尻が同じ語は枝刈り出来る。
デフォルトの名無しさん [sage] 2018/03/27(火) 15:10:13.58:04A2frTi

>最大N!だけど、そういうケースは少ないよ。

可能な末尾の文字の種類をRとすると次の語を選ぶ選び方は(先頭は与えられているので)末尾違いの高々R
(中間が異なるものからはどれを選んでもいいので先頭のを選べばいい)

先頭の文字別にリストにでも格納しておけば N 単語での計算量は高々 O(N ^ R)
デフォルトの名無しさん [] 2018/03/30(金) 08:34:52.77:Vv6lbhFT
お題
桁の並びが大きい順になっている数をすべてもとめる
デフォルトの名無しさん [sage] 2018/03/30(金) 08:35:45.83:QER2k9uu
意味不明。
デフォルトの名無しさん [] 2018/03/30(金) 08:51:48.50:h7HIobcW
9876543210の各桁を表示する・しない、で2^10-1(=1023)通りってことかの?
デフォルトの名無しさん [sage] 2018/03/30(金) 08:58:40.80:HHYSbDrZ
Ruby

(1..10).each{|i| puts [*0..9].reverse.combination(i).map(&:join)}
デフォルトの名無しさん [sage] 2018/03/30(金) 09:14:47.35:QER2k9uu
あーそういうことか
デフォルトの名無しさん [] 2018/03/30(金) 09:39:19.40:TlFsJGTt
rubyがわからないのでわからん
どういうこと?
今スマホでアクセスしてるから試すのもできない
デフォルトの名無しさん [sage] 2018/03/30(金) 09:42:37.75:h7HIobcW
すまほでもコピペしてideoneで試せるんじゃね?
ttps://ideone.com/ihH1LH
デフォルトの名無しさん [] 2018/03/30(金) 09:51:09.95:TlFsJGTt

おお。動いた。
あー。そういう意味か。
デフォルトの名無しさん [sage] 2018/03/30(金) 20:28:56.47:whZFBFFl
お題: n!の末尾の0の個数を数える
たとえば、n = 9のとき9! = 362880なので末尾の0の個数は1
n = 10 のとき 10! = 3628800なので末尾の0の個数は2
制限事項: gmpなどのライブラリは使用不可。以下の5問を合計1.8秒以内で。

n = 132 , # = ?
n = 743 , # = ?
n = 54321 , # = ?
n = 2147483647 , # = ?
n = 4294967296 , # = ?
デフォルトの名無しさん [sage] 2018/03/30(金) 20:39:11.33:HHYSbDrZ
Ruby 0.015秒くらい

[132, 743, 54321, 2147483647, 4294967296].each{|n| puts "n = %d => #%d" % [n, (1..log(n, 5)).map{|i| n / 5**i}.sum]}

# output
n = 132 => #32
n = 743 => #183
n = 54321 => #13576
n = 2147483647 => #536870902
n = 4294967296 => #1073741816
◆QZaw55cn4c [sage] 2018/03/30(金) 21:43:34.36:sxHgkaP9

ttps://ideone.com/sSfH5w

>以下の5問を合計1.8秒以内で。
は未達成、これは難しい‥‥
デフォルトの名無しさん [] 2018/03/30(金) 21:47:51.34:9xE1BuhJ
面白いね

何かお題が出て()それに対して意味不明の即答’)、
まぁそれはそれでごもっともと思ったらrubyのコード()が出て、
その後はあーだこーだとレスが続いてく

前スレから見始めた初心者だけど、
未知の課題に対するコーディング能力ってやっぱり大事だ
◆QZaw55cn4c [sage] 2018/03/30(金) 21:49:03.26:sxHgkaP9

なるほどねえ
デフォルトの名無しさん [sage] 2018/03/31(土) 04:32:05.81:8va89mAu

ttps://ideone.com/SLwoYB
ttps://ideone451.com/AGDBWO
C++。普通に解いたら20秒くらいかかるからさらに脳筋な方法で解こうと思ったらメモリ足りなかった。
とはいえ階乗では解きたくないし。まぁいいか。
デフォルトの名無しさん [sage] 2018/03/31(土) 05:34:00.26:8va89mAu
省メモリで解こうと思ったらGCCに匙投げられた。
コンパイルタイムはこれからやな。
ttps://ideone.com/CScvWR
デフォルトの名無しさん [sage] 2018/03/31(土) 05:44:58.45:1thwAW7O
ruby のを J に移植してみた

入力
(2,#d)$d,>(3 : '+/<.y%5^1+i.<.5^.y') each d=.132 743 54321 2147483647 4294967296

結果
+--+---+-----+---------+----------+
|32|183|13576|536870902|1073741816|
+--+---+-----+---------+----------+

5を数える他の有力なやり方ってどんなだろう
デフォルトの名無しさん [sage] 2018/03/31(土) 05:45:55.95:1thwAW7O
コピペミス
結果は
132 743 54321 2147483647 4294967296
32 183 13576 536870902 1073741816

が正しかった (どうでもいいか)
デフォルトの名無しさん [sage] 2018/03/31(土) 05:48:43.09:1thwAW7O
ちなみに頭の(2,#d)$d,>がないとの出力となる
デフォルトの名無しさん [sage] 2018/03/31(土) 05:56:26.94:b7Xd3QxJ
int count(unsigned int n){
int sum=0;
while(n){
n/=5;
sum+=n;
}
return sum;
}

この関数を5個の整数値に対して実行するのに
1.8秒以上かかるのかよw
(アセンブラでやる限り)8bitマイコンでもそこまで
かからない希ガスw
デフォルトの名無しさん [sage] 2018/03/31(土) 05:58:47.42:1thwAW7O
それただのlog5
デフォルトの名無しさん [sage] 2018/03/31(土) 06:00:14.81:1thwAW7O
違うかn足してるからいいのか
デフォルトの名無しさん [] 2018/03/31(土) 18:37:28.47:qrmwmyS1
俺の頭ではいまだにやり方がわからない。
既に1.8日を超えたような気がする。
デフォルトの名無しさん [sage] 2018/03/31(土) 21:03:57.21:LOE3Ppmf
n!を素因数分解した時の5の指数が求める数だから
Σ{k∈N}[n/5^k] を計算すればいいだけ
デフォルトの名無しさん [] 2018/03/31(土) 23:35:26.94

意味分からん暗号書くなや
デフォルトの名無しさん [sage] 2018/04/01(日) 00:08:24.40:6pRv7XaO
Σ 総和
∈ 左は右の元である
N 自然数
[ ] 越えない最大の整数
/ 除算
^ べき乗
デフォルトの名無しさん [sage] 2018/04/01(日) 02:06:20.43:1KgD14Zs
記号の優先順位も書けや
あと{}の意味はぶくなや
デフォルトの名無しさん [sage] 2018/04/01(日) 07:11:43.66:USFx+VjM
そんなのだから文系ってバカにされるんだぞ?
デフォルトの名無しさん [] 2018/04/01(日) 07:16:13.39:ZmqbD5eD
意味わからん暗号て。。。
論理と集合やらんかったのか?
まだ習ってない歳なの?
デフォルトの名無しさん [sage] 2018/04/01(日) 07:36:56.40:Ia41pKI0
高卒にはつらい文字だ。
デフォルトの名無しさん [sage] 2018/04/01(日) 07:50:55.11:hpdUzi2i
こういう数式をTEX記法でup出来るサイトなかったっけ?
デフォルトの名無しさん [] 2018/04/01(日) 09:35:03.69:zXSLQCZZ

文系だからではなく、元々バカなだけだろううな。
今時は普通なら、知らん事は自分で調べる。
デフォルトの名無しさん [] 2018/04/01(日) 09:49:03.09
そもそも「素因数分解した時の5の指数」が分からんし!
なんでそれが0の数と関係あるのかも分からんし!
文系を迫害すんなや
◆QZaw55cn4c [sage] 2018/04/01(日) 10:40:13.62:EVES2VPh

mediawiki を採用しているところですね
でも自分で mediawiki をビルドしようとすると、TeX 表記導入のところで嵌ります、うまくいかない
デフォルトの名無しさん [sage] 2018/04/01(日) 13:21:09.52:hPpSSUHU
これ分からなくなって八つ当たりしてんな、一旦ROMって落ち着けよ
10!=3628800=36288x10^2のように、後ろの0の数は10が何個掛けられているかで決まる
10=2x5だから2と5の掛けられている数のうち小さい方とも言えるな
で、一例として10!=1x2x3x4x5x6x7x8x9x10=2^8x3^4x5^2x7=2^6x3^4x7x(2^2x5^2)だから、0が2つ付くと言える
どう考えても2の素因数は5の素因数より多くなるので5の素因数の数だけ分かれば良い
この時、5の素因数の数はnが5の倍数になった時(n/5)+nが5^2の倍数になった時(n/(5^2))+…と計算すれば求まる 端数切り捨てな
デフォルトの名無しさん [] 2018/04/01(日) 14:01:25.37

> どう考えても2の素因数は5の素因数より多くなる

そうとは限らないじゃん
2の素因数の数も数えなきゃ不正確じゃん
KAC [sage] 2018/04/01(日) 14:29:21.34:R1ag/+cJ

それを主張するなら、2の方が多くなる事例をあげるか、証明するかしないと。
デフォルトの名無しさん [sage] 2018/04/01(日) 14:50:31.82:NSJxVWjO
多い分には問題がない
デフォルトの名無しさん [sage] 2018/04/01(日) 15:21:10.32://EuH1G7

任意の2以上の整数nとする. n!に対して素数kの素因数の数が F(n, k) になる事は機知とする.
F(n, k) = [n/k] + [n/(k^2)] + ...
またガウス記号の定義([x] は x を超えない最大の整数)から任意の実数 x に対して,
x - 1 < [x] <= x  ……☆.
m_k を n/(k^m_k) >= 1 となる最大の整数とすると,
n/(k^m_k) >= 1 ⇔ n < k^m_k ⇔ log_k(n) >= m_k なので, m_k = [log_k(n)].
また m_k より大きな任意の整数 i に対して n/(k^i) < 1 なので, [n/(k^i)] = 0.
従って, F(n, k) = [n/k] + [n/(k^2)] + ... + [n/(k^m_k)].
さて, ☆より
F(n, 5) <= n/5 + n/(5^2) + ... + n/(5^m_5)
= n*(1/5)*(1 - 1/(5^m_5))/(1 - 1/5)
= n*(1 - 1/(5^m_5))/(5 - 1)
= n*(1 - 1/(5^[log_5(n)]))/(5 - 1)
<= n*(1 - 1/(5^log_5(n)))/(5 - 1)
= (n - 1)/4,
F(n, 2) > n/2 - 1 + n/(2^2) - 1 + ... + n/(2^m_2)
= n*(1/2)*(1 - 1/(2^m_2))/(1 - 1/2) + (-1)*m_2
= n*(1 - 1/(2^m_2)) - m_2
> n*(1 - 1/(2^(log_2(n) - 1))) - log_2(n)
= n - log_2(n) - 2.
依って2以上の任意の整数nに対して,
F(n, 5) <= (n - 1)/4 < n - log_2(n) - 2 < F(n, 2)
となり題意は示された.
((n - 1)/4 < n - log_2(n) - 2 は増減表を書くなりして確かめて)
デフォルトの名無しさん [sage] 2018/04/01(日) 15:34:29.77:NSJxVWjO
a,bをとりあえず非負実数
[a]をaを超えない最大の整数として
a>=b→[a]>=[b]
[a+b]>=[a]+[b]
はすぐにわかる。
n!を割る2べき数の最大指数は1からnまでに偶数が[n/2]個
あることより[n/2]以上であることもすぐわかる

5^m<=n<5^(m+1)として
[n/5]+[n/5^2]+...+[n/5^m]
<=[n/5+n/5^2+...+n/5^m]
<=[n/5+n/5^2+...]=[n/4]<=[n/2]<=n!を割る2べき数の最大指数
◆QZaw55cn4c [sage] 2018/04/01(日) 15:46:35.74:EVES2VPh

「素因数 2 の数は 素因数 5 の数よりも多い」
を使うのなら証明は使う側がしないといけないだろう?一定の範囲では 2の倍数の方が 5 の倍数よりも多いとはわかるが、素因数の数について正確なことをいえるかな?
デフォルトの名無しさん [sage] 2018/04/01(日) 15:47:58.83:NSJxVWjO
[n/5]+2[n/5^2]+3[n/5^3]+...+m[n/5^m]
を評価しなければいけなかった(。。)

mを非負整数とするときm[a]<=[am]
だから
[n/5]+2[n/5^2]+3[n/5^3]+...+m[n/5^m]<=
[n/5]+[2n/5^2]+[3n/5^3]+...+[mn/5^m]<=
[n/5+2n/5^2+...+mn/5^m+...]<=
[n (1/5)(1+2(1/5)+3(1/5)^2+....)]
=[n(1/5)/(1-1/5)^2]
=[5n/16]<=[n/2]
あとは同じ 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
デフォルトの名無しさん [] 2018/04/01(日) 16:14:16.83
なんか長々と書かせちゃってごめん
正の整数の全範囲が対象じゃなくてあくまで「n!」だってこと忘れてたわ
デフォルトの名無しさん [sage] 2018/04/01(日) 18:24:24.96:NSJxVWjO
勘違い
デフォルトの名無しさん [sage] 2018/04/01(日) 18:24:43.79:NSJxVWjO
は無視して
デフォルトの名無しさん [sage] 2018/04/01(日) 22:04:20.90:niLyVdLs

>未知の課題に対するコーディング能力
とか言ってるが、高校数学ではよくある問題だぞ?

ttp://examist.jp/mathematics/integer/kaijyou-soinsu/
ttp://www.geocities.jp/math12345go/math-qa/kaijou.htm
ttps://www.school-turnup.com/p-12594/
ttps://www.shinko-keirin.co.jp/keirinkan/tea/kou/jissen/sugaku/201603/index.html

高卒なんて言い訳になんねーよ
デフォルトの名無しさん [] 2018/04/01(日) 22:25:21.45

数I・Aで100点だったが、数II・Bで0点取って、数III・Cは選択しなかった俺に謝れ
デフォルトの名無しさん [sage] 2018/04/02(月) 01:59:38.46:J8SaQrAA
お題そのものが数学のお題だったということだな。
デフォルトの名無しさん [sage] 2018/04/02(月) 07:50:16.86:OKtU2ZmG
プログラミング的には、n!を割る最大の5のべき乗の指数が最大の2のべき乗の指数
を超えないということを使わずに(=知らずに)
それでも十分な速度(実質程度の処理しかしない)なものが書けるかということが課題

高校レベルの課題に見えて実は決してそうじゃないな
KAC [sage] 2018/04/02(月) 08:54:14.80:rV3y1QX6

設計したこと無いの?
デフォルトの名無しさん [sage] 2018/04/02(月) 09:32:15.39:OKtU2ZmG
select max(m) from select m where 10^m|n!
と同レベルの可読性だが
やることは割り算しながら足し算となるコードなんて
そもそもあるのかよw
デフォルトの名無しさん [sage] 2018/04/02(月) 12:18:57.87:ZxHHSjBr

>知らずに十分な速度
その程度なら2の個数も数えるだけだから簡単だし高速だと思う
が、普通はちょっと考えて5だけで良いなと5だけ数えるコードを書くんじゃないかな
何も知らず何も考えず計算機任せの力技ってのだけがプログラミングじゃないでしょ。
デフォルトの名無しさん [] 2018/04/02(月) 12:28:13.55:IY8Jb2od
高校レベルの数学をすっかり忘れたおぢさんにやさしく教えておくれ。
デフォルトの名無しさん [sage] 2018/04/02(月) 12:41:49.07:3lJ3dDiL
素因数の数が
m := [log(n)/log(k)]として
 m
 Σ[n/k^i]
i=1
明らかにmも[]の中もkに対して(広義)単調減少なんだから
素数が大きくなるほどn!のその素因数の数が減ることも明確というお話
デフォルトの名無しさん [] 2018/04/03(火) 00:32:23.81

ご覧ください、これがアスペです
デフォルトの名無しさん [sage] 2018/04/03(火) 04:19:52.09:j/8PevsK

中学生が手計算で出来るレベルだ
数学苦手でしょ?
デフォルトの名無しさん [sage] 2018/04/03(火) 04:29:34.46:j/8PevsK

1〜132の整数の中に5の倍数は何個ある?
1〜132の整数の中に25の倍数は何個ある?
1〜132の整数の中に125の倍数は何個ある?
1〜132の整数の中に625の倍数は何個ある?
...

132の階乗を素数の積で表したとき
5は何回出てくるる?

132の階乗の右に並ぶ0の数は?
デフォルトの名無しさん [sage] 2018/04/03(火) 06:13:09.59:AFO/JCVj
何時までやってんだよw
デフォルトの名無しさん [] 2018/04/03(火) 09:25:43.98:Lqpq4yV4

132という値を出した理由は?
5,25,125,625を出した理由は?
デフォルトの名無しさん [sage] 2018/04/03(火) 09:27:23.08:wT7rO+2N
こんだけ話題が伸びてる問題なのに出題後高々10分でほぼ理想的なコードが掛かれてるってのが面白いな
デフォルトの名無しさん [sage] 2018/04/03(火) 09:39:27.81:wc7Iq10c
個々の住人数学が滅茶苦茶できてコードが3割みたいな人いるからな。
デフォルトの名無しさん [sage] 2018/04/03(火) 10:49:30.76:c+6kwVVv

> 132という値を出した理由は?
1問目の数値からから

> 5,25,125,625を出した理由は?
考えてみよう
デフォルトの名無しさん [sage] 2018/04/03(火) 13:37:36.52:dgEzwcuL
俺は理想的なコードは割って足すループの方だ
可読性だなんだの風潮はあるが、ああいう一工夫がこういうプログラミングの煌めき

と思う
デフォルトの名無しさん [sage] 2018/04/03(火) 15:34:52.13:AFO/JCVj
何が煌きだよw
定石(じょうしき)だろw
デフォルトの名無しさん [sage] 2018/04/03(火) 22:23:56.22:fs0DGcro

というか至極単純なコードならついついゴルフしたくなってしまうというか
デフォルトの名無しさん [] 2018/04/03(火) 22:46:02.45:dYq4OQgG
お題
与えられたデータを間引きして小さいな順に並べる
間引くデータの個数の最小値を求める
デフォルトの名無しさん [sage] 2018/04/03(火) 22:58:26.43:fs0DGcro
日本語でおk
デフォルトの名無しさん [sage] 2018/04/03(火) 23:00:28.05:j/8PevsK
任意の有限長の実数列に対し
単調増加列の中で最大長となる部分列を求めよ

って感じ?
デフォルトの名無しさん [sage] 2018/04/03(火) 23:07:35.66:9JPZuSkd
要素数の最大はどれくらい?
デフォルトの名無しさん [sage] 2018/04/03(火) 23:31:42.00:YxTEfpvL

すぐに「n!の末尾の0の個数」などをググって
WEBに書かれている方式をコーディングするか、
自分の頭で方式から考えはじめるかの違いだろうな
デフォルトの名無しさん [sage] 2018/04/03(火) 23:39:30.66:YxTEfpvL
まさかな…
デフォルトの名無しさん [sage] 2018/04/04(水) 00:25:41.22:C+gm7esp

そのわりにはに至るまで出てきてないわけだが
コロンブスの卵にケチ付けた奴みたいだな
デフォルトの名無しさん [] 2018/04/04(水) 00:27:47.47:HZl+eAA0

1,1,1の場合、0個で良いのか?
デフォルトの名無しさん [sage] 2018/04/04(水) 00:42:07.59:3+w4vvmw

ググるような問題か?
普通に義務教育を出てれば一瞬でわかると思うのだが
デフォルトの名無しさん [sage] 2018/04/04(水) 00:46:27.40:3+w4vvmw

「小さいな順」ってどっちだろうね?
単調増加か単調非減少か
私は単調増加だと思ったから答えは2個
普通のソートだと単調非減少だから単調増加?

どっちにしろアルゴリズムは大して変わらん
デフォルトの名無しさん [sage] 2018/04/04(水) 00:51:30.79:KRNVtbK3

義務教育でlogはやら無いぞ
何分でコーディング完了して動作確認までいったのよ
デフォルトの名無しさん [sage] 2018/04/04(水) 00:52:29.89:3+w4vvmw
logなんて使わん
デフォルトの名無しさん [sage] 2018/04/04(水) 00:53:18.67:3+w4vvmw
素因数分解を習えば十分
デフォルトの名無しさん [sage] 2018/04/04(水) 00:53:53.74:KRNVtbK3

何番のお台の話をしてるんだよ
ずれてるぞボケが
デフォルトの名無しさん [sage] 2018/04/04(水) 00:56:57.83:3+w4vvmw
ずれたとしたら俺のせいではない
が悪い
デフォルトの名無しさん [sage] 2018/04/04(水) 00:58:01.53:KRNVtbK3
いや、お前が悪い。きっぱり
デフォルトの名無しさん [sage] 2018/04/04(水) 00:59:08.89:KRNVtbK3
んで、お前はその簡単な問題を
何分で問題解決しコーディング完了して動作確認までいったのよ
デフォルトの名無しさん [sage] 2018/04/04(水) 01:00:53.49:3+w4vvmw
の問題であることは明らか
デフォルトの名無しさん [sage] 2018/04/04(水) 01:02:49.08:KRNVtbK3
log使ってんじゃん

普通に義務教育を出てれば一瞬でわかると思って
お前はその簡単な問題を
何分で問題解決しコーディング完了して動作確認までいったのよ
上の方のレスでどれがお前の回答よ
デフォルトの名無しさん [sage] 2018/04/04(水) 01:04:22.37:3+w4vvmw

簡単すぎて書く気にもならんレベル
logなんか使わん
デフォルトの名無しさん [sage] 2018/04/04(水) 01:05:01.45:3+w4vvmw
にlogなんか出て来ないだろ?
デフォルトの名無しさん [sage] 2018/04/04(水) 01:07:37.29:KRNVtbK3

じゃあlogを使わない計算量の多い方法でもいいよ。

義務教育を出てれば一瞬でわかる問題を
お前が一から考えて自力で解いてコーディングして動作を確かめ
書き込んだレスは上の何番だよ
デフォルトの名無しさん [sage] 2018/04/04(水) 01:09:27.61:KRNVtbK3
人のレスをを見たら簡単だと印象を持ったんだろ
自力ですぐには解けなかったんだろ
デフォルトの名無しさん [sage] 2018/04/04(水) 01:09:59.83:3+w4vvmw
そもそもlogを使ったコードなんて出てきたか?
デフォルトの名無しさん [sage] 2018/04/04(水) 01:10:40.77:KRNVtbK3
ぼけがw
デフォルトの名無しさん [sage] 2018/04/04(水) 01:16:56.56:3+w4vvmw
考え方は
以上
デフォルトの名無しさん [sage] 2018/04/04(水) 01:20:52.57:/4oBH7Xm
もう構うなよ
デフォルトの名無しさん [sage] 2018/04/04(水) 01:39:06.43:rhFOVHGj

順に並べるということから同値の連続は許して広義の単調増加でよいのでは

工夫のない力技のを描いてみた
ttps://www.onlinegdb.com/ByuL67-iG
デフォルトの名無しさん [sage] 2018/04/04(水) 01:41:20.57:rhFOVHGj

一応2行ほど費やしてほんのちょびっとだけ枝刈りしてある
デフォルトの名無しさん [sage] 2018/04/04(水) 02:12:06.95:OPiy2CfY
なら自分も広義単調増加で
LISだし二分探索のO(NlogN)で実装
ttps://ideone.com/kN5UFU
デフォルトの名無しさん [sage] 2018/04/04(水) 02:22:12.11:OPiy2CfY

やっべLISで作ったから答えがLISのままだわ
n-出力に脳内変換しておいて
デフォルトの名無しさん [] 2018/04/04(水) 03:07:06.84:Ssb/YhXn

Kotlin
後ろから手前に見て行くように作ってみたが、これで良いのか?
ttps://paiza.io/projects/_o2ryjyVw3lQI2iKrDRf_A?language=kotlin
デフォルトの名無しさん [sage] 2018/04/04(水) 03:27:44.46:OPiy2CfY

広義単調増加だよな?
そのプログラムだと
1, 3, 6, 8, 9, 10, 6, 5, 6, 7
が5で出力される(解は1,3,6,6,6,7より4)
デフォルトの名無しさん [sage] 2018/04/04(水) 06:36:29.21:5k6f4LQE

間引きする関数というか方法は?サンプルもないのにどうしろと。
デフォルトの名無しさん [sage] 2018/04/04(水) 07:58:24.29:C+gm7esp
ほらサンプル

元のデータ 1, 3, 6, 8, 9, 10, 6, 5, 6, 7
これの 1, 3, 6, (8, 9, 10,) 6, (5,) 6, 7
括弧内の4つを間引けば昇順1,3,6,6,6,7になる
最小の間引く個数は4
デフォルトの名無しさん [sage] 2018/04/04(水) 08:06:05.02:5k6f4LQE

1, 3, 6, 8, 9, 10, (6, 5, 6, 7)
これでいけない理由は?
デフォルトの名無しさん [sage] 2018/04/04(水) 08:07:01.43:C+gm7esp

そっちでもいい
答えは同じだから
デフォルトの名無しさん [sage] 2018/04/04(水) 08:07:50.32:5k6f4LQE

残るものが変わってくるんだから、たまたま同じだったではすまんだろう。
デフォルトの名無しさん [sage] 2018/04/04(水) 08:12:16.57:C+gm7esp
たまたまじゃなくてどちらでも同じだから良いって言ってるんだよ
最小の個数が算出されれば良いんだよ

を例にして説明するとv1とv2の長さが等しいとき、
選び方によって間引方は変わるがどちらを選んでも
同じ答え(個数)になるからどちらでもいい
デフォルトの名無しさん [sage] 2018/04/04(水) 08:13:20.00:C+gm7esp
「選び方」というのは等しいときv1を使うかv2を使うかってことね
デフォルトの名無しさん [sage] 2018/04/04(水) 08:13:32.31:5k6f4LQE
主観がないな。
デフォルトの名無しさん [sage] 2018/04/04(水) 08:14:06.01:C+gm7esp
ただの荒らしだったか
デフォルトの名無しさん [sage] 2018/04/04(水) 08:16:15.34:5k6f4LQE
まぁいいわ。説明が悪いとだけ言っとくわ。
デフォルトの名無しさん [sage] 2018/04/04(水) 08:17:58.31:5k6f4LQE
ttp://arison.jp/wordpress/wp-content/project_comedy_l.gif
デフォルトの名無しさん [sage] 2018/04/04(水) 08:27:21.83:5k6f4LQE
じゃー、ソートすれば常に0だな。
おしまーい。
デフォルトの名無しさん [sage] 2018/04/04(水) 08:39:36.72:5k6f4LQE
これ、プログラムのお題じゃなくてイジワル問題ってやつだ。
一応間引くとは言ったけど、どのように間引きたいかは書いてない。
それを考えろっていうもんだいで、じょうけんとしては何もだされていない。
べつに大きくしてもよい。
が、大きくする必要性もないので、条件内でやる最善手がソートして昇順にするだけででも満たされうる。

以上。
デフォルトの名無しさん [sage] 2018/04/04(水) 09:01:32.20:5k6f4LQE
ttps://ideone.com/G4cjeS
C++。これが間違ってるんだったらその理論を聞きたい。
デフォルトの名無しさん [sage] 2018/04/04(水) 09:09:05.05:5k6f4LQE
思想でも読んでるのかなぁ。
デフォルトの名無しさん [sage] 2018/04/04(水) 10:01:46.30:OPiy2CfY
なんだその、「牛乳を1個買ってきて。卵があったら6個買ってきて」と言われて卵があったから牛乳を6個買ってくるような行動
リアルでこんな奴いるんだな……
間違ってるわけではないのが余計質悪い
デフォルトの名無しさん [sage] 2018/04/04(水) 10:05:40.95:5k6f4LQE

ん?だから説明が悪いっていのを体現しただけ。
 で書いてるでしょ。
多分思想問題なんだよこれ。
デフォルトの名無しさん [sage] 2018/04/04(水) 10:10:25.80:5k6f4LQE
例えばね、例えば。
この数字が暗号で間引くと人が死ぬとかいうシチュエーションでそもそも間引く必要あるの?っていう趣旨返しなわけ。
デフォルトの名無しさん [sage] 2018/04/04(水) 10:25:05.16:rXkfBXRy
与えられたデータが数列とも限らないし勝手に解釈して好きなように作る以外にやりようがない問題
自由度が大きい問題はあらゆる答えが正解ともいえるから一つの正解にたどり着く過程を楽しむ数学好きとかには不評だろう
デフォルトの名無しさん [sage] 2018/04/04(水) 12:49:19.51:C+gm7esp
おいおいおいおい
勝手に解釈して好きなように作るしかない問題(←否定的な表現)だからあらゆる答えが正解だ、というの?

これは「どう解釈しても構わないから好きなように答えれば良い問題」っていうんだよ。

例えばソートのアルゴリズムだって別に数値かどうかなど決めずとも考察も品評もできる
「比較回数だけでいうならo(1)のバケツソートが最高。はい論破」とか言うのも自由
答えが一個ならただの問い、クイズだよ
デフォルトの名無しさん [sage] 2018/04/04(水) 16:23:18.45:AaKOqhzy
[[[[[[][}[[[ [ {} [] ]]][ [[ [
デフォルトの名無しさん [] 2018/04/04(水) 16:49:39.45:uRR+3wvr
暗号か?
デフォルトの名無しさん [sage] 2018/04/04(水) 19:04:15.98:3+w4vvmw
C言語
なんかとほとんど同じになってしまった
ttps://ideone.com/xraUUB
デフォルトの名無しさん [sage] 2018/04/04(水) 19:50:20.24:kMfCNnre

荒らしっていうかさ
その子はこのスレにながく張り付いてる
無職でかつガイジ
かわいそうな子だから放置しといてあげて
デフォルトの名無しさん [sage] 2018/04/05(木) 00:22:00.99:gfFWgbCr
A(間引く)の処理の後にB(小さい順に並べる)の処理をすると読んでしまったのは内緒
デフォルトの名無しさん [sage] 2018/04/05(木) 22:33:01.28:R1vPtX9i
お題
以下の配列pで与えられるツリー構造を図示せよ
・pの要素数はN
・p[i]はノードiの親ノードを表す
・p[i]=-1の場合、ノードiは根ノードである
・pに含まれる-1の数はちょうど1つ

[input]
1 2 -1 0 0 1 1 2

[outupt]
2
|-- 1
| |-- 0
| | |-- 3
| | `-- 4
| |-- 5
| `-- 6
`-- 7
デフォルトの名無しさん [sage] 2018/04/06(金) 06:25:51.13:EFVHWowI
p[0]=1
p[1]=0
デフォルトの名無しさん [sage] 2018/04/06(金) 06:27:10.11:EFVHWowI
p[2]=-1
デフォルトの名無しさん [sage] 2018/04/06(金) 06:40:00.16:EFVHWowI
連結ではない <===> ループが存在する
デフォルトの名無しさん [sage] 2018/04/06(金) 08:57:39.15:GWNJOzqa

ttps://ideone.com/u2CqvF
デフォルトの名無しさん [sage] 2018/04/06(金) 11:36:10.59:Rm6bGaxB
お題にツリー構造って明記されてるから閉路は無いのでは
デフォルトの名無しさん [sage] 2018/04/06(金) 12:54:56.14:gBxcjV03
条件には書いてない
根が1個という条件だけ中途半端に書いてある
はて
デフォルトの名無しさん [sage] 2018/04/06(金) 13:12:46.44:6ssoNVnM
「〜で与えられるツリー構造」
デフォルトの名無しさん [sage] 2018/04/06(金) 13:39:17.95:VaxQogp+
条件には書いてない!(書いてある)
目か頭かどちらかあるいは両方おかしい。
頭の方ならこれからエクストリーム言い訳が来るだろうから楽しみにしてるw
デフォルトの名無しさん [sage] 2018/04/06(金) 14:45:17.05:gBxcjV03
「解無し」という答えに文句言ったくち?
デフォルトの名無しさん [] 2018/04/06(金) 16:12:43.87:/oIeslo0
以外のやり方以外のやり方考えるの面倒だな。
てか、いきなり最適解が出てしまった感あるな。
他の言語に書き換えるのは簡単だが移植しただけになってなんとなく無意味。
デフォルトの名無しさん [sage] 2018/04/06(金) 17:02:31.80:gBxcjV03
再帰じゃない解とか
デフォルトの名無しさん [] 2018/04/06(金) 17:09:52.76:FoSTO+1D
階層構造なのに再帰使わないのは辛いなあ。自分でデータを積む事になるだろうし。しかしそれぐらいしかないか?
デフォルトの名無しさん [sage] 2018/04/06(金) 17:12:50.15:Vf6CoCVF
そだね
なにかアクロバティックな解法でもあれば面白いんだけど凡才で思いつけん
デフォルトの名無しさん [] 2018/04/06(金) 18:06:53.73:mKIKE6t9
お題
5以上の素数が与えられたとき1番近い6の倍数を求める
デフォルトの名無しさん [sage] 2018/04/06(金) 18:13:50.95:4/E3/dCo
5以上の素数しか与えられない?
素数以外も与えられることもある?
デフォルトの名無しさん [sage] 2018/04/06(金) 18:15:51.07:wUq7JaWt
日本語読めないのか?
デフォルトの名無しさん [sage] 2018/04/06(金) 18:17:05.45:wUq7JaWt
(n+3)/6*6 かな
デフォルトの名無しさん [sage] 2018/04/06(金) 18:18:14.39:yx3PdwAt
素数列挙がメンドだから日本語で。
素数を6で割って、ラウンドして1プラスして、6倍する。
であってる?
デフォルトの名無しさん [sage] 2018/04/06(金) 18:19:17.00:yx3PdwAt
四捨五入の方がいいか?
デフォルトの名無しさん [sage] 2018/04/06(金) 19:32:58.29:EFVHWowI

5以上の素数が与えられなかった場合の動作については何も書かれてないので
好きに仕様を決めれば良いんだよ
デフォルトの名無しさん [sage] 2018/04/06(金) 19:36:58.77:EFVHWowI
エラー表示
動作不定
与えられるまでまつ
など


仕事だとそういうところでもめたりするのだ
今回は仕事じゃないので好きに決めればいい
デフォルトの名無しさん [sage] 2018/04/06(金) 19:41:53.07:wUq7JaWt
それ言い出したら、言語によっては実数も文字列も行列も与えられるし、きりがないよ
デフォルトの名無しさん [sage] 2018/04/06(金) 19:47:17.56:Q5AWbdER
int q587(int p){//pは5以上の素数
return (p % 6==1)? 6*(p/6):6*(p/6+1);
}
デフォルトの名無しさん [sage] 2018/04/06(金) 19:51:17.88:EFVHWowI

「今回は仕事じゃないので好きに決めればいい」
デフォルトの名無しさん [sage] 2018/04/06(金) 20:02:53.64:Vf6CoCVF
>>592
7が与えられたら結果はいくつになるそれ?
デフォルトの名無しさん [sage] 2018/04/06(金) 20:08:15.85:/U4wFi2E

n - (-1)^(n%6/5)
デフォルトの名無しさん [sage] 2018/04/06(金) 20:13:35.02:/U4wFi2E

こっちの方がいいか。除算は切り捨て
n - 1 + n%6/5*2
デフォルトの名無しさん [sage] 2018/04/06(金) 20:34:39.42:/osLfhPv
Ruby
-~n/6*6
デフォルトの名無しさん [sage] 2018/04/06(金) 20:46:11.62:Vf6CoCVF
n+1 ってのを -~n と短縮してるわけか
面白い
デフォルトの名無しさん [sage] 2018/04/06(金) 21:04:40.65:zGB1Hjc3
一番近くない答えを出す回答が混ざってるのが面白い
デフォルトの名無しさん [sage] 2018/04/06(金) 21:06:03.82:EFVHWowI
面白いか?
どっちも
デフォルトの名無しさん [sage] 2018/04/06(金) 22:19:03.40:Zyva5DHv
お題
整数n(0 <= n < 2^32)を英語で表記する
0 => zero
134 => one hundred thirty four
1000000 => one million
4294967295 => ???
デフォルトの名無しさん [sage] 2018/04/06(金) 23:06:37.46:st3Hb+gI
その???のところどんな形式でもいいの?
それともtwo to the power of thirty two subtracted by oneじゃないとダメ?
デフォルトの名無しさん [sage] 2018/04/06(金) 23:22:09.18:rqOyDV9k
four billion なんちゃらだろjk
デフォルトの名無しさん [sage] 2018/04/06(金) 23:56:30.88:/U4wFi2E
Ruby

ttps://ideone.com/F3RT13
デフォルトの名無しさん [sage] 2018/04/07(土) 00:21:05.83:Bd1xKzd/

ttps://ideone.com/d3UrjB
C++。プライム検出をダメコードででっち上げて書いた。正直遅い。
デフォルトの名無しさん [sage] 2018/04/07(土) 00:24:29.61:Bd1xKzd/

下がる方考慮してなかったから考慮したコード書いたよ。
デフォルトの名無しさん [sage] 2018/04/07(土) 00:55:56.21:WL4rZ6s4
鈴木貫太郎
北海道大学 2種類の数字でできてるn桁の数字の個数
ttps://youtu.be/SHdUszy0qQs

2種類の数字だけでできている、4桁の数字は、いくつあるか?
答え、567

2種類の数字だけでできている、N桁の数字は、いくつあるか?
答え、81(2^(N-1) - 1)

N=5 の時も、求めて
デフォルトの名無しさん [sage] 2018/04/07(土) 01:12:51.88:cljYAf7A

普通に 81 * (2^(5 - 1) - 1) = 1215 なのに何を求めるの
10C2 * 5C2 - 9*5 + 10C2 * 10P2 - 9 * 10 = 1215 みたいに場合分けしてもう一度計算しろってことかね
デフォルトの名無しさん [] 2018/04/07(土) 01:38:08.29:bMqQKRLP

その問題って元の値が素数かどうかは関係ないのでは?
Perl だとnが正の整数なら int((n+3)/6)*6 の計算で出来てしまうと思うが。
/ の割り算が整数で出るような言語なら整数化も不要。(C言語で int n だった場合等)。
デフォルトの名無しさん [sage] 2018/04/07(土) 01:39:34.76:WL4rZ6s4
素数は奇数だから、6 で割った余りのうち、1, 5 のみが素数になり得る。
つまり、6N + 1, 6N + 5 (6N ± 1)だけ。
6N + 3 は、3 の倍数になるので、素数にならない

この動画を参照

鈴木貫太郎
整数、素数、京都大学入試問題 数学
ttps://youtu.be/PCX6sqN9FhA

p, q が共に素数のとき、
p^q + q^p が素数になる、p, q をすべて求めよ

ヒント、どちらか一方は必ず、2 となる。
答え、(2, 3), (3, 2)

ちなみに、答えが合っていても、0点です。
それ以外に解が存在しないという、証明に加点される
デフォルトの名無しさん [sage] 2018/04/07(土) 02:02:01.73:cljYAf7A
n = p^q + q^p, p <= q とすると
n >= 8 なのでnは奇素数
よって p = 2, q >= 3
q > 3 の時 n = 2^q + q^2 = 2 + 1 = 3 mod 6 で矛盾
q = 3 の時 n = 17 で必要条件を満たしている
よって (p, q) = (2, 3), (3, 2)

でこれをSATソルバーでも使って解けっていうのかね
デフォルトの名無しさん [] 2018/04/07(土) 04:51:35.83:bMqQKRLP

Kotlin
ttps://paiza.io/projects/z6BKEqpdH_DuzQpj6TtxZg

色々細かいことやって英語に近づけたので少し複雑なものになってしまったような気もする。
デフォルトの名無しさん [sage] 2018/04/07(土) 14:36:40.48:NmviPp4n
ttp://next.rikunabi.com/rnc/img/1820/o/0015904477.jpg
犯人は誰だ?
577 [sage] 2018/04/07(土) 23:23:36.77:ALsUA4nh

訂正
ttps://ideone.com/yYE1Jb

[-1, 0, 1, 2] の出力が
0
└─ 1
│ └─ 2
│ │ └─ 3
となって間違った枝が伸びてました。

文字列を積みながら再帰は気持ち悪いから
フラグのリストとかの方がいいかも。
611 [] 2018/04/08(日) 12:22:11.48:1mmlbc0v

N桁(4, 5桁)の数字の場合、どうプログラミングする?
ややこしい

誰か、N桁で一般化して、Ruby で書いて
デフォルトの名無しさん [sage] 2018/04/08(日) 12:34:02.96:wX43tNlZ
算数で止まってるから証明できないけどモンテカルロなら書けるよ。
デフォルトの名無しさん [sage] 2018/04/08(日) 12:49:35.30:ZTQwWTkx
Xがi個YがN - i個あるときの考えらえれる数字の数は
(10_C_2 - 9) N_C_i
だから
((10_C_2 - 9)/2) Σ{i in 1..N - 2}N_C_i
=(81/2)*(2^N - 2)
=81*(2^(N - 1) - 1)

81*(2^(N - 1) - 1)を計算すればいいだけなんだから算数でしょ
デフォルトの名無しさん [sage] 2018/04/08(日) 13:10:11.62:wX43tNlZ
ttps://ideone.com/YyAuGf
C++。というわけで書いた。
算数だとこんな感じになる。
デフォルトの名無しさん [sage] 2018/04/08(日) 13:11:04.05:wX43tNlZ
桁分割するときに%を&って書いてハマってた。><;
デフォルトの名無しさん [sage] 2018/04/08(日) 13:47:39.07:wX43tNlZ
とりあえず、書いたら止まるのやめてよ。
611 [sage] 2018/04/08(日) 14:23:00.89:1mmlbc0v

N桁(例えば4桁)で、aaaa 〜 bbbb までのすべての順列を作るのは、
どうプログラミングする?

4桁と限定せず、N桁で一般化して、誰かRuby で書いて

aaaa, aaab, aaba, aabb, abaa,
デフォルトの名無しさん [sage] 2018/04/08(日) 14:25:17.47:wX43tNlZ
無視されたのやめます。
デフォルトの名無しさん [sage] 2018/04/08(日) 14:25:26.83:k1onKASn
Rubyで宿題でも出てるのけ?
デフォルトの名無しさん [sage] 2018/04/08(日) 14:29:19.21:wX43tNlZ
の態度が気に入らないので、日本語で書く。
桁数の文字をA分とB分をプッシュバックしてソートして順列回す。
文字が2種なのでオーダー爆発はあまり起きないと思う。
デフォルトの名無しさん [sage] 2018/04/08(日) 14:35:50.62:wX43tNlZ
というか、競プロこんな解き方してREDになっても全く意味がない。
最上級に上り詰めてかってに市ね。
デフォルトの名無しさん [sage] 2018/04/08(日) 14:39:16.28:xR9rWW4L
Ruby
[*0..9].combination(2).flat_map{|(a,b)|(1..n-1).map{|i|
([a]*i+[b]*(n-i)).permutation.uniq.reject{|e|e.first.zero?}.map{|e|e.join.to_i}}
}.flatten
デフォルトの名無しさん [sage] 2018/04/08(日) 14:45:24.65:wX43tNlZ
コンビネーションいいなー。頭悪いから実装できないし毎回実装したくない。
はぁ・・・。
611 [sage] 2018/04/08(日) 15:15:37.38:1mmlbc0v
Ruby に、product という順列を作るメソッドがある

[1,2].product([3,4],[5,6])
# => [[1,3,5],[1,3,6],[1,4,5],[1,4,6],[2,3,5],[2,3,6],[2,4,5],[2,4,6]]

これで考えてみる
611 [sage] 2018/04/08(日) 15:18:19.59:1mmlbc0v
可読性が低い、C++ を読んで解析するのが、面倒

スマソ
デフォルトの名無しさん [sage] 2018/04/08(日) 15:32:27.60:ZTQwWTkx
Ruby 2.5.0

def f(n)
return [] if n == 1
(1..9).flat_map{|i|
[10*i] + ([*1..9] - [i]).flat_map{|j| (10**n - 10)/9*i + j}
} + f(n - 1).flat_map{|e| e.digits.uniq.map{|i| 10*e + i}}
end
デフォルトの名無しさん [sage] 2018/04/08(日) 15:39:18.26:drN9+cfC
ruby限定で、
しかもアルゴリズムを競うわけでもない単なるコード例ならrubyスレでやってくれと強く感じる
デフォルトの名無しさん [sage] 2018/04/08(日) 15:48:31.89:ZTQwWTkx
訂正
def f(n)
return [] if n == 1
(1..9).flat_map{|i|
([*0..9] - [i]).flat_map{|j| (10**n - 10)/9*i + j}
} + f(n - 1).flat_map{|e| e.digits.uniq.map{|i| 10*e + i}}
end
611 [sage] 2018/04/08(日) 15:54:06.97:1mmlbc0v
プログラミングは、このスレのためのものだから、
他の言語でも何でも、自由にプログラミングして下さい

言語にこだわらず、やって下さい。
その言語をやってる人が見るはず
デフォルトの名無しさん [sage] 2018/04/08(日) 15:59:40.54:aVOeIiR5
言語を指定しないでください
宿題等の依頼は遠慮願います
デフォルトの名無しさん [sage] 2018/04/08(日) 16:04:05.60:b4O4Usd0
だな
611 [sage] 2018/04/08(日) 16:17:49.11:1mmlbc0v
宿題じゃない。プログラミングのお題

他の言語でも何でも、自由にプログラミングして下さい
デフォルトの名無しさん [sage] 2018/04/08(日) 17:05:29.95:aVOeIiR5
宿題、学習「等」が目的であればここではなく然るべきところで
◆QZaw55cn4c [sage] 2018/04/08(日) 17:47:47.72:FgO8HAKn

その宿題とやらが問題として面白いものであれば、それならそれを解くことは個人的にはありうることでしょうね
デフォルトの名無しさん [sage] 2018/04/08(日) 18:45:27.43:wX43tNlZ
競争性の放棄とコードも書かないのに他人を煽る。ギルティですね。
デフォルトの名無しさん [sage] 2018/04/08(日) 18:54:09.19:wX43tNlZ
俺は書いたけど、無視されるわ、あげく必要ないっていわれましたからね。
70行も読めないなんてたかが知れてる。
デフォルトの名無しさん [sage] 2018/04/08(日) 19:12:49.68:aVOeIiR5
こんな依頼者相手にコードを提供するのがおかしい
デフォルトの名無しさん [sage] 2018/04/08(日) 19:14:36.93:wX43tNlZ
最初はフラットなので、見分けるの大変なんですよ。
デフォルトの名無しさん [sage] 2018/04/08(日) 19:16:13.27:wX43tNlZ
のことは考えてないですよ?611とやらに怒ってます。
やったこと無駄でした。ヒント与えなければよかった。
デフォルトの名無しさん [sage] 2018/04/08(日) 20:46:20.65:sgyAjV8F
お題
ビンゴゲームでリーチ数が最大の盤面をすべて列挙せよ
デフォルトの名無しさん [sage] 2018/04/08(日) 21:26:48.16:wX43tNlZ
そうですか。頑張ってください。
デフォルトの名無しさん [sage] 2018/04/08(日) 21:53:53.31:ZTQwWTkx
Ruby ただしπ/2回転させた解は省略
出力はi行目に穴の空いていないマスの列数(0〜4)を表示

[*1..4].combination(2).flat_map{|i,j|
[*1..4].combination(2).map{|k,l|
a = [4, 0, 1, 3, 2]
a[i], a[j] = a[j], a[i]
a[k], a[l] = a[l], a[k]
next if (1..4).any?{|i| a[i] == 4 - i} || a[2] + a[3] > 4 || a[1] + a[4] > 4
a
}
}.uniq.compact
#=> [[4, 0, 1, 3, 2], [4, 2, 0, 3, 1], [4, 1, 3, 0, 2], [4, 1, 0, 2, 3]]
デフォルトの名無しさん [sage] 2018/04/08(日) 22:15:08.50:TRlBW4xM

俺もと同意見かな
出題者は勝手に出すだけ
回答者は勝手に回答するだけ
出題者の意図も回答者の意図もどっちも問わない

ただ、頼まれもしないのに延々糞コード書いて晒すやつは脳の障害とは思う
デフォルトの名無しさん [sage] 2018/04/08(日) 22:20:36.69:xR9rWW4L
回答者は回答するだけってのはまさにその通り
なんかc++の変なコードあげる人いるじゃん
変なコードは別に見ないからいいんだけど、その上 構ってちゃんなのがちょっとあれなのよね
デフォルトの名無しさん [sage] 2018/04/08(日) 22:22:09.19:TRlBW4xM
あ、おれが糞コードつってんのもそいつのことねw
といかこのスレで糞コードつったらそれしかないけど
まともにC++やってきた人間からしたら血圧上がるような糞コードなw
デフォルトの名無しさん [sage] 2018/04/08(日) 23:18:12.27:drN9+cfC
c++ で書いてるヤツなんて俺以外いないよ…と思ったがNGID解除してみるといた

ruby のコードは読みやすいからruby使った回答は歓迎なんだけど、
回答もしたいからあんまり限定して欲しくはないな
(rubyで回答するほど好きではないから)
デフォルトの名無しさん [sage] 2018/04/08(日) 23:31:45.71:FWiZcz2s
ダラダラ長ったらしく書かれたC++コードも、ぱっと見意味の掴みにくいワンライナーコードも、同じくらいクソだと思うんですが・・・
デフォルトの名無しさん [sage] 2018/04/08(日) 23:38:49.63:drN9+cfC
J言語好きとして読みにくいからクソというのには党派的に反対する
読みにくさを愛でる人もいる

でもさっきはうっかりしていた
ruby 限定とか C++ 禁止とかあってもいいと思います
デフォルトの名無しさん [sage] 2018/04/08(日) 23:53:13.66:b4O4Usd0
限定する目的がわからん
特定の言語だと簡単すぎるとか?
デフォルトの名無しさん [] 2018/04/08(日) 23:58:04.55
ID:wX43tNlZ みたいなのをシャットアウトする目的なら限定してもいいだろう
デフォルトの名無しさん [sage] 2018/04/09(月) 00:06:52.35:4voddLA5

ええな
デフォルトの名無しさん [sage] 2018/04/09(月) 00:30:16.34:/QZ8FXxd


いきなり最後の式が出ると思うんだが
わざわざ知識をつかわなくても
デフォルトの名無しさん [sage] 2018/04/09(月) 00:37:01.24:/QZ8FXxd
最上位桁の数字は 1〜9 の9通り
最上位桁と異なる数字は 0〜9中で最上位桁以外 9通り
最上位桁以外の2種類の選び方は
N-1個それぞれが2個の数字から1個を選ぶ場合の数-全て最上位桁と同じになる場合の数 = 2^(N-1)-1

よって81*(2^(N-1)-1)通り
デフォルトの名無しさん [sage] 2018/04/09(月) 00:42:15.33:kgPSL5h+

C++で書いた。コードは不明。
8分くらいで解いた。あってるかは知らない。
Count:1
Score:9
11110
11110
11110
11110
00000
デフォルトの名無しさん [sage] 2018/04/09(月) 00:43:45.37:kgPSL5h+

ちゃんとコード書いてても村八分にされるんですね。
ここは怖いインターネッツですね。
デフォルトの名無しさん [sage] 2018/04/09(月) 00:52:16.18:rENMvr1T

やることやってれば他は何してもいいという訳ではないのは、インターネットもリアルも同じ。
勉強できようが仕事ができようが、人から嫌われる言動をしてれば迷惑がられるのは当然。
まして、本人が得意気にできてると思ってるだけで実際は
大したことなければ尚更だろう。
デフォルトの名無しさん [sage] 2018/04/09(月) 00:52:41.77:kgPSL5h+
ttps://ideone.com/xQYd3O
バグがあったので直したら値変わった。
デフォルトの名無しさん [sage] 2018/04/09(月) 00:56:15.06:kgPSL5h+

ほう。大したことないとおっしゃる?どの口で?
まぁいいけど。さすがにムカツクな。
俺意外に上げてる人間ってそんなに多くないぞ?
アンタはあげたことあるんだろうね。自治気取りだけど。

ふむそういうことなら。そのように対応する。
デフォルトの名無しさん [sage] 2018/04/09(月) 01:09:33.57:kgPSL5h+
おい出て来いよ。
デフォルトの名無しさん [sage] 2018/04/09(月) 01:11:54.34:kgPSL5h+
なんか最近ビジネス色強いから裏で何やってるんだろうと思ってたけど。
くだらねーな。
デフォルトの名無しさん [sage] 2018/04/09(月) 01:24:20.55:kgPSL5h+
5CHで何言ってるか自覚ないみたいだな。
従順な奴隷でも探してろ。ばかやろー。
デフォルトの名無しさん [sage] 2018/04/09(月) 06:13:27.90:Y3Lep2Gi
言語を限定されてもそんなのに構わず好きな言語で回答してしまえばいいよ
デフォルトの名無しさん [sage] 2018/04/09(月) 07:53:04.73:3mzXDd2F
野糞落ちてるだけでも不快なのによ
得意げに野糞していく奴の存在とか
◆QZaw55cn4c [sage] 2018/04/09(月) 08:04:05.81:yXqzhiVB

そうそう
昔、一途に prolog で解きまくっている人がいて、すごくかっこいい、っておもっていました
デフォルトの名無しさん [sage] 2018/04/09(月) 12:31:23.52:M/BmQ9Z1
C++ は可読性が低くて、ビジネスロジックに無関係な、儀式部分が多いから、
読む方も、自分の時間を使うから、かなりの損。
書いている人は面白いのだろうけど

Ruby なら、ほぼビジネスロジックに集中できる。
だから多くのアルゴリズム・パズル本は、Rubyで書かれている

Rubyで書いてって頼まれても、言語指定を無視して書けばよいだけ。
他の言語で書いても、必ず見る人はいる
デフォルトの名無しさん [] 2018/04/09(月) 12:44:33.93:pBiH2JPL
ま、ここはデフォルトでは言語指定なしだから書きたい言語で書けば良い。
デフォルトの名無しさん [sage] 2018/04/09(月) 13:13:38.81:rSzJcNe3
Pythonで書かれてるが。いつの時代の話だよw
デフォルトの名無しさん [] 2018/04/09(月) 14:15:37.60:Ptdpw/63
2の倍数:下一桁が偶数
3の倍数:各桁の和が3の倍数
4の倍数:下二桁が4の倍数
5の倍数:下一桁が5の倍数
6の倍数:2の倍数かつ3の倍数

8の倍数:下三桁が8の倍数
9の倍数:各桁の和が9の倍数
10の倍数:下一桁が0
11の倍数:各桁を交互に足し引きした値が11の倍数
12の倍数:3の倍数かつ4の倍数
◆QZaw55cn4c [sage] 2018/04/09(月) 15:56:24.14:yXqzhiVB

7 の倍数、11 の倍数、13 の倍数は同一の事実にもとづいて判定できる
つまり 7 * 11 * 13 = 1001
デフォルトの名無しさん [sage] 2018/04/09(月) 18:34:30.66:arNj8dw4
スレタイ
デフォルトの名無しさん [] 2018/04/09(月) 22:25:36.32:6uICJjyK
簡単なお題
の漢数字版。
上限は2^32でなくても良い。しかし最低でも億の位までは欲しいところだな。
デフォルトの名無しさん [sage] 2018/04/09(月) 23:15:38.09:Y3Lep2Gi
エサが与えられてるんだからさっさと食らいつけよ畜生共
デフォルトの名無しさん [sage] 2018/04/09(月) 23:45:10.55:GweYAzQS

もっともらしく言ったところでruby厨が好き勝手に振る舞える理由にはならないよ
デフォルトの名無しさん [sage] 2018/04/09(月) 23:57:17.62:1DnKLeEW

ローマ記数法やフランス語記数法とか頭おかしくていいお題かも。
デフォルトの名無しさん [sage] 2018/04/10(火) 00:10:16.46:mR/iFs0H

それも良いねえ。フランス語は知らんのだが、ちょっと調べたら嘘のようにややこしいな。フランス人はこんなのでよく大丈夫だな。
デフォルトの名無しさん [sage] 2018/04/10(火) 00:21:47.03:qmeNshHp

いい数学者輩出してるんだよなぁ…
デフォルトの名無しさん [sage] 2018/04/10(火) 02:06:58.01:5lWeQ397

逆変換, 漢 -> 数
ttps://ideone.com/a8sMTP
679 [sage] 2018/04/10(火) 02:17:28.72:mR/iFs0H

自分で作った。 Kotlin。
ttps://paiza.io/projects/eNXAAROxenLmNFSy5mSRqw?language=kotlin

1000だと「千」だけど10000000だと「一千万」という具合に「一」が入れるのが一般的だったりして、
ほんのちょっと例外があることに改めて気づいた。
679 [sage] 2018/04/10(火) 02:22:57.60:mR/iFs0H

おお。いいね。
俺も気が向いたら作ってみよう。
デフォルトの名無しさん [] 2018/04/10(火) 21:13:27.90:TIeJSw3E

C++のようなシステム用言語をビジネスアプリに使うのがそもそもの間違い。
作者のビャーネ・ストロヴストルップが意図した使い方じゃないしね。
デフォルトの名無しさん [sage] 2018/04/11(水) 01:55:25.98:rGUvV2b9
気軽に「こんなソフトありませんか?」Part.175 [無断転載禁止]©2ch.net
ttps://egg.5ch.net/test/read.cgi/software/1469784906/15

15 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2016/08/02(火) 11:00:10.21 ID:2cA8AwqS0
200個ほどある文書の1行目だけ、一括でアルファベットを小文字に出来るソフトありませんか?
当方スルースキルあるんで、このレスに気づいた方、気長にレス待ってます
デフォルトの名無しさん [sage] 2018/04/11(水) 07:07:47.94:jfPKheqL

Ruby で作って、向こうのスレに書き込んだ
デフォルトの名無しさん [] 2018/04/11(水) 07:59:50.61:nTOtPPqx
お題
立方体の2色の塗り分けの全種類を展開図で示せ
デフォルトの名無しさん [sage] 2018/04/11(水) 10:09:29.48:jfPKheqL
NetworkX, ZDD
デフォルトの名無しさん [sage] 2018/04/11(水) 14:46:07.95:nGNQyhwo
お題に合同条件くらい書かないとどの面も区別するつまんない回答が出て来るぞ
デフォルトの名無しさん [sage] 2018/04/11(水) 14:48:16.12:0UD5Vzkt
合同条件?
なんか日本語がおかしい
デフォルトの名無しさん [sage] 2018/04/11(水) 14:50:49.91:nGNQyhwo
わからないならいい
デフォルトの名無しさん [sage] 2018/04/11(水) 15:07:26.30:TZfcO+VR
数学の時間いつもケチつけてたのかな?
「互いに素」「同様に確からしい」etc…

「日本語としておかしい!」「俺が数学できないのはそのせい!」
デフォルトの名無しさん [] 2018/04/11(水) 15:20:54.42:TvIzhvdC
の問題は俺の解釈では物凄く簡単なのだが、こういうことなのか?

立方体ということは展開すると例えばこうなるよな。


□□□□


で、これに二種類色付けして、例えば


□□□□


とか


■□□□


とかになる。これの全パターンを出すって問題でいいの?

そうすると6面なので6bitを1bitづつ各面に割り当てて出すだけの誰にでもできそうな簡単なお仕事になると思うんだが、そういう問題?
デフォルトの名無しさん [] 2018/04/11(水) 15:25:13.66:TvIzhvdC
あ、もしや組み立ててひっくり返したりしたら同じになるパターンは省くのか?
デフォルトの名無しさん [sage] 2018/04/11(水) 16:03:19.27:QsDOKQlt
このスレは質問スレじゃないので出題者の意図は気にせず好きな解釈で回答すればよい
デフォルトの名無しさん [sage] 2018/04/11(水) 16:29:15.11:kkx2Nyh4
matlabの質問なのですがこの@r=の式はどのように記述したらいいのですか?

r = sin(5θ);
x = r*cos(θ);
y = r*sin(θ);

としてプロットしてもエラーになってしまいました



ttps://i.imgur.com/yK7edDT.jpg
デフォルトの名無しさん [sage] 2018/04/11(水) 17:09:59.63:hSvs5cp7

スレチ

matlabしらないけどこれでいけんじゃね
r = sin(5 * θ)
デフォルトの名無しさん [sage] 2018/04/11(水) 17:43:34.08:kkx2Nyh4

どこで聞けばよいでしょうか
デフォルトの名無しさん [sage] 2018/04/11(水) 18:04:52.30:PSt1mUEK

google先生かその課題を出した先生にでも聞いてみたら?
デフォルトの名無しさん [sage] 2018/04/11(水) 18:16:58.13:Z0egFvSN

検索🔍も出来ない知能じゃ無駄かもしれんけど

MATLABプログラミング 質問箱 その4
ttp://mevius.5ch.net/test/read.cgi/tech/1346661308/
デフォルトの名無しさん [sage] 2018/04/11(水) 19:37:33.05:oecHnyiq
Java
ttps://ideone.com/DzIEkK
デフォルトの名無しさん [sage] 2018/04/11(水) 20:46:33.17:oecHnyiq

あ、バグってるわ…
デフォルトの名無しさん [sage] 2018/04/11(水) 21:00:50.79:oecHnyiq
バグ修正
ttps://ideone.com/l5N7Y8
デフォルトの名無しさん [sage] 2018/04/11(水) 21:08:58.17:0UD5Vzkt
コンピューターじゃないと出来ない課題の方が良いと思うんだ
特に数学っぽいのは
デフォルトの名無しさん [sage] 2018/04/11(水) 21:12:18.35:0UD5Vzkt
数学的知識をどこまで使って良いか迷うし
ガシガシに最適化をしたら結果をテーブルで持つ
みたいになったらつまらんし
デフォルトの名無しさん [sage] 2018/04/11(水) 21:45:46.47:oecHnyiq

こんなんとか?

プログラミングのお題スレ Part7
ttps://peace.5ch.net/test/read.cgi/tech/1429195275/41
> 41 :デフォルトの名無しさん:2015/05/01(金) 14:31:24.98 ID:9G1+bMO9
> お題:ちょうどn個(1 < n)の格子点(x座標もy座標も整数の点)を通る円の半径の
> 最小値を求める。円の中心点は格子点でなくてよい。
> 例
> n=2 -> 0.5
> n=5 -> 16.170331
> n=6 -> 2.5
※ n=5 は 5.89256 が正しい


サンプルデータ(最小ではない可能性あり)
ttps://ideone.com/wVBe61
デフォルトの名無しさん [sage] 2018/04/11(水) 21:52:59.57:5X4H9iqq

考えてみる

最小ではない可能性ありが貼られてるってことは
まだ出来た人がいないってことかな?
デフォルトの名無しさん [sage] 2018/04/11(水) 22:14:47.69:hSvs5cp7
まずnの値によっては最小値が存在しないから問題が破綻してる
結局数値計算するだけの問題だし
デフォルトの名無しさん [sage] 2018/04/11(水) 22:16:44.50:oecHnyiq
nの値によって最小値が存在しないってどういうことだ?
デフォルトの名無しさん [sage] 2018/04/11(水) 22:25:53.20:hSvs5cp7
一から実数の定義と上限下限の説明しないとダメなの
デフォルトの名無しさん [sage] 2018/04/11(水) 22:27:48.82:5X4H9iqq
n=1の時に最小値が存在しないことはすぐわかるが
1<nだから関係ない

n=2の時は簡単にわかる

特定の3個以上の格子点を通る円は高々1個しか存在せず
また、ある点から特定の距離以内の格子点の数は有限なので
存在するなら最小値は存在しそう
デフォルトの名無しさん [sage] 2018/04/11(水) 22:37:40.38:5X4H9iqq

説明よろしく
デフォルトの名無しさん [sage] 2018/04/12(木) 00:18:24.92:1gf/4w6V
結局はなんか勘違いしてたのけ?
デフォルトの名無しさん [sage] 2018/04/12(木) 00:40:22.94:ysEoI2/K

Kotlin
とりあえず の通りのビットを面に対応させて全部出すだけのプログラム。
ttps://paiza.io/projects/MN90ETk9Kk3odk-Jlk2DEQ
回すと同一になるパターンを省くのはこれから考える。
デフォルトの名無しさん [sage] 2018/04/12(木) 00:58:08.26:/+iNh+t9
C
ttps://ideone.com/i4fH8G

なんかダメダメなコードになった
しかも8通りで合ってるのか分からん
デフォルトの名無しさん [sage] 2018/04/12(木) 01:09:29.57:Tk+dtr/S

ttps://ideone.com/sl1872
10通りかな

回転処理が自信が持てない
デフォルトの名無しさん [sage] 2018/04/12(木) 03:43:27.29:T93bDVFD

立方体の展開図は、384 通り。
同型のものを1つとして数えると、11 通りになる

この本に書いてある

超高速グラフ列挙アルゴリズム−〈フカシギの数え方〉が拓く,
組合せ問題への新アプローチ
ERATO 湊離散構造処理系プロジェクト・湊真一、2015

計算時間が何百億年も掛かるのが、数秒で解けた
「おねえさんの問題」で有名な、
湊真一の超高速グラフ列挙アルゴリズム ZDD
デフォルトの名無しさん [sage] 2018/04/12(木) 05:28:52.38:bmPcyOmC
おねえさんの問題作った人?w
すげえバズったよなアレwwww
720 [sage] 2018/04/12(木) 07:11:40.78:Tk+dtr/S

ttps://ideone.com/4YO0hK
回転処理を修正
べた塗り(全白,全黒)を除外
8通り
デフォルトの名無しさん [sage] 2018/04/12(木) 07:53:54.58:iYyApZ27
お題
正20面体の3色の塗り分けの全種類を展開図で示せ
611 [sage] 2018/04/12(木) 08:56:31.07:T93bDVFD

>2種類の数字だけでできている、N桁の数字は、いくつあるか?

これを馬鹿正直にnested loop すると、N=4, 5 では、4・5階層と、
Nの数によって、階層が異なってくるから難しい

Nが幾つでも、ループの階層が同じになるように、作らなければならない
611 [sage] 2018/04/12(木) 10:59:42.57:T93bDVFD

Ruby で作った

DIGITS = [4, 5] # number of digits 桁数
# 答え、567, 1,215

DIGITS.each do |digit|
count = 0
wrapper = Array.new digit - 1
# [*0..9] で、配列にする
[*0..9].combination(2) do |ary|
(digit - 1).times { |i| wrapper[i] = ary }

# 先頭が0 のものと、1つの数字だけを使ったものを排除する
# *wrapper で、外側の[ ] をはずす
count += ary.product(*wrapper)
.reject { |item| item[0] == 0 }
.reject { |item| item.uniq.length == 1 }.length
end
puts count
end
デフォルトの名無しさん [sage] 2018/04/12(木) 12:56:22.91:nAeVzt+r
の通りに単純な数値計算をすればいいだけ
デフォルトの名無しさん [sage] 2018/04/12(木) 13:52:20.61:T93bDVFD
数学で解くのと、プログラミングで解くのは、異なる。
理論と実践。机上と現実

両方で解いて、確かめたものだけが、現実でも正しい
デフォルトの名無しさん [sage] 2018/04/12(木) 14:01:35.93:1gf/4w6V
うん?つまりコンピュータが存在しない時代の数学者はすべて間違えていると?
デフォルトの名無しさん [sage] 2018/04/12(木) 14:03:11.18:nAeVzt+r
簡単すぎる性質を使わないのはバカだと思う
N=10000の場合は?
デフォルトの名無しさん [sage] 2018/04/12(木) 21:33:52.89:mVSzUkBa
は要するにN=197が無い
ttps://ideone.com/wVBe61
このリストで初めての欠品がN=197だ

N=197は計算しきれないような余りにもバカでかい円になるのか、そもそも数学的に存在しないのか、円が存在できないのか、分からない
N=197の円が存在できないとすれば、無いものを延々と探し続けることになる

ついでに、例えばN=320ともなると、この円が数学的に本当に存在してるのか、
それとも計算の誤差でOKが出てるのか、分からない
デフォルトの名無しさん [sage] 2018/04/12(木) 21:44:36.64:1gf/4w6V
数学的にはどんなNの円でも存在する
ttp://mathworld.wolfram.com/SchinzelCircle.html
ただしこの計算で出てくる円は(一部のNを除き)最小ではない

円周上の格子点は整数で計算出来るから誤差はないし検算も難しいものではない
デフォルトの名無しさん [sage] 2018/04/12(木) 21:47:30.14:mVSzUkBa
へぇ……
もはや数式まであるのかよ
デフォルトの名無しさん [sage] 2018/04/12(木) 21:55:34.08:1gf/4w6V
ということでが何を言ってるのかがわからんわけですよ
デフォルトの名無しさん [sage] 2018/04/12(木) 22:04:42.99:vJMR7aa5
円が存在することと最小値が存在することは全く別だがな
十分に大きいnに対してはその辺微妙だと思うんだけどどう?
デフォルトの名無しさん [sage] 2018/04/12(木) 22:10:25.49:1gf/4w6V
最小は存在はするだろ。
計算や探索で出た数値が本当に最小かどうかは(俺には)わからんが。
デフォルトの名無しさん [sage] 2018/04/12(木) 22:18:36.57:iYyApZ27

デフォルトの名無しさん [sage] 2018/04/12(木) 22:35:20.29:iYyApZ27
N個の格子点を通る円は、
x, y方向に1移動してもN個の格子点を通る為
原点を通る円に限定しても一般性を失わない

N≧3とする
原点を通りちょうどN個の格子点を通る半径r未満の円は、原点からr未満の距離にある格子点しか通らない
原点からr未満の距離にある格子点は有限個であり、この中からN個の格子点を選ぶ選び方も当然有限個
特定のN個の格子点を通る円は1個しか存在しない為、原点を通りちょうどN個の格子点を通る半径r未満の円も有限個である

よって、ちょうどN個の格子点を通る(半径rの)円が存在すれば、最小値は存在する
デフォルトの名無しさん [sage] 2018/04/12(木) 22:39:01.75:vJMR7aa5
おお、わかりやすいな、サンクス
デフォルトの名無しさん [] 2018/04/12(木) 22:55:32.88:7+VvzBGk
この円の問題は何度も取り上げられるが
毎回うだうだと話が続くだけで何の進展もないみ
アプローチを変えてNを限定するとか
半径を整数にするとかしてみたら
デフォルトの名無しさん [sage] 2018/04/12(木) 23:53:08.79:1gf/4w6V
円問題、昔書いたコード探してみたがよくわからないことやってるから困る…
デフォルトの名無しさん [sage] 2018/04/13(金) 00:58:19.54:17c0MCsX

なにをグダグタ説明してるんだ?

> よって、ちょうどN個の格子点を通る(半径rの)円が存在すれば、最小値は存在する
なんてどうみても自明だろ
デフォルトの名無しさん [sage] 2018/04/13(金) 01:06:37.13:nIDp//XA

君はこの問題の格子点が「xもyも有理数の点」に問題が変わったとしても
「最小値が存在するのは自明」とか言っちゃう白痴君かな?
デフォルトの名無しさん [sage] 2018/04/13(金) 01:34:00.60:17c0MCsX

バカなの?
> よって、ちょうどN個の格子点を通る(半径rの)円が存在すれば
(ちょうどN個の格子点を通る)より小さな円がなければ半径rの円が最小
より小さな円が存在するなら同様に更に小さな円が存在するかを調べればいいだけ
有理数とか関係ないだろ w
デフォルトの名無しさん [sage] 2018/04/13(金) 01:35:49.41:prF5m/sZ
なん有理数の点が出てくるんだよw 全く関係ないだろ
デフォルトの名無しさん [sage] 2018/04/13(金) 01:38:36.55:nIDp//XA
ああ、本当に頭が悪いんだな
今からでも遅くないから解析学の教本くらい読んでおけ
デフォルトの名無しさん [sage] 2018/04/13(金) 02:01:41.10:prF5m/sZ
なんで格子点の問題を有理点の問題にしようとするん?
デフォルトの名無しさん [sage] 2018/04/13(金) 04:56:48.60:17c0MCsX

あっ、逃げた w
デフォルトの名無しさん [sage] 2018/04/13(金) 06:14:56.89:aQMXC5LV
【問】ある数字 n までの数列ローマ数字(I、II、III、…)にしたとき、
   最大の長さを持つ文字列を探す関数を書け。

例:
n = 5 のとき、{I、II、III、IV、V}、したがって最大は3。
f(5) = 3
デフォルトの名無しさん [sage] 2018/04/13(金) 06:32:40.44:EOEX1zZI

証明とは何か
学校で習わなかった?
デフォルトの名無しさん [sage] 2018/04/13(金) 06:34:53.76:EOEX1zZI
「最小値が存在するかわからん」
て言ってるやつへの説明として
「自明である」

馬鹿ですね
デフォルトの名無しさん [sage] 2018/04/13(金) 06:39:20.49:UkpF6ptq

なにを言いたいんだ?
証明ならで充分だろ
デフォルトの名無しさん [sage] 2018/04/13(金) 06:42:13.54:UkpF6ptq

> 馬鹿ですね
お前がな w
デフォルトの名無しさん [sage] 2018/04/13(金) 07:46:29.65:EOEX1zZI
コミュ障ですか?
十分かどうかなんて説明する相手次第なんだよ
ポイントのだけでわからないんだから詳細のが必要だろう


証明の方針として全くセンスを感じません
回答としては0点ですね
まあじゃあ試しにその方針で証明してみてください
デフォルトの名無しさん [sage] 2018/04/13(金) 07:51:07.00:EOEX1zZI
類似問題としては
円を楕円、五角形などに変える例なんかが考えられますね

数学的センスがないにわかるかな?
デフォルトの名無しさん [sage] 2018/04/13(金) 08:03:23.71:UkpF6ptq
センスとか言い出しちゃったよ w
まあ数学的な反論ができないことはわかった
デフォルトの名無しさん [sage] 2018/04/13(金) 08:28:27.40:tKNxGhVp
全く数学になってないに反論するのは難しくないか?
デフォルトの名無しさん [sage] 2018/04/13(金) 08:30:51.82:tKNxGhVp
説明にも証明にもなってないし
証明の方針としても全く使えない
デフォルトの名無しさん [sage] 2018/04/13(金) 08:32:16.43:tKNxGhVp
っていうこと自体理解してない

試しにその方針で証明してみてください
デフォルトの名無しさん [sage] 2018/04/13(金) 08:40:12.04:UkpF6ptq
はい、逃げた w
デフォルトの名無しさん [sage] 2018/04/13(金) 09:03:55.52:NllHkTks
ポイントがわからない ===> 数学的知識の欠如
方針がトンチンカン ===> 数学的センスの欠如
わからない人に「自明」 ===> コミュ障

三重苦

数学的反論の対象が無いものを数学的に反論するのは無理ゲー
デフォルトの名無しさん [sage] 2018/04/13(金) 11:30:23.16:UkpF6ptq
結局数学的反論はできないってことな w
のどこがおかしいか具体的に書いてから言えよ
デフォルトの名無しさん [sage] 2018/04/13(金) 11:43:09.54:/r/W22v1
解答候補となる円が有限個に絞れることを説明できていない
デフォルトの名無しさん [sage] 2018/04/13(金) 11:58:51.45:prF5m/sZ
どこに無限の候補があるのん?
デフォルトの名無しさん [] 2018/04/13(金) 12:28:44.65:jVGeL/Sn
数学によるマウンティングをするスレができたと聞いて高みの見物に来ました
デフォルトの名無しさん [sage] 2018/04/13(金) 12:33:48.19:UkpF6ptq

なんで絞る必要があるんだ?
円が無限にあったとしても半径の最小値が存在するかどうかとは関係ない
デフォルトの名無しさん [sage] 2018/04/13(金) 12:37:25.51:prF5m/sZ
Nが2以上で半径の最小値が存在しない状態ってのがまずわからん。
N=0や1の場合で半径0を円として認めない場合、最小値が存在しないってのはわかるけど。
デフォルトの名無しさん [sage] 2018/04/13(金) 12:53:47.67:aZorcSvM
最小値が存在しないなんて主張をしてるのはだけ
最小値が存在するという主張の根拠を聞かれてるのだから、素直に存在する証明をすれば良い

は何の証明にも説明にもなってない
「他に小さいのがなければそれが最小値、小さいのが存在するならさらに小さいのを探す」
こんなものは今回の命題とは関係なく、全順序であれば最小値が存在しようがしまいが言えること
デフォルトの名無しさん [sage] 2018/04/13(金) 12:55:03.04:aZorcSvM
最小値が存在するというポイントを1個も押さえていないので
「ああ、数学が出来ない人だ」という感想が出るだけ
デフォルトの名無しさん [sage] 2018/04/13(金) 12:56:57.55:UkpF6ptq

> 全順序であれば最小値が存在しようがしまいが言えること
だからそれで十分だろ
デフォルトの名無しさん [sage] 2018/04/13(金) 12:58:12.86:UkpF6ptq

> 最小値が存在するというポイントを1個も押さえていないので
どこからそんな頓珍漢なことを思い付いたんだ? w
デフォルトの名無しさん [sage] 2018/04/13(金) 12:59:15.87:aZorcSvM

正の実数に最小値が存在する証明
「他に小さいのがなければそれが最小値、小さいのが存在するならさらに小さいのを探す」

結果に関わらず何にでも言えますねえ
デフォルトの名無しさん [sage] 2018/04/13(金) 13:08:03.29:prF5m/sZ
これ実数じゃなくて整数の問題だろ
デフォルトの名無しさん [sage] 2018/04/13(金) 13:14:40.36:/r/W22v1

それもそうだね、悪かった

ところでのアルゴリズムが有限回で停止することは保証されてるのかな
あ、あくまで保証されてるかどうか知りたいだけなんでね
デフォルトの名無しさん [sage] 2018/04/13(金) 15:59:59.85:aZorcSvM
N=1, N=2であれば有限回では止まらない
N≧3であれば有限回で止まるのはの通り
デフォルトの名無しさん [sage] 2018/04/13(金) 16:02:24.96:YbPyzhx1
誰かのお題を解いて、このどうでもいい流れを止めて。
デフォルトの名無しさん [sage] 2018/04/13(金) 16:04:43.81:aZorcSvM

宿題?
デフォルトの名無しさん [sage] 2018/04/13(金) 16:25:54.51:QuE9cEqD
Squeak/Pharo Smalltalk

| f |
f := [:n | (1 to: n) detectMax: [:m | m printStringRoman size]].
f value: 5 "=> 3 "
デフォルトの名無しさん [sage] 2018/04/13(金) 17:07:07.08:fM9MxQQG
お題 五目並べ
ttps://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q14188952404

C言語以外でも可能というか歓迎。
特にrubyなどで、ワンライナー的に(Javaでいうところのストリームを駆使)書くとエロいものとする
デフォルトの名無しさん [sage] 2018/04/13(金) 17:23:29.89:8A3ka/I4

サンプルコード出して
デフォルトの名無しさん [sage] 2018/04/13(金) 19:37:34.13:UkpF6ptq

無限に繰り返せるとしたら極限値は0になる
(単調減少だから)
しかし 1 < n で半径0はあり得ない
なので必ず有限回で停止する
デフォルトの名無しさん [sage] 2018/04/13(金) 19:40:28.93:UkpF6ptq




半径は整数とは限らない
デフォルトの名無しさん [sage] 2018/04/13(金) 19:51:14.28:prF5m/sZ

半径の二乗は有理数
整数倍して扱えばすべて整数として計算できる…んじゃないのん?
デフォルトの名無しさん [sage] 2018/04/13(金) 20:00:29.13:OxjSN83k

ttps://ideone.com/9avEMe
解が複数ある場合に全部出す
デフォルトの名無しさん [sage] 2018/04/13(金) 20:03:00.55:UkpF6ptq

できるかも知れん...
で、それがなにか?
デフォルトの名無しさん [sage] 2018/04/13(金) 21:09:21.72:VaA+ol0W
おそらく最小値は存在するんだろうけど
「1/2 + 1/3 + 1/4 + …」が収束すると思ってるようなレベルのアホがそれを主張することによって
最低限の数学的素養のあるやつらから総ツッコミされてるかんじだな
デフォルトの名無しさん [sage] 2018/04/13(金) 21:11:44.26:17c0MCsX
これまた頓珍漢なことを言い出したぞww
デフォルトの名無しさん [] 2018/04/13(金) 21:15:38.41:+tvQkfv8
数学で論争になるって珍しくないか?
数学って証明されたらそこで議論の余地がなくなるよな。
デフォルトの名無しさん [sage] 2018/04/13(金) 21:24:20.06:17c0MCsX

すでに証明されてるのに有理数ガーとか無限の円とか必死になってる奴がいるだけ
議論じゃなくマウントとりたいだけなんだろうな
デフォルトの名無しさん [sage] 2018/04/13(金) 21:28:26.35:RiDqcW69
Squeak Smalltalk で複数ある場合ぜんぶ返す版

| f |
f := [:n |
| max ans |
max := 0.
ans :=#().
(1 to: n) do: [:m |
| roman |
roman := m printStringRoman.
roman size = max ifTrue: [ans := ans, {m}].
roman size > max ifTrue: [max := roman size. ans := {m}].
].
ans size = 1 ifTrue: [ans first] ifFalse: [ans asArray]
].
f value: 5. "=> 3 "
f value: 1887. "=> #(888 1388 1788 1838 1878 1883 1887) "
デフォルトの名無しさん [sage] 2018/04/13(金) 21:42:23.87:EOEX1zZI

が証明になってない
っていう話だぞ

存在する証明は参照
これが証明


単調減少の実数列の極限が1になることも100になることもあるわけだが
当然有限回で終わらないこともある
例えばN=2の時は無限回続くことがある
N≧3の場合はにより有限回であることがわかるというだけ

数学の基礎がわからない人が数学の専門家に数学に関する意見を言うとはなかなか
デフォルトの名無しさん [sage] 2018/04/13(金) 21:45:58.60:17c0MCsX

> 単調減少の実数列の極限が1になることも100になることもあるわけだが
で、それが最小値がないこととなんの関係があるんだ?
デフォルトの名無しさん [sage] 2018/04/13(金) 21:48:26.76:nIDp//XA
マジで阿呆だな
下に有界かつ協議単調減少だからと言って最小値が存在するとは限らないのだよおバカさん
デフォルトの名無しさん [sage] 2018/04/13(金) 21:49:16.12:17c0MCsX

具体例よろしく
デフォルトの名無しさん [sage] 2018/04/13(金) 21:50:16.77:EOEX1zZI

関係ないことを理由に最小値が存在すると主張している人がいるので
デフォルトの名無しさん [sage] 2018/04/13(金) 21:51:12.93:EOEX1zZI
a_n = 1 / n
デフォルトの名無しさん [sage] 2018/04/13(金) 21:51:53.12:nIDp//XA
は?
f:{x:x∈R∧x>0}→R, f(x) = 1/x を考えれば自明だろ 本気の阿呆かよ
デフォルトの名無しさん [sage] 2018/04/13(金) 21:53:20.26:EOEX1zZI
協議単調減少?
デフォルトの名無しさん [sage] 2018/04/13(金) 21:54:30.00:nIDp//XA
狭義単調減少ね。誤変換は許して
デフォルトの名無しさん [sage] 2018/04/13(金) 21:57:30.91:EOEX1zZI

ん?
なんで列の話をしてるのにxが実数?
デフォルトの名無しさん [sage] 2018/04/13(金) 21:58:43.94:g6ntk2/w
あぼーんの連続w
デフォルトの名無しさん [sage] 2018/04/13(金) 22:01:36.65:nIDp//XA

族集合の濃度が高々?な集合に関して証明すれば十分なんだから実数関数について言及したところで何も問題ないよね?
むしろ十分正の説明としては申し分ないと思うのだが
デフォルトの名無しさん [sage] 2018/04/13(金) 22:03:22.81:EOEX1zZI

落ち着け
デフォルトの名無しさん [sage] 2018/04/13(金) 22:07:41.91:EOEX1zZI
十分正

族集合とか濃度とかどうでもいい
列の話をしてるんだから素直に列の例を出せばいい
一般化する必要もない
アホに対して一般化しても無意味
デフォルトの名無しさん [sage] 2018/04/13(金) 22:09:53.15:nIDp//XA
ごめんね、十分性ね
「アホに対して一般化しても無意味」ってのは同意だからこちらがスノビズムな嫌いがあったなら謝るよ
デフォルトの名無しさん [sage] 2018/04/13(金) 22:11:33.83:EOEX1zZI
「スノビズム」とか言っちゃうところがスノビズム
デフォルトの名無しさん [sage] 2018/04/13(金) 22:34:53.35:gix7qj2o
可算集合と非可算集合では濃度が違うから証明にならないという主張かも知れん
というかここ数学スレだっけ?
◆QZaw55cn4c [sage] 2018/04/13(金) 22:57:38.87:fORiWt/O
みな数学好きなんですね、うらやましい…
デフォルトの名無しさん [sage] 2018/04/14(土) 08:27:58.74:RfMyagEm

ttps://ideone.com/f4aEQv
普通に実装してみた
デフォルトの名無しさん [sage] 2018/04/14(土) 09:02:56.59:03TSbAgN

@Mathematica

ttps://ideone.com/uEPG3P
デフォルトの名無しさん [] 2018/04/14(土) 21:11:32.49:mas7mILb
J
(#:i.2^10)#"1'9876543210'
デフォルトの名無しさん [sage] 2018/04/14(土) 21:30:22.59:8vcIM0Ev

何これ興味ある
デフォルトの名無しさん [] 2018/04/14(土) 21:34:41.56:Z+3xnQ4k
デザインパターンをインターフェースから説明した良心的なブログ

ttps://blogs.yahoo.co.jp/kamyu_2010/35417803.html
デフォルトの名無しさん [] 2018/04/15(日) 16:50:03.82:xmTgJNlw
長方形を田の字型に4つの長方形に分割したら
左上の面積が253
左下の面積が115
右下の面積が155になった
右上の面積はいくつか?
デフォルトの名無しさん [] 2018/04/15(日) 16:58:12.07:NqrSXbP9
253=23*11
115=23*5
155=31*5
デフォルトの名無しさん [sage] 2018/04/15(日) 17:00:37.86:NqrSXbP9
お題 半素数を小さいものから200個挙げて
デフォルトの名無しさん [sage] 2018/04/15(日) 17:04:46.37:bKUHpU4e
素数を200個求める
積を列挙
ソート
デフォルトの名無しさん [sage] 2018/04/15(日) 17:19:22.18:NqrSXbP9
素数を求めなくてもできるよ
デフォルトの名無しさん [sage] 2018/04/15(日) 18:07:04.68:Fl02/9ft
数学板でやれ
デフォルトの名無しさん [sage] 2018/04/15(日) 18:11:02.11:NqrSXbP9

数学板でやれ
デフォルトの名無しさん [sage] 2018/04/15(日) 19:29:19.74:CIuag2/D

なんで整数限定なんだ?
単なる比率の問題だぞ
デフォルトの名無しさん [sage] 2018/04/15(日) 20:08:36.50:uWituoMu

整数かどうかに関わらず253*155/115で一意的に答え出るんだからただの算数
デフォルトの名無しさん [sage] 2018/04/15(日) 20:12:02.04:qw72cACc

253:x=115:155
x=341

整数で十分だけど?
デフォルトの名無しさん [] 2018/04/15(日) 20:16:25.14
算数板でやれ
デフォルトの名無しさん [sage] 2018/04/15(日) 20:29:51.65:CIuag2/D

比率の問題って書いてあるのに指摘の意味もわかってないのかよ w
デフォルトの名無しさん [sage] 2018/04/15(日) 20:32:49.64:NqrSXbP9
指摘が適当じゃないからでしょ
デフォルトの名無しさん [sage] 2018/04/15(日) 20:35:30.23:uWituoMu

だから答えが一意に決まるんだから素因数分解して自明な解を提示したレスに難癖付けるのはバカだっつってんの
デフォルトの名無しさん [sage] 2018/04/15(日) 20:40:17.66:CIuag2/D

たまたま素因数分解できるからいいだけで常に使えるわけじゃない解法示す奴は頭悪いと思われてもしょうがない
しかも単なる算数レベルの問題だしな w
デフォルトの名無しさん [sage] 2018/04/15(日) 20:41:46.95:vNL79cRV
で、お前らはいつになったらプログラミングをするんだ?
デフォルトの名無しさん [sage] 2018/04/15(日) 20:45:57.62:uWituoMu

日本語読める?
「解法を示す」じゃなくて「解を提示した」っつってんだけど
解の一意性は明確なんだから簡単に解を提示すれば
それで十分性を満たしていると同時に必要性も満たしてるんだけど
重箱の隅にもならないクソみたいな指摘してんだから突っ込まれて当然でしょ
デフォルトの名無しさん [sage] 2018/04/15(日) 20:54:58.94:GeThIANt
Squeak/Pharo Smalltalk

ttps://ideone.com/43b7Uk
デフォルトの名無しさん [sage] 2018/04/15(日) 21:05:23.77:CIuag2/D

解と言い張るならなら答えだけ書けよ
言い訳にしてもダサすぎるわ w
デフォルトの名無しさん [sage] 2018/04/15(日) 21:10:51.18:uWituoMu

初めは「なんで整数限定なんだ?」というアホな主張しておいて論点すり替えないでくれよ
剰えこっちはで答え書いてるんだけど文字読めないの?なんなのこいつ
デフォルトの名無しさん [sage] 2018/04/15(日) 21:35:40.74:CIuag2/D

因数分解してどやってたアホがいたからな w
ひょっとしてアンカーも見れないのか?
デフォルトの名無しさん [sage] 2018/04/15(日) 21:49:46.05:NqrSXbP9
なにやら揉めてますね
さて、次のお題どうぞ
デフォルトの名無しさん [sage] 2018/04/15(日) 23:35:46.74:sXJBpbWg

そりゃできるだろうねえ
だから何?

先に素数を求めた方が処理が速そうだと思ったわけだが
求めないで求めめ欲しければに書きなさい
デフォルトの名無しさん [sage] 2018/04/16(月) 00:40:40.93:0r0tOoJV
いい加減プログラミングらしいお題出してよ
デフォルトの名無しさん [] 2018/04/16(月) 07:54:19.83:sVtsCMAa

プログラミングらしいお題なら、すでににあるよ
回答はRuby()とSmalltalk()しかないけどね

組織の中で働き者は全体の1割しかいないと言われているけど、
このスレでも見事に再現されていてワロタ
デフォルトの名無しさん [sage] 2018/04/16(月) 08:39:56.02:lrRTONI/

で完結したのでこのお題は終了です
回答ありがとうございました
デフォルトの名無しさん [sage] 2018/04/16(月) 08:56:27.76:ZFIHRn8x
おう先生によろしくな!
デフォルトの名無しさん [sage] 2018/04/16(月) 09:21:55.35:F4Ovhl4T
気分転換にどうぞ

お題:与えられた迷路図の通路幅を2倍にした迷路図を作成する

入力例
#.#..
.#..#
.#...
..##.
###..

出力例
##..##....
##..##....
..##....##
..##....##
..##......
..##......
....####..
....####..
######....
######....
デフォルトの名無しさん [sage] 2018/04/16(月) 09:22:29.79:lrRTONI/
はい、次どうぞ
デフォルトの名無しさん [sage] 2018/04/16(月) 09:38:08.21:JqHYG+3X
ruby
$<.read.split.map{|s|[s.gsub!(/./,'\&\&'), s]}*$/
デフォルトの名無しさん [sage] 2018/04/16(月) 11:16:53.07:1KO8LMUv
お題: あみだくじが与えられる
あみだくじは'|','-',' 'の3つで構成されている
スタート地点が左からn番目、ゴール地点が左からm番目と与えられた時、横棒を追加することでゴールに向かう為の最小の本数を答えよ
なお解が存在しなければ-1と答えよ
横棒の高さを半分ずらして設置や長さ2以上の横棒などは禁止とする

入力例
1 4
| | |-| |
|-| | |-|
| | | | |
|-| |-| |
出力例
1
デフォルトの名無しさん [sage] 2018/04/16(月) 11:30:39.95:rl+JKxfh
同じ高さの横棒は隣接しないということでいいのかな?
デフォルトの名無しさん [sage] 2018/04/16(月) 12:23:47.11:ZFIHRn8x
最小の、とか書くから数学のマウント合戦になるのでは?アミダくじを解け、でいいじゃん。出た解答の中で最小で出してるのがあったらその時点でスゴイスゴイ
デフォルトの名無しさん [sage] 2018/04/16(月) 12:33:28.31:rl+JKxfh

それおもしろい?
デフォルトの名無しさん [sage] 2018/04/16(月) 12:58:29.77:qlfABgAK
ニコリのナンバーリンク、スリザーリンクとか、
あみだくじ・電力網・鉄道経路・選挙区割り・正多面体の展開図とか、この本に載ってる

北大の湊真一の、ZDD。
Python, Ruby でも使える

超高速グラフ列挙アルゴリズム−〈フカシギの数え方〉が拓く,
組合せ問題への新アプローチ
ERATO 湊離散構造処理系プロジェクト・湊真一、2015

計算時間が何百億年も掛かるのが、数秒で解けた
「おねえさんの問題」で有名な、
湊真一の超高速グラフ列挙アルゴリズム ZDD
デフォルトの名無しさん [sage] 2018/04/16(月) 14:43:52.77:VE3/OCqi

1人頭が悪いのがいただけ
最小って言葉を使えなかったら問題に制約がつきすぎる
デフォルトの名無しさん [sage] 2018/04/16(月) 14:45:34.28:VE3/OCqi
もちろんは(存在すれば)最小値が存在する
デフォルトの名無しさん [sage] 2018/04/16(月) 15:43:24.03:4eWg6WR3
なるほど、最小って条件は止めるか
条件を変えるわ
解がN通りある時、それぞれの解の本数をa_i(1≦i≦N)とする
この時、任意のi,j(1≦i,j≦N)に対しa_j-a_i≧0を満たすa_iを出力してくれれば良いよ
隣接しない
隣接したらあみだくじとして成立しないしね
デフォルトの名無しさん [] 2018/04/16(月) 19:17:35.12:CKG1x9VY
J
2 echo 2&#;._2 stdin''
デフォルトの名無しさん [sage] 2018/04/16(月) 19:21:25.33:T6RcU2kF

よくわからん日本語だな
デフォルトの名無しさん [sage] 2018/04/16(月) 19:23:45.57:T6RcU2kF
多分最小を別の表現にしたつもりなんだろうけど
日本語がめちゃくちゃ
無理しなくて良いよ
デフォルトの名無しさん [sage] 2018/04/16(月) 19:31:45.75:gUfDVwYo

なにこれなにこれ
デフォルトの名無しさん [sage] 2018/04/16(月) 19:45:15.45:14bBH5UG

ここ数日、数学の知識全くないくせに噛みついてる無知はお前だろ
は一般的な最小元の定義だろうが
デフォルトの名無しさん [sage] 2018/04/16(月) 20:06:21.68:w6kJX9+o
「任意のi,j(1≦i,j≦N)に対しa_j-a_i≧0を満たすa_iを出力」

意味がわかりません
◆QZaw55cn4c [sage] 2018/04/16(月) 20:08:00.59:yQIjKmTg

「任意の i, j」というのがおかしい、i を先に決定した上での「任意の j 」でいい
デフォルトの名無しさん [sage] 2018/04/16(月) 20:09:07.01:w6kJX9+o
一応私数学の専門家
◆QZaw55cn4c [sage] 2018/04/16(月) 20:15:07.59:yQIjKmTg

分野、ご専攻は何ですか?
デフォルトの名無しさん [sage] 2018/04/16(月) 20:17:49.89:w6kJX9+o
バレるので言わない
狭い世界なんでね
デフォルトの名無しさん [sage] 2018/04/16(月) 20:18:51.48:w6kJX9+o
駒場

とだけ言っておく
デフォルトの名無しさん [sage] 2018/04/16(月) 20:19:40.83:JqHYG+3X

アロハシャツの先生元気?
デフォルトの名無しさん [sage] 2018/04/16(月) 20:21:37.49:w6kJX9+o
ここまで
デフォルトの名無しさん [sage] 2018/04/16(月) 20:23:32.19:w6kJX9+o
回転寿司問題の高速ソルバーを作ったのは私
◆QZaw55cn4c [sage] 2018/04/16(月) 20:37:10.86:yQIjKmTg

一般ピープルが習得するとよい(大げさにいえば世界観が変わるような)数学の分野を教えていただければ嬉しいです
デフォルトの名無しさん [sage] 2018/04/16(月) 20:39:42.03:w6kJX9+o
集合論
デフォルトの名無しさん [sage] 2018/04/16(月) 20:59:44.33:gZF8UNgN
群論・環論

ごめん聞いたことあるような言葉を羅列してみただけ
デフォルトの名無しさん [sage] 2018/04/16(月) 21:07:23.11:8eszbiHC
お題
マイナンバーが一部欠けてしまった
?部分を補完して可能性のあるマイナンバーをすべて列挙せよ

[example 1]
99999999999?
=>
999999999996

[example 2]
??9999999999
=>
069999999999
179999999999
289999999999
399999999999
509999999999
619999999999
729999999999
839999999999
949999999999
デフォルトの名無しさん [sage] 2018/04/16(月) 22:11:04.19:NpxY1/hQ
摂動論とか難しいけどできたら気持ちいいだろうな
デフォルトの名無しさん [sage] 2018/04/16(月) 22:21:24.15:p2Ysyc3s
Ruby 全探索

A = (1..11).map{|i| i + 1 - i / 7 * 6}
%w[
99999999999? ??9999999999
].each{|s|
puts '', s, '=>'
10.**(s.count(??)).times{|i|
d = "%012d".%(i).chars
m = s.gsub(??){d.pop}.reverse.chars.map(&:to_i)
x = A.zip(m[1, 11]).map{|a, b| a * b}.sum % 11
puts m.reverse.join if (x == 1 ? 0 : -x % 11) == m[0]
}
}
#=>
99999999999?
=>
999999999996

??9999999999
=>
509999999999
619999999999
729999999999
839999999999
949999999999
069999999999
179999999999
289999999999
399999999999
デフォルトの名無しさん [sage] 2018/04/17(火) 03:09:26.43:pX2t5ilp
マイナンバーのチェックディジットを分かり易く解説しているページはないものかと探したらあったのでURL書いとく。
ttps://qiita.com/kmz_kappa/items/af18ac7b6b8bfe9041b0
デフォルトの名無しさん [sage] 2018/04/17(火) 10:02:17.20:XkVoPtoV
マジだわ、算数できない奴に噛み付いて自分がダメージ受けた
やはり数学で無理に語るべきではないな、専攻の情報の範囲だけにしとこ……
デフォルトの名無しさん [sage] 2018/04/17(火) 10:33:51.01:ePc5Lh3L
Squeak/Pharo Smalltalk

| check |

check := [:digitsStr |
 | digits checkDigit calcDigit |
 digits := digitsStr asArray collect: #digitValue.
 checkDigit := digits last.
 calcDigit := ((digits * #(6 5 4 3 2 7 6 5 4 3 2 0)) sum \\ 11
  in: [:x | x < 2 ifTrue: [0] ifFalse: [11 - x]]).
 checkDigit = calcDigit
].

#('99999999999?' '??9999999999') collect: [:incmpNum |
 | indices candNums |
 indices := incmpNum asArray collectWithIndex: [:chr :idx | chr == $? ifTrue: [idx] ifFalse: [0]].
 indices := indices reject: #isZero.
 candNums := OrderedCollection new.
 ($0 to: $9) asDigitsToPower: indices size do: [:digs |
  | candNum |
  candNum := incmpNum copy.
  indices with: digs do: [:idx :dig | candNum at: idx put: dig].
  (check value: candNum) ifTrue: [candNums add: candNum]
 ].
 incmpNum -> candNums asStringWithCr
]
デフォルトの名無しさん [sage] 2018/04/17(火) 13:45:56.41:dXM64r3I

回転すし問題が気になります><
教えてください!!
デフォルトの名無しさん [sage] 2018/04/17(火) 14:23:34.06:g5yHmTYu
自演乙。
デフォルトの名無しさん [sage] 2018/04/17(火) 16:49:46.20:KTfx2aCu


0296 デフォルトの名無しさん 2017/06/26 21:09:32

前にあったやつ。

回転寿司にやってきた私は、コンベア上の寿司をすべて食べて帰ることにしている。
コンベアは毎秒1皿分の速度で流れ、目の前の皿を取るか取らないかを選ぶことができる。
皿取ると同時に食べ始め、食べている間は次の皿を取ることができない。
私が取る以外、皿は追加されたり無くなったりしない。
コンベアの状態が次のような文字列で与えられる。 
"31_2"
数字はその皿を食べ終えるのにかかる秒数を表し、_は皿がないことを表す。1文字目が目の前にあり毎秒、左へ回転する。
例えば、"31_2"で最初の皿を食べたとき食べ終わった時の状態は、"2_1_"となる。

すべての寿司を食べ終えるまで最短何秒かかるか求めよ。
"12_3" > 6秒
"313__" > 8秒
"4_35_1264_23_434" > 60秒
"123456789123456789" > 98秒
"88967472612377988186" > 149秒
"19898693316679441672" > 170秒
"93769682716711132249893" > ?
デフォルトの名無しさん [sage] 2018/04/17(火) 17:32:19.21:dXM64r3I

ありがとうございます
デフォルトの名無しさん [] 2018/04/17(火) 19:05:05.39:S4fl8nYd
J
echo !23x
デフォルトの名無しさん [sage] 2018/04/17(火) 19:21:24.18:g5yHmTYu

どうなってんのこれ
デフォルトの名無しさん [sage] 2018/04/18(水) 00:46:46.99:fMrElfkf
お題
0〜N-1の数字を1つずつ使ったN進数表記でN桁の数のうち、最も多くの素因数を持つ数を求めよ

N=2
→10

N=5
→34210 (10進数で2430=2*3^5*5, 素因数は7個)

N=10
→???
デフォルトの名無しさん [sage] 2018/04/18(水) 00:56:38.62:JUjvxXNW
全てを探索
しかない気がする

N=14くらいが限度か
デフォルトの名無しさん [sage] 2018/04/18(水) 01:23:42.06:UfQjex1N
まーた数学の問題か。
まーたマウント取りたいセンセの荒らしか。
うんざり
デフォルトの名無しさん [sage] 2018/04/18(水) 03:59:26.48:Acg84ZKa
アルゴリズムと数学は切り離せないものだし数学が役立つ場面はもちろん多いんだけど、数学だけで完結しちゃう問題では、プログラミングのお題としては面白味がないよね。
むしろこのスレに的には悪問と言ってもよいと個人的には思う。

素直なプログラミングでは複雑になってしまうところを数学を使うことでスマートに解けるとか、逆に数学を使うことで全く別のアプローチの解法があるとかだと、面白いと思う。
必ずしも速い、安い、上手いが正義じゃなくて、そんな解き方もあるのねとか、それどうなってんの?と不思議に思えるような解法とかも見てみたいし、そんな解法が見られるお題が面白いと思う。
デフォルトの名無しさん [sage] 2018/04/18(水) 04:07:00.58:Acg84ZKa
追加すると、言語によって異なる記述能力や得手不得手を活かして上手く解いたとか簡潔に書けたとか、逆にわざわざそんな敢えて難しいやり方をするかとか、そういうのも面白いなと思います。
デフォルトの名無しさん [sage] 2018/04/18(水) 06:03:49.90:iqodOpJQ
数学で完結してんのかこれ
コンピュータ使わない解法思いつかんが
デフォルトの名無しさん [sage] 2018/04/18(水) 07:07:15.79:qlMtX02l
素因数の個数って何だっけ
互いに素な約数の個数なら、N=5の時33220(=2310=2*3*5*7*11)の方が多いし、素因数分解で出てくる素数の個数ならN=5の時31143(=2048=2^11)の方が多いし
私が文を読めていないだけ?
デフォルトの名無しさん [sage] 2018/04/18(水) 07:22:32.10:pdl2KQl9
ただ列挙して調べなきゃいけないとすると面白くもなんともない。
いい解を作ろうとすれば、できるかどうかはともかく
数学ひねり回すのだけがメインの仕事になるみたいな。
デフォルトの名無しさん [sage] 2018/04/18(水) 07:24:04.47:pdl2KQl9

0から4を全部使うという制約。
デフォルトの名無しさん [sage] 2018/04/18(水) 08:01:49.71:iqodOpJQ
J ブルートフォース

q =: >./&(+/&|:&(0&<)&q:&(#. (i.@! A. i.)))"0

iPhone の J インタプリタでは N=8 までが限界だった
q 2 3 4 5 6 7 8
1 2 6 7 13 10 16
デフォルトの名無しさん [sage] 2018/04/18(水) 08:02:43.21:JUjvxXNW
素因数の個数だと2^11は2の1個だけなんだけどなあ
例だと11個と数えたいようだけど
デフォルトの名無しさん [sage] 2018/04/18(水) 08:04:10.88:iqodOpJQ
9 も大丈夫だった
q 9
12
デフォルトの名無しさん [sage] 2018/04/18(水) 08:04:22.36:JUjvxXNW

数学ひねり回してどうにかなる気はしない
デフォルトの名無しさん [sage] 2018/04/18(水) 08:15:58.76:iqodOpJQ

問題の着目点に応じて相異なる素因数の数になるか重解を許すか解釈すればいいんじゃないの

そうしないと高校数学に良くある(このスレにも出てるな)
「n! の素因数2の個数を求めよ」の答えが恒等的に1になってしまう。
知らんけど。
デフォルトの名無しさん [sage] 2018/04/18(水) 08:33:43.28:CiWWe7S5
重解
因数

意味を知らんヤツが問題を作る
デフォルトの名無しさん [sage] 2018/04/18(水) 08:39:01.69:loM0N11v
重解じゃなくて重根な
デフォルトの名無しさん [sage] 2018/04/18(水) 08:40:26.67:CiWWe7S5
www
同じだろ
デフォルトの名無しさん [sage] 2018/04/18(水) 08:48:02.15:iqodOpJQ
いや重解は変換ミス
それに重複を許さない個数でも問題は成立するな、
良く考えると。
デフォルトの名無しさん [sage] 2018/04/18(水) 08:53:49.03:loM0N11v

解と根は本来、別の用語だよ
今はごっちゃに使われてるけど
デフォルトの名無しさん [sage] 2018/04/18(水) 09:55:28.20:8LhMtFC1

例を出さなかったらそれぞれの解釈が見れて面白かったかも


それで言い訳になってると思ってんの?
デフォルトの名無しさん [sage] 2018/04/18(水) 10:31:06.41:SkflZos/
自演乙
デフォルトの名無しさん [sage] 2018/04/18(水) 11:13:23.97:2HNL8zBg
Thanks、理解した
全探索しか思いつかなかったorz
デフォルトの名無しさん [] 2018/04/18(水) 14:43:49.71:mfkhz8pH
J
200$(#~ 2&=@#@q:)2+i.1000
デフォルトの名無しさん [sage] 2018/04/18(水) 15:36:58.27:8LhMtFC1
このスレを見ると
世の中のソフトが重くなる理由がよく分かる
デフォルトの名無しさん [sage] 2018/04/18(水) 17:14:39.91:AXVF0Rxy

それ1000までの間に半素数が200個存在するってあらかじめ分かってなきゃ使えなくない
デフォルトの名無しさん [sage] 2018/04/18(水) 17:19:26.83:8LhMtFC1
あらかじめ調べておけばいい
どうせなら半素数自体もしらべてテーブルにしておけば
デフォルトの名無しさん [sage] 2018/04/18(水) 18:12:40.76:AXVF0Rxy
だから調べてテーブル作るお題やろ
デフォルトの名無しさん [sage] 2018/04/18(水) 18:20:10.32:8LhMtFC1
コンパイラが究極に進化するとそうなる
今でも純関数&定数指定にすれば
デフォルトの名無しさん [sage] 2018/04/18(水) 18:35:30.37:MXcoXWvI
究極に進化して、ある数を素因数分解しろとか離散対数求めろと言われたら、
何桁でもテーブルにあって即答ってか?
暗号死ぬわ。
デフォルトの名無しさん [sage] 2018/04/18(水) 18:51:51.73:8LhMtFC1
当然限度はある
当たり前
デフォルトの名無しさん [sage] 2018/04/18(水) 19:18:25.23:SkflZos/
君さ、ちょっと黙ってて
デフォルトの名無しさん [] 2018/04/18(水) 20:18:15.86:mfkhz8pH
J
のやり方で
/:~~.,*/~p:i.20
デフォルトの名無しさん [] 2018/04/18(水) 23:38:59.46:BI6oaZDa

Kotlin
ttps://paiza.io/projects/BHMBjMpBsKkeWxw_1WxpQw
何も考えずに総当たり。7桁以上は多すぎるのでやらないようにした。
デフォルトの名無しさん [] 2018/04/18(水) 23:39:47.19:BI6oaZDa
ごめん。アンカ間違えた。だった。
デフォルトの名無しさん [sage] 2018/04/18(水) 23:57:26.29:+652BqLv
トップバストとアンダーバストがmm単位で与えられるので
JIS L 4006におけるカップ体型区分を出力せよ
なお、与えられた体系が当該規格の数値と一致しない場合は
最も差の少ない体型区分を選べ

-*- input -*-
880 815
999 799
755 480

-*- output -*-
AA
E
H
デフォルトの名無しさん [sage] 2018/04/19(木) 00:17:12.74:7EnHL2Zb
JISの抜粋はよ
デフォルトの名無しさん [sage] 2018/04/19(木) 01:14:32.58:AYGORpen
三人目、人間?
デフォルトの名無しさん [sage] 2018/04/19(木) 01:50:36.78:uvuGKqvu
Ruby
デフォルトの名無しさん [sage] 2018/04/19(木) 01:51:08.23:uvuGKqvu
ミス
Ruby

#!ruby -na
puts ['AA',*?A..?I][(eval($F*?-)/25.0-3).round.clamp(0,9)]
デフォルトの名無しさん [sage] 2018/04/19(木) 02:02:41.15:FEDLlhkO
Jアニキはよ
デフォルトの名無しさん [sage] 2018/04/19(木) 04:01:30.95:4mrmpy84
このスレは、素数表を使う問題が多い

一方、プログラミング・コンテストでは、自作ライブラリも持ち込めるから、
素数表・ZDD を持ち込んで、解けるような問題は少ない

数学的な解法がなくて、全探索して見つけるものが多い
デフォルトの名無しさん [sage] 2018/04/19(木) 09:28:13.47:/i49YDDr
じゃあここで出てる問題をまず最初にNP完全かどうかを判定すればいい
競技プログラミングに適している問題かどうかを証明してから、改めてプログラミングにあたる
デフォルトの名無しさん [sage] 2018/04/19(木) 09:46:04.07:6rKghp/7
出題者がPと証明してから出すのが筋だろ
デフォルトの名無しさん [sage] 2018/04/19(木) 09:51:24.98:4mrmpy84
プログラミング・コンテストの良問は、
持ち込みの自作ライブラリでは解けないもので、

素直に全探索すると、計算回数が1億回以上になって、2秒以内に解けないもの

ここで、パズル的に考えて、数学的な法則を使うことで、
枝切り・ショートカットして、計算回数が1千万回以下になるもの
デフォルトの名無しさん [] 2018/04/19(木) 10:05:22.86:ffBaMipw
J
f=:{&(25#'AA'';;/'ABCDEFGHI')@<.@-&62.5&(-/)
デフォルトの名無しさん [sage] 2018/04/19(木) 12:09:31.59:2nanKMvG

分かりにくいのは毎度の事だが今回はあんまり短くもならないんだな。

勢い5万以上のスレをメールでお知らせするサービス、実施中!!
憧れボディをGETしたい!その夢、ボニックで!

新着レスの表示

2ch勢いランキング アーカイブ プログラム板ランキング

凡例:

レス番

100 (赤) → 2つ以上レスが付いている
100 (紫) → 1つ以上レスが付いている

名前

名無しさん (青) → sage のレス
名無しさん (緑) → age のレス

ID

ID:xxxxxxx (赤) → 発言が3つ以上のID
ID:xxxxxxx (青) → 発言が2つ以上のID

このページは2ch勢いランキングが作成したアーカイブです。削除についてはこちら