プログラミングのお題スレです。
【出題と回答例】
1 名前:デフォルトの名無しさん
お題:お題本文
2 名前:デフォルトの名無しさん
>>1 使用言語
回答本文
結果がある場合はそれも
【ソースコードが長くなったら】 (オンラインでコードを実行できる)
https://ideone.com/
http://codepad.org/
http://compileonline.com/
http://rextester.com/runcode
https://runnable.com/
https://code.hackerearth.com/
http://melpon.org/wandbox
https://paiza.io/
宿題は宿題スレがあるのでそちらへ。
※前スレ
https://mevius.2ch.net/test/read.cgi/tech/1538096947/
探検
プログラミングのお題スレ Part13
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2019/02/03(日) 11:21:53.20ID:72eosYJ+186デフォルトの名無しさん
2019/02/14(木) 08:13:17.60ID:anuIpNjB187デフォルトの名無しさん
2019/02/14(木) 08:52:55.94ID:QGThOkDI >>176 必要なパーツの種類と個数を出せば良いんだろう。
回転させて使おうがどうしようが自由。
回転させて使おうがどうしようが自由。
188デフォルトの名無しさん
2019/02/14(木) 09:41:08.57ID:9tQDIG7c >>178
パターン全てって書いてあるから単に 2^ドット数 だと思ってたんだが、人間が見た時に何らかの意味がありそうなパターンって事なの?
しかし何に意味がありそうと感じるかは主観の問題だからここでのお題としては適切ではないよね。
パターン全てって書いてあるから単に 2^ドット数 だと思ってたんだが、人間が見た時に何らかの意味がありそうなパターンって事なの?
しかし何に意味がありそうと感じるかは主観の問題だからここでのお題としては適切ではないよね。
189デフォルトの名無しさん
2019/02/14(木) 10:37:38.67ID:zlobX1y6 >>188
アホかお前
アホかお前
190デフォルトの名無しさん
2019/02/14(木) 11:47:38.28ID:E3VWek4W191デフォルトの名無しさん
2019/02/14(木) 11:52:48.67ID:rq9LAi9f パーツの対称性を見るくらいしかなさそうだけどなぁ
90度回転で不変ならパーツ自体が正方形の場合しか充填し得ないし180度回転で不変なら長方形しかない
問題は対称性なしの場合で, 回転で得られる4通りの図形の組み合わせで少なくとも適当な長方形が作れる必要がある。
90度回転で不変ならパーツ自体が正方形の場合しか充填し得ないし180度回転で不変なら長方形しかない
問題は対称性なしの場合で, 回転で得られる4通りの図形の組み合わせで少なくとも適当な長方形が作れる必要がある。
192デフォルトの名無しさん
2019/02/14(木) 12:23:18.44ID:4UGy3YJR 出題者です、同じ1種類のパーツのみで敷き詰めるのを意図してた
回転なしは因数でおk、有りは一応解法は浮かんだが証明詰めきれなかったので好きに定めて良いって書いた
回転なしは因数でおk、有りは一応解法は浮かんだが証明詰めきれなかったので好きに定めて良いって書いた
193デフォルトの名無しさん
2019/02/14(木) 12:26:41.67ID:9tQDIG7c >>189
じゃあどう解釈すれば良いのか?
じゃあどう解釈すれば良いのか?
194デフォルトの名無しさん
2019/02/14(木) 12:30:54.48ID:9tQDIG7c >>192
相変わらず問題がよくわからんよ。
相変わらず問題がよくわからんよ。
195デフォルトの名無しさん
2019/02/14(木) 12:50:46.70ID:QGThOkDI >>192 2x3 の時は、1種類のパーツのみで埋めるとすると
111
111
の時は 111 x2個
1,1,1
1,1,1
の時は 1,1(2段) x3個
11,1
1,11
の時は 110,100(2段) 2個とするのか
11 が 2個と 1 が2個 は2種類のパーツだからダメ?
111
111
の時は 111 x2個
1,1,1
1,1,1
の時は 1,1(2段) x3個
11,1
1,11
の時は 110,100(2段) 2個とするのか
11 が 2個と 1 が2個 は2種類のパーツだからダメ?
196デフォルトの名無しさん
2019/02/14(木) 13:04:00.12ID:QGThOkDI197デフォルトの名無しさん
2019/02/14(木) 13:09:44.77ID:zlobX1y6 上でもう出てんだろ
回転なしなら辺の約数の組み合わせで全部だっつーの
回転なしなら辺の約数の組み合わせで全部だっつーの
198デフォルトの名無しさん
2019/02/14(木) 13:44:03.89ID:icHgtaXf ヤング図形考えて終わりじゃねえのコレ
199デフォルトの名無しさん
2019/02/14(木) 13:56:13.92ID:iDdALKjs abcd
badc
abab
cdcd
aaba
babb
abbb
aaab
同じパターンで埋めるのって色々できそうだけどこういうの全部いいの?
badc
abab
cdcd
aaba
babb
abbb
aaab
同じパターンで埋めるのって色々できそうだけどこういうの全部いいの?
200デフォルトの名無しさん
2019/02/14(木) 18:55:26.99ID:PxTMiczy201デフォルトの名無しさん
2019/02/14(木) 19:04:40.56ID:iDdALKjs いや全部一種類だよ
マスがくっついてないだけで
連続してるとは書かれてなかったし
マスがくっついてないだけで
連続してるとは書かれてなかったし
202デフォルトの名無しさん
2019/02/14(木) 19:56:54.06ID:IkVUbwNW お題を正しく理解できてない模様 >>176をもう1度確認
1つ目の#は6個、2つ目の###は2個、
3つ目の# 4つ目の###
#は3個、 ###は1個で2行3列が全て埋まります
1つ目の#は6個、2つ目の###は2個、
3つ目の# 4つ目の###
#は3個、 ###は1個で2行3列が全て埋まります
203デフォルトの名無しさん
2019/02/14(木) 20:35:35.28ID:0TijawxO204デフォルトの名無しさん
2019/02/14(木) 20:45:00.72ID:0TijawxO >>202 全く理解できない。
>>176 はどうして一つ目が6個なのかな? 1個しかないじゃん?
一つ目って何? 二つ目って何?
https://i.imgur.com/GzvMfWg.jpg
自分が今見てるのは、iPhone BB2C
>>176 はどうして一つ目が6個なのかな? 1個しかないじゃん?
一つ目って何? 二つ目って何?
https://i.imgur.com/GzvMfWg.jpg
自分が今見てるのは、iPhone BB2C
205デフォルトの名無しさん
2019/02/14(木) 20:54:16.99ID:RyxU72PZ 回答の良し悪しだけじゃない、良問悪問ってあるよね…
206デフォルトの名無しさん
2019/02/14(木) 21:20:53.44ID:IkVUbwNW >>204
1つ目の # は6個で2行3列が全て埋まります
###
###
2つ目の ### は2個で2行3列が全て埋まります
###
###
3つ目の #
# は3個で2行3列が全て埋まります
###
###
4つ目の ###
### は1個で2行3列が全て埋まります
###
###
1つ目の # は6個で2行3列が全て埋まります
###
###
2つ目の ### は2個で2行3列が全て埋まります
###
###
3つ目の #
# は3個で2行3列が全て埋まります
###
###
4つ目の ###
### は1個で2行3列が全て埋まります
###
###
207デフォルトの名無しさん
2019/02/15(金) 01:14:00.78ID:Ap6BYDwO208デフォルトの名無しさん
2019/02/15(金) 01:38:17.60ID:nnYj1Xkq209デフォルトの名無しさん
2019/02/15(金) 02:40:42.39ID:YMyZWZCa210デフォルトの名無しさん
2019/02/15(金) 06:13:53.42ID:hXoOelh0211デフォルトの名無しさん
2019/02/15(金) 08:54:29.71ID:nnYj1Xkq212デフォルトの名無しさん
2019/02/15(金) 10:38:13.03ID:NxGjA/1R >>199のような飛び飛びのパターンまで含めると5x5くらいのサイズなら解けそうでも
10x10くらいの大きさになるとほぼ解けなくなるか?
10x10くらいの大きさになるとほぼ解けなくなるか?
213デフォルトの名無しさん
2019/02/15(金) 11:04:50.72ID:bh7l703i ...
d0<-a
a->b
b->c
c->d
c'<-d
b'<-c'
a<-b'
d->a2
d<-a2
a2->b2
....
に対して
任意の英数字から初めて右向きの矢印をnこ進んだ英数字を一瞬で割り出す簡単な計算方法を教えろ
左向きの矢印のときも答えろ
ここで英数字には好きな整数の値を対応させろ
d0<-a
a->b
b->c
c->d
c'<-d
b'<-c'
a<-b'
d->a2
d<-a2
a2->b2
....
に対して
任意の英数字から初めて右向きの矢印をnこ進んだ英数字を一瞬で割り出す簡単な計算方法を教えろ
左向きの矢印のときも答えろ
ここで英数字には好きな整数の値を対応させろ
214デフォルトの名無しさん
2019/02/15(金) 11:10:32.09ID:bh7l703i 自己解決しました
この問題には答えなくていいです
この問題には答えなくていいです
215デフォルトの名無しさん
2019/02/15(金) 11:21:16.25ID:bh7l703i 新問題
...
g0<-a
a->b
b->c
c->d
c'<-d
b'<-c'
a<-b'
d->e
e->f
f->g
f'<-g
e'<-f'
g->a1
g<-a1
a1->b1
....
に対して
任意の英数字から初めて右向きの矢印をnこ進んだ英数字を一瞬で割り出す簡単な計算方法を教えろ
左向きの矢印のときも教えろ
ここで英数字には好きな整数の値を対応させろ
...
g0<-a
a->b
b->c
c->d
c'<-d
b'<-c'
a<-b'
d->e
e->f
f->g
f'<-g
e'<-f'
g->a1
g<-a1
a1->b1
....
に対して
任意の英数字から初めて右向きの矢印をnこ進んだ英数字を一瞬で割り出す簡単な計算方法を教えろ
左向きの矢印のときも教えろ
ここで英数字には好きな整数の値を対応させろ
216デフォルトの名無しさん
2019/02/15(金) 11:22:43.57ID:bh7l703i 訂正
d<-e'
追加で
d<-e'
追加で
217デフォルトの名無しさん
2019/02/15(金) 11:45:59.15ID:446NzcaO 日本語で書けや
218デフォルトの名無しさん
2019/02/15(金) 11:55:27.68ID:bh7l703i219デフォルトの名無しさん
2019/02/15(金) 12:34:22.87ID:fQG3bb7R 自己解決ってどういうこと?
宿題貼ってるの?
宿題貼ってるの?
220デフォルトの名無しさん
2019/02/15(金) 12:41:19.85ID:bh7l703i 俺はキチガイだから相手にしないほうが良い
221デフォルトの名無しさん
2019/02/15(金) 12:43:47.27ID:JRF4Gyvi わけのわからん問題が続くなあ・・・
222デフォルトの名無しさん
2019/02/15(金) 17:27:20.42ID:DyMjpctN >>211
> 回転もおkかは好きに定めていい
> 回転もおkかは好きに定めていい
223デフォルトの名無しさん
2019/02/16(土) 02:08:44.97ID:3MiMTZ5E しかしこの問題は回転を考えないと、曲がったパーツは不可能だね。
かなり単純化される。
かなり単純化される。
224デフォルトの名無しさん
2019/02/16(土) 02:11:07.89ID:vjYPWj7f なんかスレが新しくなってから湧いてきたPythonのクソみたいなコード連投してる日本語がめちゃくちゃのやつうざい
225デフォルトの名無しさん
2019/02/16(土) 02:16:11.76ID:bRo2S9Sl 前スレから居るんですよそいつね
226デフォルトの名無しさん
2019/02/16(土) 02:35:08.75ID:zutWNq0P 2行3列で回転無しなら以下の4つが答え
#
###
#
#
###
###
回転ありなら更に以下の2つも
##
#
#
##
#
###
#
#
###
###
回転ありなら更に以下の2つも
##
#
#
##
227デフォルトの名無しさん
2019/02/16(土) 07:00:03.49ID:wpb3vJTT228デフォルトの名無しさん
2019/02/16(土) 09:56:41.50ID:3oducOde 煽りではなく本当に発達障害またはそれに準ずる知的ボーダーを疑うレベルで頭悪いな
229デフォルトの名無しさん
2019/02/16(土) 10:48:56.77ID:3MiMTZ5E >>228 煽りじゃん。 プログラムを出してくれた方が良い。
230デフォルトの名無しさん
2019/02/16(土) 12:54:53.60ID:8ZVYBrON お題:バブルソートを実装せよ
231デフォルトの名無しさん
2019/02/16(土) 15:04:36.49ID:PD6v+6Vh >>230 Perl5
use feature qw{current_sub say};
sub bblsort {
for (0..@_) {
sub {
if (@_ >= 2) {
__SUB__->(@_[1..$#_]);
($_[1], $_[0]) = ($_[0], $_[1])
if $_[0] > $_[1]
}
}->(@_[$_..$#_]);
}
}
use List::Util shuffle;
@a = shuffle 1..20;
say "1) @a";
bblsort @a;
say "2) @a";
実行結果
~ $ perl 13_230_bblsort.pl
1) 13 6 18 7 15 1 11 8 20 16 14 4 9 10 12 17 2 19 5 3
2) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
use feature qw{current_sub say};
sub bblsort {
for (0..@_) {
sub {
if (@_ >= 2) {
__SUB__->(@_[1..$#_]);
($_[1], $_[0]) = ($_[0], $_[1])
if $_[0] > $_[1]
}
}->(@_[$_..$#_]);
}
}
use List::Util shuffle;
@a = shuffle 1..20;
say "1) @a";
bblsort @a;
say "2) @a";
実行結果
~ $ perl 13_230_bblsort.pl
1) 13 6 18 7 15 1 11 8 20 16 14 4 9 10 12 17 2 19 5 3
2) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
232デフォルトの名無しさん
2019/02/16(土) 16:42:44.41ID:hxDCwUVz お題:数値Xを4つの方法で整数に丸めよ
(1) 0に向かう
(2) 0から遠ざかる
(3) 正の無限大に向かう
(4) 負の無限大に向かう
X = 0.5
=> 0 1 1 0
X = -1.1
=> -1 -2 -1 -2
X = 3
=> 3 3 3 3
(1) 0に向かう
(2) 0から遠ざかる
(3) 正の無限大に向かう
(4) 負の無限大に向かう
X = 0.5
=> 0 1 1 0
X = -1.1
=> -1 -2 -1 -2
X = 3
=> 3 3 3 3
233デフォルトの名無しさん
2019/02/16(土) 16:47:26.55ID:akVlWGeE ふたたび、円の内部の整数点を求めるやつ。個数ごとその最小半径を求める。
41個、47個とかが難し目だった気が。
41個、47個とかが難し目だった気が。
234デフォルトの名無しさん
2019/02/16(土) 17:07:10.46ID:wpb3vJTT 内部じゃなくて円周上のやろ
235デフォルトの名無しさん
2019/02/16(土) 17:07:42.16ID:cltO7Ts6236デフォルトの名無しさん
2019/02/16(土) 17:27:32.65ID:PD6v+6Vh >>232 組み込み使っていいんだよね? (面倒になるけど、使わなくても書けるけどサ…)
Perl5
use POSIX qw(floor ceil);
for (0.5, -1.1, 3) {
@a = ("$_ => ",
sprintf('%d', $_), #int($_),
($_ > 0 ? ceil($_) : ceil($_-1)),
ceil($_),
floor($_)
);
print "@a\n";
}
実行結果
~ $ perl 13_232_round.pl
0.5 => 0 1 1 0
-1.1 => -1 -2 -1 -2
3 => 3 3 3 3
Perl5
use POSIX qw(floor ceil);
for (0.5, -1.1, 3) {
@a = ("$_ => ",
sprintf('%d', $_), #int($_),
($_ > 0 ? ceil($_) : ceil($_-1)),
ceil($_),
floor($_)
);
print "@a\n";
}
実行結果
~ $ perl 13_232_round.pl
0.5 => 0 1 1 0
-1.1 => -1 -2 -1 -2
3 => 3 3 3 3
237デフォルトの名無しさん
2019/02/16(土) 17:33:21.11ID:PfkkbXxw >>230 Ruby
def bs(ary)
ary.tap do |a|
(a.size**2).times do
(a.size - 1).times do |i|
a[i + 1], a[i] = a[i, 2] if a[i] > a[i + 1]
end
end
end
end
p bs([3, 1, 4, 15, 92]) # => [1, 3, 4, 15, 92]
>>232
sgn = -> n {n <=> 0}
r4 = -> n {n.floor}
r3 = -> n {-r4[-n]}
r2 = -> n {sgn[n] * r3[n.abs]}
r1 = -> n {sgn[n] * r4[n.abs]}
[0.5, -1.1, 3].each{|i| puts 'x = %p => %p %p %p %p' % [i, r1[i], r2[i], r3[i], r4[i]]}
# =>
x = 0.5 => 0 1 1 0
x = -1.1 => -1 -2 -1 -2
x = 3 => 3 3 3 3
def bs(ary)
ary.tap do |a|
(a.size**2).times do
(a.size - 1).times do |i|
a[i + 1], a[i] = a[i, 2] if a[i] > a[i + 1]
end
end
end
end
p bs([3, 1, 4, 15, 92]) # => [1, 3, 4, 15, 92]
>>232
sgn = -> n {n <=> 0}
r4 = -> n {n.floor}
r3 = -> n {-r4[-n]}
r2 = -> n {sgn[n] * r3[n.abs]}
r1 = -> n {sgn[n] * r4[n.abs]}
[0.5, -1.1, 3].each{|i| puts 'x = %p => %p %p %p %p' % [i, r1[i], r2[i], r3[i], r4[i]]}
# =>
x = 0.5 => 0 1 1 0
x = -1.1 => -1 -2 -1 -2
x = 3 => 3 3 3 3
238デフォルトの名無しさん
2019/02/16(土) 17:34:37.44ID:PD6v+6Vh >>236 これだと
入力が0のとき
>(2) 0から遠ざかる
が-1になっちゃう。
($_ > 0 ? ceil($_) : ceil($_-1)),
↓を
($_ >= 0 ? ceil($_) : ceil($_-1)),
とすべきでしょうね。スマソ
入力が0のとき
>(2) 0から遠ざかる
が-1になっちゃう。
($_ > 0 ? ceil($_) : ceil($_-1)),
↓を
($_ >= 0 ? ceil($_) : ceil($_-1)),
とすべきでしょうね。スマソ
239デフォルトの名無しさん
2019/02/16(土) 18:34:59.76ID:akVlWGeE >>234
円周上が正解
円周上が正解
240デフォルトの名無しさん
2019/02/16(土) 22:05:48.79ID:lcFO2eao241デフォルトの名無しさん
2019/02/16(土) 22:20:47.39ID:yZTjSyit >>262に期待。
243デフォルトの名無しさん
2019/02/16(土) 23:30:26.24ID:ReDOqu2L >>232 をやろうとおもって、IEEE754 の float/double を直接触る方法を探しているのですが、なにかいい方法はないでしょうか…
245デフォルトの名無しさん
2019/02/17(日) 00:24:40.58ID:xZHcxwZO >>245
thx a lot !!
thx a lot !!
247デフォルトの名無しさん
2019/02/17(日) 01:04:30.52ID:iMRi3xg5 >>244
あった
あった
248デフォルトの名無しさん
2019/02/17(日) 08:30:18.08ID:SfPzlMrR >>233
これ
「Nに対し平面上の円で、その円周上の整数点がちょうどN個となる円の最小半径を求めよ」
例)
x^2 + y^2 = 1の整数点は4つだが、最小半径ではない。
(x-0.5)^2 + (y-0.5)^2 = 0.5の方が小さい。
これ
「Nに対し平面上の円で、その円周上の整数点がちょうどN個となる円の最小半径を求めよ」
例)
x^2 + y^2 = 1の整数点は4つだが、最小半径ではない。
(x-0.5)^2 + (y-0.5)^2 = 0.5の方が小さい。
249デフォルトの名無しさん
2019/02/17(日) 09:09:13.01ID:SfPzlMrR >>248
網羅的は、きりがなく一つの予想をたてた。
一つ半径を求めたら、次のような操作で半径を縮めたものと、真の最小半径が一致する予想。
半径rの整数点がNだとして。 rを整数比で縮小して中心をずらす。
たとえば上の例だと、r=1で、r → 2/4 r で、
(2x -1)^2 + (2y -1)^2 = 2r
両辺4倍して中心ずらした式
網羅的は、きりがなく一つの予想をたてた。
一つ半径を求めたら、次のような操作で半径を縮めたものと、真の最小半径が一致する予想。
半径rの整数点がNだとして。 rを整数比で縮小して中心をずらす。
たとえば上の例だと、r=1で、r → 2/4 r で、
(2x -1)^2 + (2y -1)^2 = 2r
両辺4倍して中心ずらした式
250デフォルトの名無しさん
2019/02/17(日) 14:03:58.61ID:SfPzlMrR 整数比かけるので有理数半径ならすべて作り出せるから当たり前か
無駄なく高速に半径縮められる手法が大事か
無駄なく高速に半径縮められる手法が大事か
251デフォルトの名無しさん
2019/02/17(日) 14:06:36.33ID:SfPzlMrR あと半径は間違いで、半径でなく右辺、半径^2 だった
252デフォルトの名無しさん
2019/02/17(日) 19:56:30.00ID:qArvPplr お題
パンケーキソートを実装する
パンケーキソートを実装する
253デフォルトの名無しさん
2019/02/18(月) 22:45:57.31ID:Gp2d+oGP >>252 Perl5 (効率の良いアルゴリズムではないけれど、まずは…)
use List::Util shuffle;
@a = shuffle 1..20;
print "shuffled) @a\n";
sub flip {
($m, $n) = @_;
@a[0..$m] = reverse @a[0..$m];
@a[0..$n] = reverse @a[0..$n];
}
for $i (reverse 1..$#a) {
$k = undef;
for (0..$i) {
$k = $_ if (!defined($k) or $a[$k] < $a[$_])
}
flip($k, $i) if $k < $i;
}
print "sorted ) @a\n";
実行例
~ $ perl 13_252_clumsy_pancake_sort.pl
shuffled) 18 6 2 13 16 1 12 15 10 4 17 20 9 7 19 14 5 11 3 8
sorted ) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
use List::Util shuffle;
@a = shuffle 1..20;
print "shuffled) @a\n";
sub flip {
($m, $n) = @_;
@a[0..$m] = reverse @a[0..$m];
@a[0..$n] = reverse @a[0..$n];
}
for $i (reverse 1..$#a) {
$k = undef;
for (0..$i) {
$k = $_ if (!defined($k) or $a[$k] < $a[$_])
}
flip($k, $i) if $k < $i;
}
print "sorted ) @a\n";
実行例
~ $ perl 13_252_clumsy_pancake_sort.pl
shuffled) 18 6 2 13 16 1 12 15 10 4 17 20 9 7 19 14 5 11 3 8
sorted ) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
254デフォルトの名無しさん
2019/02/19(火) 22:19:54.18ID:sIqHxZ1N ; Common Lisp
(defun flip (seq n)
(concatenate (type-of seq) (nreverse (subseq seq 0 (1+ n))) (subseq seq (1+ n))))
(defun pancake-sort (seq predicate)
(loop for s = seq
then (if j (flip (flip (flip (flip s (1- j)) (1- i)) i) j) s)
for i from 1 to (1- (length seq))
for j = (position (elt s i) s :end i :test predicate)
finally (return s)))
(defun flip (seq n)
(concatenate (type-of seq) (nreverse (subseq seq 0 (1+ n))) (subseq seq (1+ n))))
(defun pancake-sort (seq predicate)
(loop for s = seq
then (if j (flip (flip (flip (flip s (1- j)) (1- i)) i) j) s)
for i from 1 to (1- (length seq))
for j = (position (elt s i) s :end i :test predicate)
finally (return s)))
255デフォルトの名無しさん
2019/02/19(火) 22:25:14.24ID:flzwRht/ お題:1から8までのカードを混ぜ、2枚そこから引いた時1枚目*10+2枚目が素数になる確率を求める。
ただし、
1. 小数第3位で四捨五入した後に回答すること。
2. 数学的な証明は禁止。
3. 各カードは9-その数字の数だけ存在する。 (例:1ならば8枚存在する)
4. 各カードが出る確率はまだ引かれていないカードの枚数に比例する。
ただし、
1. 小数第3位で四捨五入した後に回答すること。
2. 数学的な証明は禁止。
3. 各カードは9-その数字の数だけ存在する。 (例:1ならば8枚存在する)
4. 各カードが出る確率はまだ引かれていないカードの枚数に比例する。
256デフォルトの名無しさん
2019/02/20(水) 00:45:46.98ID:VV/V1Ls8 python
print(0.31)
print(0.31)
257デフォルトの名無しさん
2019/02/20(水) 00:55:56.83ID:SyQ4jkRO >>255 Perl5
$R = 0.0;
@s = map{($_) x (9-$_)} 1..8; #say "@s";
$t = @s; #say $t;
for (qw{11 13 17 23 31 37 41 43 47 53 61 67 71 73 83}) {
@o = split'';
my %h;
$h{$_}++ for @s;
my $r = $h{$o[0]}-- / $t;
$r *= $h{$o[1]}-- / ($t - 1);
$R += $r;
}
printf "%3.2f\n", $R;
実行結果
~ $ perl 13_255.pl
0.31
$R = 0.0;
@s = map{($_) x (9-$_)} 1..8; #say "@s";
$t = @s; #say $t;
for (qw{11 13 17 23 31 37 41 43 47 53 61 67 71 73 83}) {
@o = split'';
my %h;
$h{$_}++ for @s;
my $r = $h{$o[0]}-- / $t;
$r *= $h{$o[1]}-- / ($t - 1);
$R += $r;
}
printf "%3.2f\n", $R;
実行結果
~ $ perl 13_255.pl
0.31
258さまよえる蟻人間 ◆T6xkBnTXz7B0
2019/02/20(水) 00:58:27.33ID:5PEVWiZL お題: URLで場所を指定された、インターネット上のテキストファイルをダウンロードするプログラム。
259デフォルトの名無しさん
2019/02/20(水) 01:16:40.92ID:SyQ4jkRO >>258 Perl5
require LWP::UserAgent;
$ua = LWP::UserAgent->new;
$ua->agent('Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Win64; x64; Trident/6.0)');
use HTTP::Cookies;
$ua->cookie_jar(HTTP::Cookies->new(file => 'lwp-cookies.txt', autosave => 1));
$url = 'http://ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt';
$file = './0_README.txt';
$res = $ua->mirror($url, $file);
print $res->status_line, "\n";
実行例
~ $ perl 13_258.pl
200 OK
(※こういうのは、別に今急に考えたわけじゃなく、日常的に作って使っているのですぐ投稿できました)
require LWP::UserAgent;
$ua = LWP::UserAgent->new;
$ua->agent('Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; Win64; x64; Trident/6.0)');
use HTTP::Cookies;
$ua->cookie_jar(HTTP::Cookies->new(file => 'lwp-cookies.txt', autosave => 1));
$url = 'http://ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt';
$file = './0_README.txt';
$res = $ua->mirror($url, $file);
print $res->status_line, "\n";
実行例
~ $ perl 13_258.pl
200 OK
(※こういうのは、別に今急に考えたわけじゃなく、日常的に作って使っているのですぐ投稿できました)
260さまよえる蟻人間 ◆T6xkBnTXz7B0
2019/02/20(水) 01:37:18.13ID:jAMIqMc6 WSHでダウンロードできるヤツ、おる?
261デフォルトの名無しさん
2019/02/20(水) 01:40:03.52ID:SyQ4jkRO >>260
wget.exe か curl 使えば?
wget.exe か curl 使えば?
262デフォルトの名無しさん
2019/02/20(水) 02:05:29.76ID:Te3YpcYw >>260 download.js
var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
xmlhttp.Open("GET", "http://ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt", false);
xmlhttp.Send();
var stream = new ActiveXObject("Adodb.Stream");
stream.Type = 1;
stream.Open();
stream.Write(xmlhttp.responseBody);
stream.SaveToFile("0_README.txt", 2);
var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
xmlhttp.Open("GET", "http://ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt", false);
xmlhttp.Send();
var stream = new ActiveXObject("Adodb.Stream");
stream.Type = 1;
stream.Open();
stream.Write(xmlhttp.responseBody);
stream.SaveToFile("0_README.txt", 2);
263デフォルトの名無しさん
2019/02/20(水) 02:28:54.15ID:PF1BNO4k pythonista stash 反則?
$ wget http://ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt
$ ls -la *.txt
0_README.txt (2.4K) 2019-02-20 02:21:45
$ wget http://ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt
$ ls -la *.txt
0_README.txt (2.4K) 2019-02-20 02:21:45
264デフォルトの名無しさん
2019/02/20(水) 02:51:47.69ID:qYIek1dL >>255
;; Common Lisp
(let ((prime (list 2)))
(defun primep (n)
(loop for i from (1+ (car prime)) upto n
unless (find-if (lambda (j) (zerop (mod i j))) prime :from-end t)
do (push i prime))
(find n prime)))
(defun nearest (i j)
(/ (floor (+ (* i (expt 10 j)) 0.5)) (expt 10 j)))
(loop with cards = (loop for i from 1 to 8 nconc (make-list (- 9 i) :initial-element i))
and n = 0 and p = 0
for one in cards
do (loop for two in (remove one cards :count 1)
do (incf n)
if (primep (+ (* 10 one) two)) do (incf p))
finally (format t "~,3F~%" (nearest (* (/ p n)) 3)))
;; Common Lisp
(let ((prime (list 2)))
(defun primep (n)
(loop for i from (1+ (car prime)) upto n
unless (find-if (lambda (j) (zerop (mod i j))) prime :from-end t)
do (push i prime))
(find n prime)))
(defun nearest (i j)
(/ (floor (+ (* i (expt 10 j)) 0.5)) (expt 10 j)))
(loop with cards = (loop for i from 1 to 8 nconc (make-list (- 9 i) :initial-element i))
and n = 0 and p = 0
for one in cards
do (loop for two in (remove one cards :count 1)
do (incf n)
if (primep (+ (* 10 one) two)) do (incf p))
finally (format t "~,3F~%" (nearest (* (/ p n)) 3)))
265さまよえる蟻人間 ◆T6xkBnTXz7B0
2019/02/20(水) 03:32:48.09ID:jAMIqMc6 わーい、これでダウンロード制限された端末でDLできるぞ。やったー!
266デフォルトの名無しさん
2019/02/20(水) 03:35:30.81ID:VV/V1Ls8 お題スレってそういう趣旨の場所だっけか?
267デフォルトの名無しさん
2019/02/20(水) 03:43:59.14ID:J4bEIWoi >>265
できるかなあ?どういう制限しているかにもよるぞ。
できるかなあ?どういう制限しているかにもよるぞ。
268デフォルトの名無しさん
2019/02/20(水) 05:32:07.81ID:B2QSVSiS PowerShell にも、curl, wget ある
get-alias (gal)
curl -> Invoke-WebRequest
wget -> Invoke-WebRequest
と言うことは、Ruby からも、そのコマンドを呼べる
get-alias (gal)
curl -> Invoke-WebRequest
wget -> Invoke-WebRequest
と言うことは、Ruby からも、そのコマンドを呼べる
269268
2019/02/20(水) 09:30:07.43ID:B2QSVSiS なんと、コマンドプロンプトで、
where curl と入力すると、
C:\Windows\System32\curl.exe
PowerShell の、curl, wget は、Invoke-WebRequest のエイリアスだけど、
curl.exe は、本物のcurl !
where curl と入力すると、
C:\Windows\System32\curl.exe
PowerShell の、curl, wget は、Invoke-WebRequest のエイリアスだけど、
curl.exe は、本物のcurl !
270デフォルトの名無しさん
2019/02/20(水) 09:49:14.61ID:hK+DOQws >>268>>269
死ね
死ね
271デフォルトの名無しさん
2019/02/20(水) 09:52:59.12ID:PF1BNO4k >>258 >>265 なんだ下心があったのか。
pythonista stash は以下のコマンドが使える。
help(StaSh) v0.7.1
alias, cat, cd, clear, cowsay, cp, crypt, curl, cut, dropbox_setup, du, easy_config, echo, edit, exit, fg, find, ftpserver, gci, gh, git, grep, head, httpserver,
jobs, kill, latte, ls, mail, man, mc, md5sum, mkdir, monkeylord, more, mount, mv, openin, pbcopy,
pbpaste, ping, Usage, pip, printenv, printhex, ptinstaller, pwd, py-tree, python, python3, quicklook, rm, rmdir, scp, selfupdate, sha1sum, sha256sum,
sort, source, sqlite, ssh, ssh-keygen, stashconf, tail, tar, telnet, totd, touch, umount, uniq, unzip, version,
wc, webviewer, wget, whatis, which, wol, xargs, zip
ftpserver や、httpserverは簡易的なサーバーになる。
ssh やscp 、tar zip などは使い道多そう。
webviewer てpython の下でブラウザが立ち上がってるみたいなんだがどんな使い道があるんだろう?
なお、標準python用のシェルは、xonsh と言うのがあるらしい。 xonsh では、標準的なshellコマンドと並行してpython スクリプトも実行できるから強力。
stash ではそれはできない。
pythonista stash は以下のコマンドが使える。
help(StaSh) v0.7.1
alias, cat, cd, clear, cowsay, cp, crypt, curl, cut, dropbox_setup, du, easy_config, echo, edit, exit, fg, find, ftpserver, gci, gh, git, grep, head, httpserver,
jobs, kill, latte, ls, mail, man, mc, md5sum, mkdir, monkeylord, more, mount, mv, openin, pbcopy,
pbpaste, ping, Usage, pip, printenv, printhex, ptinstaller, pwd, py-tree, python, python3, quicklook, rm, rmdir, scp, selfupdate, sha1sum, sha256sum,
sort, source, sqlite, ssh, ssh-keygen, stashconf, tail, tar, telnet, totd, touch, umount, uniq, unzip, version,
wc, webviewer, wget, whatis, which, wol, xargs, zip
ftpserver や、httpserverは簡易的なサーバーになる。
ssh やscp 、tar zip などは使い道多そう。
webviewer てpython の下でブラウザが立ち上がってるみたいなんだがどんな使い道があるんだろう?
なお、標準python用のシェルは、xonsh と言うのがあるらしい。 xonsh では、標準的なshellコマンドと並行してpython スクリプトも実行できるから強力。
stash ではそれはできない。
272268
2019/02/20(水) 10:31:11.68ID:B2QSVSiS WSH はわからないけど、Ruby では、
require 'nokogiri'
html = `curl http://www.example.com/`
# curl は書き込めないので、全角に変換した
doc = Nokogiri::HTML( html )
elements = doc.css( "h1" )
puts elements.first.content #=> Example Domain
require 'nokogiri'
html = `curl http://www.example.com/`
# curl は書き込めないので、全角に変換した
doc = Nokogiri::HTML( html )
elements = doc.css( "h1" )
puts elements.first.content #=> Example Domain
273デフォルトの名無しさん
2019/02/20(水) 11:50:14.05ID:hK+DOQws >>272
死ね
死ね
274デフォルトの名無しさん
2019/02/20(水) 13:03:16.05ID:agArr1lp >>269
なんかね。UNIX系OSで昔からよく使われてたコマンドを移植したようで、tarとか他にも色々あったと思った。
なんかね。UNIX系OSで昔からよく使われてたコマンドを移植したようで、tarとか他にも色々あったと思った。
275デフォルトの名無しさん
2019/02/20(水) 17:40:48.68ID:3A0CDvTh >>263 今度は反則なしで。python
import requests as r
url = 'http://ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt'
g= r.get( url )
print('読んだサイズは',len(g.text) )
# 読んだサイズは 2495
import requests as r
url = 'http://ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt'
g= r.get( url )
print('読んだサイズは',len(g.text) )
# 読んだサイズは 2495
276デフォルトの名無しさん
2019/02/20(水) 17:58:34.75ID:t1mcuuOB >>258
Pharo 7
'http://ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt' asUrl retrieveContents
Pharo 7
'http://ftp.iij.ad.jp/pub/linux/centos/7.6.1810/isos/x86_64/0_README.txt' asUrl retrieveContents
277デフォルトの名無しさん
2019/02/20(水) 18:10:48.97ID:3A0CDvTh >>276 ありがとう。 そんな言語も出てきてたんだ。 でも普及は難しいのかも。
278デフォルトの名無しさん
2019/02/20(水) 23:51:29.53ID:MUUM+ThN279デフォルトの名無しさん
2019/02/21(木) 18:54:22.61ID:1axkeZoV お題:リスト等を", "で結合して表示せよ。ただし最後は" and "で結合する。
https://ideone.com/pVuO7T
https://ideone.com/pVuO7T
280デフォルトの名無しさん
2019/02/21(木) 19:06:17.90ID:TUYpSwcQ >>279 JavaScript
const arr = ['apple', 'banana', 'orange', 'mango'];
const last = ' and ' + arr.pop();
console.log(arr.join`, ` + last);
//=> apple, banana, orange and mango
const arr = ['apple', 'banana', 'orange', 'mango'];
const last = ' and ' + arr.pop();
console.log(arr.join`, ` + last);
//=> apple, banana, orange and mango
281デフォルトの名無しさん
2019/02/21(木) 19:17:09.75ID:eUc7EqKm282デフォルトの名無しさん
2019/02/21(木) 19:27:21.23ID:2zdYL4u2 >>279
Haskell
main = putStrLn.concat.concat $ [map addCanma (init lst),["and,"],[last lst]]
addCanma s = s ++ ","
lst = ["apple","banana","orange","mango"]
output:
apple,banana,orange,and,mango
Haskell
main = putStrLn.concat.concat $ [map addCanma (init lst),["and,"],[last lst]]
addCanma s = s ++ ","
lst = ["apple","banana","orange","mango"]
output:
apple,banana,orange,and,mango
283デフォルトの名無しさん
2019/02/21(木) 19:31:58.30ID:lqQG1Hmj 題意は
list = ["red","green","black","white"]
print(", ".join(list[:-1]),"and",list[-1])
# red, green, black and white
だろ
list = ["red","green","black","white"]
print(", ".join(list[:-1]),"and",list[-1])
# red, green, black and white
だろ
284デフォルトの名無しさん
2019/02/21(木) 19:43:56.00ID:YnrfI9YG そこそこ優秀なのに肝心なところでいい加減だから試験に落ちるタイプだな
285デフォルトの名無しさん
2019/02/21(木) 19:51:21.05ID:2zdYL4u2 >>283
あ、そうか。
不恰好だけどこれで一応対応。
(putStrLn.concat.concat) [init $ map addCanma $ init lst,[last $ init lst],[" and "],[last lst]]
スマートな解答も考えてみるよ。
あ、そうか。
不恰好だけどこれで一応対応。
(putStrLn.concat.concat) [init $ map addCanma $ init lst,[last $ init lst],[" and "],[last lst]]
スマートな解答も考えてみるよ。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 ★2 [Hitzeschleier★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 【維新】吉村知事「中国人観光客だけに頼るビジネスモデル変えていかないといけない」「高市総理の発言は撤回する必要はない」 [Hitzeschleier★]
- 【STARTO ENTERTAINMENT】timelesz篠塚大輝『大きな古時計』替え歌一発ギャグ「今はもう動かない おじいさんにトドメ~♪」が波紋 [Ailuropoda melanoleuca★]
- 【社会】40代以上のおじさん・おばさんは叩いてオッケーという風潮はなぜ加速したのか [七波羅探題★]
- 【実況】博衣こよりのえちえち歌枠🧪
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 外務省局長、よくわからないまま帰国へ [834922174]
- ラーメン屋「日高屋が安いせいで客が来ない!日高屋はもっと値上げしろ!」 [449534113]
- 中国外務省「日中関係の悪化は高市早苗首相が原因」と名指しで強く非難。キタ━(゚∀゚)━! [153490809]
- 【悲報】オックスフォード大学「日本で影響力のある人」ランキングを公表。1位西村博之氏、2位堀江貴文氏、3位高橋洋一氏 [566475398]
