プログラミングのお題スレです。
前スレ
プログラミングのお題スレ Part10
https://mevius.5ch.net/test/read.cgi/tech/1514772904/
【出題と回答例】
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/
宿題は宿題スレがあるのでそちらへ。
探検
プログラミングのお題スレ Part11
■ このスレッドは過去ログ倉庫に格納されています
2018/04/24(火) 20:45:14.49ID:ZY7R7Sru
151デフォルトの名無しさん
2018/05/01(火) 13:50:08.69ID:NcJxSmfh 公式があるね。
周期=2WH/gcd(aH,bW)
(gcdは最大公約数)
周期=2WH/gcd(aH,bW)
(gcdは最大公約数)
152デフォルトの名無しさん
2018/05/01(火) 13:56:33.70ID:w7H89JvO >>150 Perl5
use feature 'say';
for (<DATA>) {
chomp;
($W, $H, $a, $b) = split;
($x, $y, $t) = 0x3;
($w, $h) = ($W, $H);
do {
($w, $h) = (2*$w, 2*$h);
($tx, $ty) = ($w/$a, $h/$b);
$t = ($tx < $ty) ? $tx : $ty;
($x, $y) = ($a*$t, $b*$t);
} while ($x % (2*$W) != 0 or $y % (2*$H) != 0);
say "$_ -> $t";
}
__DATA__
2 4 1 1
3 4 2 1
4 5 2 4
1 2 10 5
実行結果
$ perl 11_150.pl
2 4 1 1 -> 8
3 4 2 1 -> 24
4 5 2 4 -> 20
1 2 10 5 -> 0.8
use feature 'say';
for (<DATA>) {
chomp;
($W, $H, $a, $b) = split;
($x, $y, $t) = 0x3;
($w, $h) = ($W, $H);
do {
($w, $h) = (2*$w, 2*$h);
($tx, $ty) = ($w/$a, $h/$b);
$t = ($tx < $ty) ? $tx : $ty;
($x, $y) = ($a*$t, $b*$t);
} while ($x % (2*$W) != 0 or $y % (2*$H) != 0);
say "$_ -> $t";
}
__DATA__
2 4 1 1
3 4 2 1
4 5 2 4
1 2 10 5
実行結果
$ perl 11_150.pl
2 4 1 1 -> 8
3 4 2 1 -> 24
4 5 2 4 -> 20
1 2 10 5 -> 0.8
153デフォルトの名無しさん
2018/05/01(火) 13:59:50.83ID:w7H89JvO154デフォルトの名無しさん
2018/05/01(火) 15:18:38.67ID:V5+E1IVs >>150 Squeak/Pharo Smalltalk
| fn |
fn := [:W :H :a :b |
| time |
time := 2 * W * H / (b * W gcd: a * H).
time isInteger ifTrue: [time] ifFalse: [time asFloat]
].
fn valueWithArguments: #(2 4 1 1). "=> 8 "
fn valueWithArguments: #(3 4 2 1). "=> 24 "
fn valueWithArguments: #(4 5 2 4). "=> 20 "
fn valueWithArguments: #(1 2 10 5). "=> 0.8 "
| fn |
fn := [:W :H :a :b |
| time |
time := 2 * W * H / (b * W gcd: a * H).
time isInteger ifTrue: [time] ifFalse: [time asFloat]
].
fn valueWithArguments: #(2 4 1 1). "=> 8 "
fn valueWithArguments: #(3 4 2 1). "=> 24 "
fn valueWithArguments: #(4 5 2 4). "=> 20 "
fn valueWithArguments: #(1 2 10 5). "=> 0.8 "
155デフォルトの名無しさん
2018/05/01(火) 19:12:45.94ID:sD3/P01t156デフォルトの名無しさん
2018/05/01(火) 20:49:51.17ID:2ktnnBej157デフォルトの名無しさん
2018/05/01(火) 21:15:49.14ID:oZjmv7dj お題
大きさが(X, Y, Z)のナップサックに大きさが(x_i, y_i, z_i)で価値がv_iの荷物を価値の総和が最大になるように詰めたい
X Y Z N
x_1 y_1 z_1 v_1
︙
x_N y_N z_N v_N
と荷物及びナップサックが与えられた時、最大の価値を求めよ
可能ならどれを詰めたかも求めよ
なお荷物は回転させて詰めても良いものとする
大きさが(X, Y, Z)のナップサックに大きさが(x_i, y_i, z_i)で価値がv_iの荷物を価値の総和が最大になるように詰めたい
X Y Z N
x_1 y_1 z_1 v_1
︙
x_N y_N z_N v_N
と荷物及びナップサックが与えられた時、最大の価値を求めよ
可能ならどれを詰めたかも求めよ
なお荷物は回転させて詰めても良いものとする
158デフォルトの名無しさん
2018/05/01(火) 21:36:00.67ID:2ktnnBej159デフォルトの名無しさん
2018/05/01(火) 22:01:39.67ID:bRlEbj+U ナップザックというか箱だなそれ (雑感)
160デフォルトの名無しさん
2018/05/01(火) 22:40:45.68ID:7ekaWt6m お題
政令指定都市名を受け取り, 隣接する区を異なる色になるように塗り分けるのに必要な最少の色数を返す.
f(Sagamihara) => 2
f(Yokohama) => 4
政令指定都市名を受け取り, 隣接する区を異なる色になるように塗り分けるのに必要な最少の色数を返す.
f(Sagamihara) => 2
f(Yokohama) => 4
161デフォルトの名無しさん
2018/05/01(火) 22:43:51.19162片山博文MZ ◆T6xkBnTXz7B0
2018/05/01(火) 22:47:15.06ID:Bi25k6nv non-polynomial
163デフォルトの名無しさん
2018/05/01(火) 22:53:05.87ID:Q2z4i3xl 数学荒らし死ね
164デフォルトの名無しさん
2018/05/01(火) 22:54:11.24ID:RbfjP2ra 自分が理解できないからって数学荒らし呼ばわりは惨めすぎるね
165デフォルトの名無しさん
2018/05/01(火) 23:00:54.97ID:dg2b7E11 >>161
民明書房か
民明書房か
166デフォルトの名無しさん
2018/05/02(水) 00:09:48.80ID:WLxRJQ+g167デフォルトの名無しさん
2018/05/02(水) 00:16:51.78ID:WLxRJQ+g Текущая версия страницы пока не проверялась опытными участниками и может
значительно отличаться от версии, проверенной 11 апреля 2015;
проверки требуют 20 правок.
Бу́ря (шторм) — собирательное понятие, обозначающее очень
сильный ветер (а также сильное волнение на море), возникающий по
различным причинам и в разных областях Земли. Скорость
приземного ветра (на стандартной высоте измерений 6—12 м над
земной поверхностью) при буре составляет, по разным источникам,
15—20 м/с и более (21-25 м/с или 75-88 км/ч). Бури бывают снежные,
песчаные и водные. Скорость ветра при буре гораздо меньше, чем при
урагане, однако буря чаще всего сопровождается переносом песка,
пыли или снега, что приводит к ущербу сельскому хозяйству, путям
сообщения и другим отраслям экономики.
значительно отличаться от версии, проверенной 11 апреля 2015;
проверки требуют 20 правок.
Бу́ря (шторм) — собирательное понятие, обозначающее очень
сильный ветер (а также сильное волнение на море), возникающий по
различным причинам и в разных областях Земли. Скорость
приземного ветра (на стандартной высоте измерений 6—12 м над
земной поверхностью) при буре составляет, по разным источникам,
15—20 м/с и более (21-25 м/с или 75-88 км/ч). Бури бывают снежные,
песчаные и водные. Скорость ветра при буре гораздо меньше, чем при
урагане, однако буря чаще всего сопровождается переносом песка,
пыли или снега, что приводит к ущербу сельскому хозяйству, путям
сообщения и другим отраслям экономики.
168デフォルトの名無しさん
2018/05/02(水) 00:18:35.47ID:WLxRJQ+g Буря может наблюдаться:
при прохождении тропического или внетропического циклона;
при прохождении смерча (тромба, торнадо);
при шквале — кратковременном усилении ветра, связанном с местной или фронтальной грозой.
К бурям по шкале Бофорта относятся ветры скоростью более 20 м/с (9 баллов), а к ураганам — ветры со
скоростью более 32,6 м/с (12 баллов). Кроме того, по этой шкале различают:
сильную бурю со скоростью 24,5-28,4 м/с (10 баллов);
жестокую бурю со скоростью 28,5-32,6 м/с (11 баллов).
при прохождении тропического или внетропического циклона;
при прохождении смерча (тромба, торнадо);
при шквале — кратковременном усилении ветра, связанном с местной или фронтальной грозой.
К бурям по шкале Бофорта относятся ветры скоростью более 20 м/с (9 баллов), а к ураганам — ветры со
скоростью более 32,6 м/с (12 баллов). Кроме того, по этой шкале различают:
сильную бурю со скоростью 24,5-28,4 м/с (10 баллов);
жестокую бурю со скоростью 28,5-32,6 м/с (11 баллов).
169デフォルトの名無しさん
2018/05/02(水) 00:19:06.57ID:WLxRJQ+g Термин «ураган» имеет также более узкое значение — тропический циклон. По месту образования тропические циклоны делят на:
Субтропический шторм
Тропический шторм
Ураган (Атлантический океан)
Тайфун (Тихий океан)
Если скорость ветра в тропическом циклоне превышает 60 км/ч, ему присваивается собственное имя.
Субтропический шторм
Тропический шторм
Ураган (Атлантический океан)
Тайфун (Тихий океан)
Если скорость ветра в тропическом циклоне превышает 60 км/ч, ему присваивается собственное имя.
170デフォルトの名無しさん
2018/05/02(水) 00:20:01.14ID:WLxRJQ+g По мнению американских учёных, для областей, расположенных в
северных широтах, снежной бурей можно считать зимний сильный
ветер, во время которого скорость ветра достигает и превышает 15 м/с (56 км/ч).
При этом температура воздуха опускается до −7 °C и ниже.
Территория распространения снежной бури может быть сколь угодно обширной.
северных широтах, снежной бурей можно считать зимний сильный
ветер, во время которого скорость ветра достигает и превышает 15 м/с (56 км/ч).
При этом температура воздуха опускается до −7 °C и ниже.
Территория распространения снежной бури может быть сколь угодно обширной.
171デフォルトの名無しさん
2018/05/02(水) 00:32:41.39ID:Ahv/tBZs 数学は少なくとも話してる本人は内容を理解している
一方お前のクソみたいなロシア語はお前はその内容を理解していない
一つ聞くが、お前がコピペした文章の中には原意が支配するという意味のロシア語の単語が出てくるが、
その単語の性数態をお前は適切にこたえられるか?
答えられないだろうな。奇を衒って知りもしない外国語の文章をコピペしただけなんだから
一方お前のクソみたいなロシア語はお前はその内容を理解していない
一つ聞くが、お前がコピペした文章の中には原意が支配するという意味のロシア語の単語が出てくるが、
その単語の性数態をお前は適切にこたえられるか?
答えられないだろうな。奇を衒って知りもしない外国語の文章をコピペしただけなんだから
172デフォルトの名無しさん
2018/05/02(水) 00:46:25.46ID:bQ3xZw0Z >>157
これは普通のナップザック問題と違って、荷物を積む積まないの選択肢のみならず
それに加えナップザック中に残されているスペースの形状・大きさ、
荷物を積むならば配置する向きと位置
そういったすべての条件の組み合わせに配慮して、最終価値最大の解を探索せねばならず、
単に荷物の重さと価値のみに着目して動的計画法で価値最大化プログラムをちょいちょいと書く
ような課題とは全然違った難しさがあるな…
これは普通のナップザック問題と違って、荷物を積む積まないの選択肢のみならず
それに加えナップザック中に残されているスペースの形状・大きさ、
荷物を積むならば配置する向きと位置
そういったすべての条件の組み合わせに配慮して、最終価値最大の解を探索せねばならず、
単に荷物の重さと価値のみに着目して動的計画法で価値最大化プログラムをちょいちょいと書く
ような課題とは全然違った難しさがあるな…
173デフォルトの名無しさん
2018/05/02(水) 00:47:08.25ID:WLxRJQ+g なるほど。じゃ落語で埋めてくわ。
本人が理解してりゃスレ違いでもいいらしいからな。
本人が理解してりゃスレ違いでもいいらしいからな。
174デフォルトの名無しさん
2018/05/02(水) 00:49:53.30ID:Ahv/tBZs >>173
数学が理解できなくてそんなに悔しかった??
自分がロシア語も理解できないのにコピペしたのがバレてそんなに悔しかった??
本当に惨めだね。あ、僕は落語なら浜野矩随が好きだからよろしくね、ど低能くん^^
数学が理解できなくてそんなに悔しかった??
自分がロシア語も理解できないのにコピペしたのがバレてそんなに悔しかった??
本当に惨めだね。あ、僕は落語なら浜野矩随が好きだからよろしくね、ど低能くん^^
175デフォルトの名無しさん
2018/05/02(水) 00:50:17.20ID:WLxRJQ+g こんな話がございます。
両国の回向院に猫塚トいうものがございます。
猫が死にますト、飼い主が回向料とともに、猫の亡骸を持ち込みまして。
寺の僧侶がお経を読んで、猫を葬ってくれるという。
これは、この塚に最初に入ったという猫の話でございます。
八丁堀の玉子屋新道に、魚屋を営む定吉ト申す者がございました。
もっとも、魚屋とは名ばかりで、その実は博奕打ちでございます。
毎日を遊んで暮らしている。
両国の回向院に猫塚トいうものがございます。
猫が死にますト、飼い主が回向料とともに、猫の亡骸を持ち込みまして。
寺の僧侶がお経を読んで、猫を葬ってくれるという。
これは、この塚に最初に入ったという猫の話でございます。
八丁堀の玉子屋新道に、魚屋を営む定吉ト申す者がございました。
もっとも、魚屋とは名ばかりで、その実は博奕打ちでございます。
毎日を遊んで暮らしている。
176デフォルトの名無しさん
2018/05/02(水) 00:50:56.06ID:WLxRJQ+g この日も、朝湯の帰りに馴染みの三河屋という居酒屋に立ち寄りまして。
風呂あがりの一杯とばかりに、呑気に引っ掛けておりますト。
ポカッ、ポカッと、頭の上から妙な音が聞こえてくる。
博奕打ちというのは、我々とはものの考え方が異なっているようで。
――板に何かを叩きつける音がする。
なるほど、やってやがるな――
風呂あがりの一杯とばかりに、呑気に引っ掛けておりますト。
ポカッ、ポカッと、頭の上から妙な音が聞こえてくる。
博奕打ちというのは、我々とはものの考え方が異なっているようで。
――板に何かを叩きつける音がする。
なるほど、やってやがるな――
177デフォルトの名無しさん
2018/05/02(水) 00:51:47.73ID:WLxRJQ+g ト、てっきり丁半博打の壺を伏せる音と勘違いいたしまして。
「おい、六さん」
店の者を呼びつけます。
「なんだい、水臭えじゃねえか。やってるならやってるで、教えてくれてもいいだろうに。俺も仲間に入れてくれ。取り次いでくんなよ」
「博奕ですか。滅相もない。うちではそういったことはさせません。二階は物置ですよ」
「おい、六さん」
店の者を呼びつけます。
「なんだい、水臭えじゃねえか。やってるならやってるで、教えてくれてもいいだろうに。俺も仲間に入れてくれ。取り次いでくんなよ」
「博奕ですか。滅相もない。うちではそういったことはさせません。二階は物置ですよ」
178デフォルトの名無しさん
2018/05/02(水) 00:53:01.26ID:WLxRJQ+g それでも、確かに音がするのは妙でございます。
店の者が二階へ上がっていって、やがて下りてまいりました。
「分かりました。あれは猫です」
こういった店は、商売柄、どうしても猫が寄ってくる。
今朝も早くに仕入れておいたイナダを、勝手に食ってしまったそうで。
あんまり腹が立つから、焼け火箸で目玉を刺してやろうかとも思ったが。
店の主人が、せめて橋の上から放り投げる程度にしてやれと言ったという。
店の者が二階へ上がっていって、やがて下りてまいりました。
「分かりました。あれは猫です」
こういった店は、商売柄、どうしても猫が寄ってくる。
今朝も早くに仕入れておいたイナダを、勝手に食ってしまったそうで。
あんまり腹が立つから、焼け火箸で目玉を刺してやろうかとも思ったが。
店の主人が、せめて橋の上から放り投げる程度にしてやれと言ったという。
179デフォルトの名無しさん
2018/05/02(水) 00:54:13.04ID:WLxRJQ+g 「それで柱にふん縛っておいたんですがね。今、見に行ったら、なんとか逃げ出そうとして、立ち上がっては倒れてやがる。あれはその音ですよ」
定吉は柄にもなく、猫がちょっと不憫に思えまして。
死なせるくらいなら、自分が引き取って育てるからト。
金を渡して猫を貰い受けました。
差し毛の一本も見当たらない、正真正銘の黒猫です。
定吉は懐に入れるト、店を出て家に帰った。
定吉は柄にもなく、猫がちょっと不憫に思えまして。
死なせるくらいなら、自分が引き取って育てるからト。
金を渡して猫を貰い受けました。
差し毛の一本も見当たらない、正真正銘の黒猫です。
定吉は懐に入れるト、店を出て家に帰った。
180デフォルトの名無しさん
2018/05/02(水) 00:54:44.10ID:WLxRJQ+g 家では女房のお滝が待っています。
定吉が懐から黒猫を取り出しますト、途端に渋い顔を浮かべまして。
「やだよ、そんなものを持って帰って。私は猫は嫌いなんだよ」
ト、そっぽを向いて風呂に行ってしまう。
定吉は、自分が命を救ってやった猫ですから。
恩を着せるわけではないが、やはり可愛い。
一人残った家の中で、猫を抱き上げて話しかける。
定吉が懐から黒猫を取り出しますト、途端に渋い顔を浮かべまして。
「やだよ、そんなものを持って帰って。私は猫は嫌いなんだよ」
ト、そっぽを向いて風呂に行ってしまう。
定吉は、自分が命を救ってやった猫ですから。
恩を着せるわけではないが、やはり可愛い。
一人残った家の中で、猫を抱き上げて話しかける。
181デフォルトの名無しさん
2018/05/02(水) 00:55:53.83ID:WLxRJQ+g 「そういや、名前を聞いてこなかったな。大抵の猫ならタマとかミケとか付けるんだが、お前はそんなガラじゃねえ。全身真っ黒で、熊みてえだもんな。そうだ。クマってのはどうだ」
するト、猫がにゃーごト鳴く。
「にゃーごだと。ヘヘ。鳴かなくていいから、恩返しのひとつでもしてみろよ。俺をちょっとは儲けさせてくれたら、拾った甲斐もあるってもんだ」
ト、猫に博奕の講釈をいたします。
するト、猫がにゃーごト鳴く。
「にゃーごだと。ヘヘ。鳴かなくていいから、恩返しのひとつでもしてみろよ。俺をちょっとは儲けさせてくれたら、拾った甲斐もあるってもんだ」
ト、猫に博奕の講釈をいたします。
182デフォルトの名無しさん
2018/05/02(水) 00:57:44.85ID:WLxRJQ+g 「一つでやるのをチョボイチ、 二つ使うのを丁半、三つ使うのをきつねと言う。俺がやってるのは丁半だ。グニの半、二ゾロの丁ってな」
定吉は賽を湯のみに入れて、畳の上に伏せますト。
「どうだ。表から見たらどの目か分からないだろう。だから、銭を賭けて当てるんだ。猫は魔物というから、お前なら当てられるだろう。おい、なんとか言ってみろよ」
猫は相変わらず、にゃーごト鳴く。
定吉は賽を湯のみに入れて、畳の上に伏せますト。
「どうだ。表から見たらどの目か分からないだろう。だから、銭を賭けて当てるんだ。猫は魔物というから、お前なら当てられるだろう。おい、なんとか言ってみろよ」
猫は相変わらず、にゃーごト鳴く。
183デフォルトの名無しさん
2018/05/02(水) 00:58:41.40ID:WLxRJQ+g 「俺は、丁が出ると思うな。お前は何だ。にゃーごか。よし、俺が丁で、お前がにゃーご。勝負ッ」
ト、戯れながら湯呑みを開けますト、一二の半。
「おかしいな、半か。するってえと、お前のにゃーごは半か。ヘヘ、にゃご半か。それじゃあ今度は俺が半だ」
すると、今度は猫がにゃご、にゃごト、二回鳴く。
ト、戯れながら湯呑みを開けますト、一二の半。
「おかしいな、半か。するってえと、お前のにゃーごは半か。ヘヘ、にゃご半か。それじゃあ今度は俺が半だ」
すると、今度は猫がにゃご、にゃごト、二回鳴く。
184デフォルトの名無しさん
2018/05/02(水) 00:59:18.14ID:WLxRJQ+g 「なんだい、妙な鳴き方をしやがる。今度はにゃごにゃごの丁ってか」
ト、笑いながら湯呑みを開けるト、二ゾロの丁。
それから何度繰り返してみましても、猫がにゃーごと鳴くと半。
にゃごにゃごト、二回鳴くと丁が出ます。
「お前、本当に恩返ししてくれるつもりだな。こいつはいい」
ト、笑いながら湯呑みを開けるト、二ゾロの丁。
それから何度繰り返してみましても、猫がにゃーごと鳴くと半。
にゃごにゃごト、二回鳴くと丁が出ます。
「お前、本当に恩返ししてくれるつもりだな。こいつはいい」
185デフォルトの名無しさん
2018/05/02(水) 01:00:01.79ID:WLxRJQ+g それから定吉は、賭場へ行くたびにこの猫を懐に忍ばせていく。
にゃーごの半、にゃごにゃごの丁で、どんどん金が儲かりまして。
羽振りがよくなるト、兄い、親分と立てられるようになる。
猫を始終連れて歩くので、そのうちに猫定と呼ばれるようになった。
にゃーごの半、にゃごにゃごの丁で、どんどん金が儲かりまして。
羽振りがよくなるト、兄い、親分と立てられるようになる。
猫を始終連れて歩くので、そのうちに猫定と呼ばれるようになった。
186デフォルトの名無しさん
2018/05/02(水) 01:03:08.53ID:WLxRJQ+g 博徒の世界では、あだ名がついたら一人前ト申すそうでございますが。
一人前になるト、自然、悪評も目立つようになる。
そのうちに江戸にいられなくなり、ふた月ばかり旅に出ることにいたしまして。
定吉は、猫を女房に預けて家を出た。
これが惨劇の幕開けでございます。
――チョット、一息つきまして。
一人前になるト、自然、悪評も目立つようになる。
そのうちに江戸にいられなくなり、ふた月ばかり旅に出ることにいたしまして。
定吉は、猫を女房に預けて家を出た。
これが惨劇の幕開けでございます。
――チョット、一息つきまして。
187デフォルトの名無しさん
2018/05/02(水) 01:03:26.56ID:bQ3xZw0Z 数学厨よりひどいあらしだな
スレが機能しなくなっちゃった
スレが機能しなくなっちゃった
188デフォルトの名無しさん
2018/05/02(水) 01:04:21.64ID:WLxRJQ+g どこまでお話しましたか。
そうそう、博奕打ちの定吉が、猫の鳴き声で賽の目を当て、兄い、親分ト立てられるようになるところまでで――。
亭主の定吉が家を空けますト。
女房のお滝は、子分の若い者を家に引き入れるようになりまして。
長屋の住人たちが眉をひそめるのも、まったく気にしておりません。
そうそう、博奕打ちの定吉が、猫の鳴き声で賽の目を当て、兄い、親分ト立てられるようになるところまでで――。
亭主の定吉が家を空けますト。
女房のお滝は、子分の若い者を家に引き入れるようになりまして。
長屋の住人たちが眉をひそめるのも、まったく気にしておりません。
189デフォルトの名無しさん
2018/05/02(水) 01:13:03.09ID:p96PUqzp 数学ができないやつは論理的思考もできないということを示す良い例だな
頼むからスレから未来永劫消えてくれ
頼むからスレから未来永劫消えてくれ
190デフォルトの名無しさん
2018/05/02(水) 01:17:36.33ID:bQ3xZw0Z いてもいいけど荒らすな
お題を出し
解答プログラムを書くこと
お題を出し
解答プログラムを書くこと
191デフォルトの名無しさん
2018/05/02(水) 01:21:54.54ID:Ahv/tBZs あの〜続きが気になるから http://onboumaru.com/049-nekosada から無断転載した「猫定」を
最後まで張ってくださいませんか?? 無能ロシア語落語さん^^
最後まで張ってくださいませんか?? 無能ロシア語落語さん^^
192デフォルトの名無しさん
2018/05/02(水) 01:22:07.91ID:WLxRJQ+g 自分が理解できれば何を書いてもいいというのは数学厨が示したルールだが。
文句を言われたらこう言って開き直ればいいそうだ。
「自分が理解できないからって荒らし呼ばわりは惨めすぎるね」
文句を言われたらこう言って開き直ればいいそうだ。
「自分が理解できないからって荒らし呼ばわりは惨めすぎるね」
193デフォルトの名無しさん
2018/05/02(水) 01:23:03.68ID:bQ3xZw0Z 勘弁してくれよ
それこそよそでやってくれ
それこそよそでやってくれ
194デフォルトの名無しさん
2018/05/02(水) 01:23:13.12ID:WLxRJQ+g195デフォルトの名無しさん
2018/05/02(水) 01:24:29.12ID:WLxRJQ+g そのうちに、人の噂も七十五日トばかりに。
ほとぼりが覚めた頃を見計らって、定吉が江戸に帰ってくる。
帰ってくるト、猫を連れてまたぞろ博奕へ出掛けます。
その夜。
お滝は、間男の若い者を呼びつけ、相談をした。
定吉がいては、お互い落ち着いて逢瀬を楽しむこともままならない。
いっそ、ひと思いに殺してしまってほしい。
ほとぼりが覚めた頃を見計らって、定吉が江戸に帰ってくる。
帰ってくるト、猫を連れてまたぞろ博奕へ出掛けます。
その夜。
お滝は、間男の若い者を呼びつけ、相談をした。
定吉がいては、お互い落ち着いて逢瀬を楽しむこともままならない。
いっそ、ひと思いに殺してしまってほしい。
196デフォルトの名無しさん
2018/05/02(水) 01:24:49.92ID:p96PUqzp197デフォルトの名無しさん
2018/05/02(水) 01:25:10.76ID:WLxRJQ+g 若い者は、親分の家の姉御に見込まれたことで、男が上がったつもりになり。
箒を斜に切って油をかけ、ジリジリと火で炙る。
これは竹槍を作っているのでございます。
そうして、鯵切り包丁を手ぬぐいで包みますト。
腰に差して、長屋を飛び出していきました。
定吉は、馴染みの賭場へやってきておりましたが。
その晩はどうしたことか、猫が一向に鳴きません。
箒を斜に切って油をかけ、ジリジリと火で炙る。
これは竹槍を作っているのでございます。
そうして、鯵切り包丁を手ぬぐいで包みますト。
腰に差して、長屋を飛び出していきました。
定吉は、馴染みの賭場へやってきておりましたが。
その晩はどうしたことか、猫が一向に鳴きません。
198デフォルトの名無しさん
2018/05/02(水) 01:26:10.04ID:WLxRJQ+g 体の具合が悪いのだろうか。
まあ、今まで稼がせてもらったのだから。
ト、この時にはすでに情が移っておりますから。
猫の具合を優先して、素直に帰ることにいたしました。
賭場を出るト、ポツポツと雨が降り出してくる。
定吉は猫を懐に大事にしまって、新橋の喜多川といううなぎ屋に駆け込んだ。
一杯やりながら、猫に鰻の切れ端をやるのが、この頃の楽しみでございます。
ところが、いつもはよく食う猫が、これまた今日に限って口をつけようといたしません。
まあ、今まで稼がせてもらったのだから。
ト、この時にはすでに情が移っておりますから。
猫の具合を優先して、素直に帰ることにいたしました。
賭場を出るト、ポツポツと雨が降り出してくる。
定吉は猫を懐に大事にしまって、新橋の喜多川といううなぎ屋に駆け込んだ。
一杯やりながら、猫に鰻の切れ端をやるのが、この頃の楽しみでございます。
ところが、いつもはよく食う猫が、これまた今日に限って口をつけようといたしません。
199デフォルトの名無しさん
2018/05/02(水) 01:28:05.76ID:WLxRJQ+g 続きを張れと言ったのは数学厨な。
200デフォルトの名無しさん
2018/05/02(水) 01:29:36.61ID:p96PUqzp 責任転嫁すんなハゲ
お前のせいで直近のお題が迷子だっつーの
もう二度とこないでください
お前のせいで直近のお題が迷子だっつーの
もう二度とこないでください
201デフォルトの名無しさん
2018/05/02(水) 02:28:44.50ID:/DSye1oK >>200
お前さんがやってる煽りも、ロシア語はってるいじけた小学生みたいな奴と同じレベルだよ。数学ができたとしても精神レベルは同程度。お前さんにどんな言い分があろうとも、周囲からはそう見える。
お前さんがやってる煽りも、ロシア語はってるいじけた小学生みたいな奴と同じレベルだよ。数学ができたとしても精神レベルは同程度。お前さんにどんな言い分があろうとも、周囲からはそう見える。
202デフォルトの名無しさん
2018/05/02(水) 02:46:19.96ID:7KO0UxVX 重み付き3次元箱詰め問題みたいなもんをここのお題に出すバカ
各都市の区の具体的なグラフが必要な問題をそれぞれのグラフも与えずに出すバカ
自分で解いて楽しいかどうか考えろよ
各都市の区の具体的なグラフが必要な問題をそれぞれのグラフも与えずに出すバカ
自分で解いて楽しいかどうか考えろよ
203デフォルトの名無しさん
2018/05/02(水) 02:57:52.71ID:MBc9Gfy6 出題時の注意>>4
204デフォルトの名無しさん
2018/05/02(水) 02:59:10.33ID:bQ3xZw0Z そら言えてる
205デフォルトの名無しさん
2018/05/02(水) 03:36:28.18ID:XZO+Bco0 お題が流れたみたいなのでリンクまとめ
>>11
"073:0" -> 18
"07362:450" -> 36
"06464:36470" -> 42
"0827171:28480" -> 66
"0737491:28180" -> 146
"05374734372747484:184618186912120" -> ?
>>40
[-1, 2, 8, -9, -2, -3, -6, -10, -8, 5, 7, 9, 7]
-> [-1, -9, -3, 5, 7, 9, 7, 2, 8, -2, -6, -10, -8]
>>77
"213cba213cba213cba" -> "213aaa213bbb213ccc"
>>102
gccgc -> 2
ggggggg -> 0
cppcppppccpppppc -> 5
cppcppppccpgpppc -> 0
>>117
odaiodai -> 2
ooddaai -> 1
idao -> 0
ododoadioadioadioadioadioadiodaioadodioadiaodi -> ?
>>11
"073:0" -> 18
"07362:450" -> 36
"06464:36470" -> 42
"0827171:28480" -> 66
"0737491:28180" -> 146
"05374734372747484:184618186912120" -> ?
>>40
[-1, 2, 8, -9, -2, -3, -6, -10, -8, 5, 7, 9, 7]
-> [-1, -9, -3, 5, 7, 9, 7, 2, 8, -2, -6, -10, -8]
>>77
"213cba213cba213cba" -> "213aaa213bbb213ccc"
>>102
gccgc -> 2
ggggggg -> 0
cppcppppccpppppc -> 5
cppcppppccpgpppc -> 0
>>117
odaiodai -> 2
ooddaai -> 1
idao -> 0
ododoadioadioadioadioadioadiodaioadodioadiaodi -> ?
206デフォルトの名無しさん
2018/05/02(水) 05:46:42.10ID:hUDFoTxj お題:Hello, World!を10回出力してください。ただし、偶数文字を小文字、奇数文字を大文字にすること。さらに3の倍数の文字をランダムな英字にすること。
207デフォルトの名無しさん
2018/05/02(水) 07:40:02.20ID:bQ3xZw0Z >>206 Perl5
use feature 'say';
@s = split'','Hello, World!';
@Az = ('A'..'Z', 'a'..'z');
for $i (0..9) {
do {$s[$_ - 1] = $Az[int(rand(@Az))]
if $_ % 3 == 0} for 1..@s;
my @t;
push @t, $i % 2 ? lc $c : uc $c
while ($i, $c) = each @s;
say @t;
}
実行結果
$ perl 11_206.pl
HeHlOg wQrLz!
HeOlOp wOrLo!
HeAlOh wMrLf!
HeZlOs wJrLz!
HeElOh wBrLg!
HeBlOa wIrLy!
HeFlOw wCrLb!
HeTlOc wSrLp!
HeOlOm wNrLx!
HeJlOt wSrLl!
use feature 'say';
@s = split'','Hello, World!';
@Az = ('A'..'Z', 'a'..'z');
for $i (0..9) {
do {$s[$_ - 1] = $Az[int(rand(@Az))]
if $_ % 3 == 0} for 1..@s;
my @t;
push @t, $i % 2 ? lc $c : uc $c
while ($i, $c) = each @s;
say @t;
}
実行結果
$ perl 11_206.pl
HeHlOg wQrLz!
HeOlOp wOrLo!
HeAlOh wMrLf!
HeZlOs wJrLz!
HeElOh wBrLg!
HeBlOa wIrLy!
HeFlOw wCrLb!
HeTlOc wSrLp!
HeOlOm wNrLx!
HeJlOt wSrLl!
208デフォルトの名無しさん
2018/05/02(水) 09:59:45.49ID:hcdKMJ5x >>206 Squeak/Pharo Smalltalk
Transcript open.
10 timesRepeat: [
| hello |
hello := 'Hello, World!' collectWithIndex: [:chr :idx |
((idx isDivisibleBy: 3) ifTrue: [Character alphabet atRandom] ifFalse: [chr])
perform: (idx even ifTrue: [#asLowercase] ifFalse: [#asUppercase])
].
Transcript cr; show: hello
]
=> HeYlOz wJrLp!
HeNlOe wArLr!
HeBlOn wWrLi!
HeSlOx wOrLk!
HeKlOy wRrLb!
HeIlOs wJrLw!
HeMlOd wGrLm!
HeElOz wLrLf!
HeJlOw wUrLr!
HeTlOe wMrLy!
Transcript open.
10 timesRepeat: [
| hello |
hello := 'Hello, World!' collectWithIndex: [:chr :idx |
((idx isDivisibleBy: 3) ifTrue: [Character alphabet atRandom] ifFalse: [chr])
perform: (idx even ifTrue: [#asLowercase] ifFalse: [#asUppercase])
].
Transcript cr; show: hello
]
=> HeYlOz wJrLp!
HeNlOe wArLr!
HeBlOn wWrLi!
HeSlOx wOrLk!
HeKlOy wRrLb!
HeIlOs wJrLw!
HeMlOd wGrLm!
HeElOz wLrLf!
HeJlOw wUrLr!
HeTlOe wMrLy!
209デフォルトの名無しさん
2018/05/02(水) 10:26:22.57ID:PqZlWADT210デフォルトの名無しさん
2018/05/02(水) 11:55:19.15211デフォルトの名無しさん
2018/05/02(水) 12:51:34.17ID:lkl981AK お題
N項目のレーダーチャートを考える。
各項目の点数が配列A[N]で与えられるので、
項目の並べ方を調整して、レーダーチャートの面積を最大化せよ。
※レーダーチャートの形状は正N角形であり、A[i]は中心からの距離を意味する。
{4,3,2,1,0}
=> 10.9371 //{0,1,3,4,2}
{10,0,0,10,10,0,10,10}
=> 141.421 //{0,0,0,10,10,10,10,10}
{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}
=> 280.698
N項目のレーダーチャートを考える。
各項目の点数が配列A[N]で与えられるので、
項目の並べ方を調整して、レーダーチャートの面積を最大化せよ。
※レーダーチャートの形状は正N角形であり、A[i]は中心からの距離を意味する。
{4,3,2,1,0}
=> 10.9371 //{0,1,3,4,2}
{10,0,0,10,10,0,10,10}
=> 141.421 //{0,0,0,10,10,10,10,10}
{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}
=> 280.698
212デフォルトの名無しさん
2018/05/02(水) 12:58:12.60ID:Zqd7NSI/ >>206 Emacs Lisp
(defun* f (a &aux (b 0))
(map 'string (lambda (c) (let ((d (if (= (% (incf b) 3) 0) (+ ?a (random 26)) c))) (if (oddp b) (upcase d) (downcase d)))) a))
(mapc (lambda (x) (princ (funcall #'f x)) (terpri)) (make-list 10 "Hello, World!"))
HeElOf wBrLb!
HeAlOj wYrLk!
HeZlOz wQrLd!
HeBlOh wIrLm!
HeMlOy wIrLb!
HeZlOo wTrLk!
HeRlOq wErLv!
HeFlOn wKrLq!
HeAlOg wQrLv!
HeFlOa wRrLi!
(defun* f (a &aux (b 0))
(map 'string (lambda (c) (let ((d (if (= (% (incf b) 3) 0) (+ ?a (random 26)) c))) (if (oddp b) (upcase d) (downcase d)))) a))
(mapc (lambda (x) (princ (funcall #'f x)) (terpri)) (make-list 10 "Hello, World!"))
HeElOf wBrLb!
HeAlOj wYrLk!
HeZlOz wQrLd!
HeBlOh wIrLm!
HeMlOy wIrLb!
HeZlOo wTrLk!
HeRlOq wErLv!
HeFlOn wKrLq!
HeAlOg wQrLv!
HeFlOa wRrLi!
213デフォルトの名無しさん
2018/05/02(水) 16:46:53.87ID:Zqd7NSI/ >>211 Emacs Lisp
(defun* f (a &aux b c)
(loop for i from 0 below (length a) do
(if (< i 3)
(setq b (append b (list (nth i a))))
(dotimes (n (length b))
(push (cons (+ (abs (- (nth n b) (nth i a))) (abs (- (nth (% (1+ n) (length b)) b) (nth i a)))) n) c))
(let ((d (1+ (cdar (sort (copy-seq c) (lambda (a b) (< (car a) (car b))))))))
(setq b (append (subseq b 0 d) (list (nth i a)) (nthcdr d b))))))
b)
(defun g (a)
(flet ((b (c d e)
(when (> c d) (rotatef c d))
(if (= d 0) 0.0 (* d (sin (/ pi e)) d (cos (/ pi e)) c (/ (float d))))))
(let ((h (length a)) (i 0.0))
(dotimes (n h)
(incf i (apply #'b (list (nth n a) (nth (% (1+ n) h) a) h))))
i)))
(f '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)) => (1 2 4 6 8 10 12 14 16 15 13 11 9 7 5 3)
(g (f '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16))) => 280.69829763979334
(defun* f (a &aux b c)
(loop for i from 0 below (length a) do
(if (< i 3)
(setq b (append b (list (nth i a))))
(dotimes (n (length b))
(push (cons (+ (abs (- (nth n b) (nth i a))) (abs (- (nth (% (1+ n) (length b)) b) (nth i a)))) n) c))
(let ((d (1+ (cdar (sort (copy-seq c) (lambda (a b) (< (car a) (car b))))))))
(setq b (append (subseq b 0 d) (list (nth i a)) (nthcdr d b))))))
b)
(defun g (a)
(flet ((b (c d e)
(when (> c d) (rotatef c d))
(if (= d 0) 0.0 (* d (sin (/ pi e)) d (cos (/ pi e)) c (/ (float d))))))
(let ((h (length a)) (i 0.0))
(dotimes (n h)
(incf i (apply #'b (list (nth n a) (nth (% (1+ n) h) a) h))))
i)))
(f '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)) => (1 2 4 6 8 10 12 14 16 15 13 11 9 7 5 3)
(g (f '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16))) => 280.69829763979334
216デフォルトの名無しさん
2018/05/02(水) 17:52:43.41ID:ja0hTifx >>211
J
山型に並べるだけ。
証明は略
(谷がある並び順は谷底を移動してより大きく出来ることが示せる。
谷がない場合、頂上から左右に振り分けて行くのが最大と示せる)
NB. sin α
sinA =: 1&o.@((o.2)&%)@#
NB. ズラして掛けた総和
s =: +/@(*(}.@,{.))"1
NB. 山型に並べる
raz =: (/:[)/:(/:+/@(* ,~/"1)@(*\)@i.@#)
NB. 山型に並べてズラして掛けた総和にsinα掛けて半分にする
ans =: -:@(sinA*(s@raz))
1行で書くと
ans =: -:@(1&o.@((o.2)&%)@#*+/@(*(}.@, {.))"1@((/:[)/:(/:+/@(*,~/"1)@(*\)@i.@#)))
実行例
ans 4 3 2 1 0
10.9371
ans 10 0 0 10 10 0 10 10
106.066
ans 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
280.698
https://%62it.ly/2jlIjeo
J
山型に並べるだけ。
証明は略
(谷がある並び順は谷底を移動してより大きく出来ることが示せる。
谷がない場合、頂上から左右に振り分けて行くのが最大と示せる)
NB. sin α
sinA =: 1&o.@((o.2)&%)@#
NB. ズラして掛けた総和
s =: +/@(*(}.@,{.))"1
NB. 山型に並べる
raz =: (/:[)/:(/:+/@(* ,~/"1)@(*\)@i.@#)
NB. 山型に並べてズラして掛けた総和にsinα掛けて半分にする
ans =: -:@(sinA*(s@raz))
1行で書くと
ans =: -:@(1&o.@((o.2)&%)@#*+/@(*(}.@, {.))"1@((/:[)/:(/:+/@(*,~/"1)@(*\)@i.@#)))
実行例
ans 4 3 2 1 0
10.9371
ans 10 0 0 10 10 0 10 10
106.066
ans 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
280.698
https://%62it.ly/2jlIjeo
217デフォルトの名無しさん
2018/05/02(水) 18:09:55.15ID:ja0hTifx >>211
J 一応総当たりも (sinA, s は同じ)
all =: A.~(i.@!@<:@#)
min =: >./
ans2 =: -:@((sinA)*(min@(s@all)))
実行例
ans2 4 3 2 1 0
10.9371
ans2 10 0 0 10 10 0 10 10
141.421
ans2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|out of memory: all
| ans2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
J 一応総当たりも (sinA, s は同じ)
all =: A.~(i.@!@<:@#)
min =: >./
ans2 =: -:@((sinA)*(min@(s@all)))
実行例
ans2 4 3 2 1 0
10.9371
ans2 10 0 0 10 10 0 10 10
141.421
ans2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|out of memory: all
| ans2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
218デフォルトの名無しさん
2018/05/02(水) 18:10:22.50ID:TAWRfgOr219デフォルトの名無しさん
2018/05/02(水) 18:11:53.98ID:ja0hTifx あれ?バグってるなこれ
総当たりの方は取り消します
総当たりの方は取り消します
220デフォルトの名無しさん
2018/05/02(水) 18:20:29.66ID:ja0hTifx 違った
山型に並べる方を取り消します、だった。
山型に並べる方を取り消します、だった。
221デフォルトの名無しさん
2018/05/02(水) 18:27:52.12ID:ja0hTifx >>216
正しくはこうでした
sinA =: 1&o.@((o.2)&%)@#
s =: +/@(*(}.@,{.))"1
raz =: ((\: [) {~ (/: (* <:@(2&*)@(2&|)))@i.@#)
ans =: -:@(sinA*(s@raz))
1行にするのは略
https://%62it.ly/2w3XF0m
正しくはこうでした
sinA =: 1&o.@((o.2)&%)@#
s =: +/@(*(}.@,{.))"1
raz =: ((\: [) {~ (/: (* <:@(2&*)@(2&|)))@i.@#)
ans =: -:@(sinA*(s@raz))
1行にするのは略
https://%62it.ly/2w3XF0m
222デフォルトの名無しさん
2018/05/02(水) 19:04:01.98ID:intU8xfF223デフォルトの名無しさん
2018/05/02(水) 19:12:21.47ID:intU8xfF224デフォルトの名無しさん
2018/05/02(水) 19:28:18.08ID:bfgs8qRD225デフォルトの名無しさん
2018/05/02(水) 19:30:41.81ID:intU8xfF226デフォルトの名無しさん
2018/05/02(水) 20:02:43.46ID:ja0hTifx >>225
「大きい方から順に取って、既存の列の大きい端の外側に配置」を繰り返せばいい
0 1 2 3 4 のときは
4
4, 3
2, 4, 3
2, 4, 3, 1
0, 2, 4, 3, 1
この時の面積は
1/2・sin 72° ・(0*2+2*4+4*3+3*1+1*0) = 10.9371
「大きい方から順に取って、既存の列の大きい端の外側に配置」を繰り返せばいい
0 1 2 3 4 のときは
4
4, 3
2, 4, 3
2, 4, 3, 1
0, 2, 4, 3, 1
この時の面積は
1/2・sin 72° ・(0*2+2*4+4*3+3*1+1*0) = 10.9371
227デフォルトの名無しさん
2018/05/02(水) 20:20:59.85ID:E/2WxUaU ググったら公式出てきた
http://chaoxuprime.com/posts/2012-08-08-maximize-the-area-of-a-radar-chart.html
プログラムでやるなら、数列の前項後項の積和を最大化する方針がいいのかな
http://chaoxuprime.com/posts/2012-08-08-maximize-the-area-of-a-radar-chart.html
プログラムでやるなら、数列の前項後項の積和を最大化する方針がいいのかな
228225
2018/05/02(水) 20:32:00.70ID:QUr6vWwN 面倒なので証明しないで全パターンの面積を求めて最大のやつを出すように作ろうかと思ったが、
腹が減ったので飯食ってから考えよう。(というかこうするならほとんど考える必要ないなこれw)
腹が減ったので飯食ってから考えよう。(というかこうするならほとんど考える必要ないなこれw)
230デフォルトの名無しさん
2018/05/02(水) 20:44:42.35ID:ja0hTifx >>227
そのπってのが真ん中から左右に配置して行くインデックス列。
でその証明は不完全(*1)だけど結論は合ってる。
(*1)
n-1個の時の最大になる列のどこかに
n番目の数を挿入すればn個の時の解が得られる、
ということを証明せずに利用している。
小さくするには山谷の数を多くする(小さいのと大きいのがなるべく隣接するように置く)
ってことは直感的にわかるんだけど具体的な構成法は考察がいるな
そのπってのが真ん中から左右に配置して行くインデックス列。
でその証明は不完全(*1)だけど結論は合ってる。
(*1)
n-1個の時の最大になる列のどこかに
n番目の数を挿入すればn個の時の解が得られる、
ということを証明せずに利用している。
小さくするには山谷の数を多くする(小さいのと大きいのがなるべく隣接するように置く)
ってことは直感的にわかるんだけど具体的な構成法は考察がいるな
231デフォルトの名無しさん
2018/05/02(水) 22:20:26.25ID:hcdKMJ5x >>211 Squeak/Pharo Smalltalk
| fn |
fn := [:arr |
| strm res |
strm := arr sorted readStream.
res := OrderedCollection withAll: (strm next: 3).
[strm atEnd] whileFalse: [
| next foundPos |
next := strm next.
foundPos := (1 to: res size) detectMax: [:idx |
| a1 a2 |
(a1 := res at: idx) + (a2 := res atWrap: idx+1) * next - (a1 * a2)].
res add: next afterIndex: foundPos
].
res := res asArray.
(res * (2 * Float pi / res size) sin * ({res last}, res allButLast) / 2) sum -> res
].
fn value: #(4 3 2 1 0).
"=> 10.937149937394265->#(0 1 3 4 2) "
fn value: #(10 0 0 10 10 0 10 10).
"=> 141.42135623730948->#(0 10 10 10 10 10 0 0) "
fn value: #(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)
"=> 280.6982976397934->#(1 2 4 6 8 10 12 14 16 15 13 11 9 7 5 3) "
| fn |
fn := [:arr |
| strm res |
strm := arr sorted readStream.
res := OrderedCollection withAll: (strm next: 3).
[strm atEnd] whileFalse: [
| next foundPos |
next := strm next.
foundPos := (1 to: res size) detectMax: [:idx |
| a1 a2 |
(a1 := res at: idx) + (a2 := res atWrap: idx+1) * next - (a1 * a2)].
res add: next afterIndex: foundPos
].
res := res asArray.
(res * (2 * Float pi / res size) sin * ({res last}, res allButLast) / 2) sum -> res
].
fn value: #(4 3 2 1 0).
"=> 10.937149937394265->#(0 1 3 4 2) "
fn value: #(10 0 0 10 10 0 10 10).
"=> 141.42135623730948->#(0 10 10 10 10 10 0 0) "
fn value: #(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)
"=> 280.6982976397934->#(1 2 4 6 8 10 12 14 16 15 13 11 9 7 5 3) "
232デフォルトの名無しさん
2018/05/03(木) 00:37:28.69ID:hmU6w2gD >>230 最小を目指して, 山谷の数を多くしてみました.
(defun f2 (a)
(let* ((b (sort (copy-seq a) #'<))
(c (/ (length b) 2))
(d (let ((e (subseq b 0 c))) (apply #'append (mapcar (lambda (x) (let ((y (pop e))) (if y (list x y) (list x)))) (reverse (subseq b c))))))
(h))
(loop for i from 0 below (length d) do (setq h (if (or (= (% i 4) 1) (= (% i 4) 2)) (append h (list (nth i d))) (append (list (nth i d)) h))))
h))
(f2 '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16))
(8 10 6 12 4 14 2 16 1 15 3 13 5 11 7 9)
(g (f2 '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)))
157.47423241823444
(defun f2 (a)
(let* ((b (sort (copy-seq a) #'<))
(c (/ (length b) 2))
(d (let ((e (subseq b 0 c))) (apply #'append (mapcar (lambda (x) (let ((y (pop e))) (if y (list x y) (list x)))) (reverse (subseq b c))))))
(h))
(loop for i from 0 below (length d) do (setq h (if (or (= (% i 4) 1) (= (% i 4) 2)) (append h (list (nth i d))) (append (list (nth i d)) h))))
h))
(f2 '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16))
(8 10 6 12 4 14 2 16 1 15 3 13 5 11 7 9)
(g (f2 '(1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16)))
157.47423241823444
233デフォルトの名無しさん
2018/05/03(木) 00:59:37.08ID:SwM9YWB0234デフォルトの名無しさん
2018/05/03(木) 01:32:09.14 >>233
無為に捨てられる何千もの’Hello, World!’がかわいそうすぎね?(´;ω;`)
無為に捨てられる何千もの’Hello, World!’がかわいそうすぎね?(´;ω;`)
235デフォルトの名無しさん
2018/05/03(木) 01:32:43.19ID:rKkc5eBg >>211 Perl5
https://ideone.com/cMJGDR
自力で動的計画法による解法を考えようとしていたけど、
>>227で紹介されたWEBの解法に勝る見込みが無さそうなので
思考を停止してWEBの解法を愚直に実装したものです
https://ideone.com/cMJGDR
自力で動的計画法による解法を考えようとしていたけど、
>>227で紹介されたWEBの解法に勝る見込みが無さそうなので
思考を停止してWEBの解法を愚直に実装したものです
236デフォルトの名無しさん
2018/05/03(木) 09:34:11.17ID:dYPbvGoR 【お題】
与えられた整数のリストで、
2つの要素の和が100になるすべての組を列挙せよ。
例:
[1, 99, 20]
-> [[1, 99]]
[62, 116, 181, 86, 60, 98, -16, 73, 131, 16, 80, -81, 40]
-> [[40, 60], [-16, 116], [-81, 181]]
[100, 0, 100, 0]
-> [[0, 100], [0, 100], [0, 100], [0, 100]]
与えられた整数のリストで、
2つの要素の和が100になるすべての組を列挙せよ。
例:
[1, 99, 20]
-> [[1, 99]]
[62, 116, 181, 86, 60, 98, -16, 73, 131, 16, 80, -81, 40]
-> [[40, 60], [-16, 116], [-81, 181]]
[100, 0, 100, 0]
-> [[0, 100], [0, 100], [0, 100], [0, 100]]
237デフォルトの名無しさん
2018/05/03(木) 10:12:06.60ID:6SfrUic2238デフォルトの名無しさん
2018/05/03(木) 10:13:33.58ID:ngB6qDho239デフォルトの名無しさん
2018/05/03(木) 10:19:06.64ID:m6mdbiEz240デフォルトの名無しさん
2018/05/03(木) 10:45:51.16ID:uFV+Z8SY >>236 Squeak/Pharo Smalltalk
| fn |
fn := [:arr |
| bag |
bag := Bag new.
arr combinations: 2 atATimeDo: [:comb |
comb sum = 100 ifTrue: [bag add: comb sorted]].
bag asArray
].
fn value: #(1 99 20).
"=> #((1 99)) "
fn value: #(62 116 181 86 60 98 -16 73 131 16 80 -81 40).
"=> #((-81 181) (-16 116) (40 60)) "
fn value: #(100 0 100 0).
"=> #((0 100) (0 100) (0 100) (0 100)} "
| fn |
fn := [:arr |
| bag |
bag := Bag new.
arr combinations: 2 atATimeDo: [:comb |
comb sum = 100 ifTrue: [bag add: comb sorted]].
bag asArray
].
fn value: #(1 99 20).
"=> #((1 99)) "
fn value: #(62 116 181 86 60 98 -16 73 131 16 80 -81 40).
"=> #((-81 181) (-16 116) (40 60)) "
fn value: #(100 0 100 0).
"=> #((0 100) (0 100) (0 100) (0 100)} "
241デフォルトの名無しさん
2018/05/03(木) 11:34:54.61242デフォルトの名無しさん
2018/05/03(木) 13:12:32.47ID:N6jONgbj >>236 Perl5
use Data::Dump 'dump';
for ([1, 99, 20],
[62, 116, 181, 86, 60, 98, -16, 73, 131, 16, 80, -81, 40],
[100, 0, 100, 0]) {
sub c {my $d = shift;
my @l = c(@_) if 1 < @_;
@l, map{[$d, $_]} @_};
@s = grep{100 == $$_[0]+$$_[1]} c @$_;
print dump($_)."\n->".dump(\@s)."\n";
}
実行結果
$ perl 11_236.pl
[1, 99, 20]
->[[1, 99]]
[62, 116, 181, 86, 60, 98, -16, 73, 131, 16, 80, -81, 40]
->[[60, 40], [181, -81], [116, -16]]
[100, 0, 100, 0]
->[[100, 0], [0, 100], [100, 0], [100, 0]]
※実行にはperlのData::Dumpモジュールが必要ですが、
Ideoneのperl 24にはインストールされてないようでした
use Data::Dump 'dump';
for ([1, 99, 20],
[62, 116, 181, 86, 60, 98, -16, 73, 131, 16, 80, -81, 40],
[100, 0, 100, 0]) {
sub c {my $d = shift;
my @l = c(@_) if 1 < @_;
@l, map{[$d, $_]} @_};
@s = grep{100 == $$_[0]+$$_[1]} c @$_;
print dump($_)."\n->".dump(\@s)."\n";
}
実行結果
$ perl 11_236.pl
[1, 99, 20]
->[[1, 99]]
[62, 116, 181, 86, 60, 98, -16, 73, 131, 16, 80, -81, 40]
->[[60, 40], [181, -81], [116, -16]]
[100, 0, 100, 0]
->[[100, 0], [0, 100], [100, 0], [100, 0]]
※実行にはperlのData::Dumpモジュールが必要ですが、
Ideoneのperl 24にはインストールされてないようでした
243デフォルトの名無しさん
2018/05/03(木) 13:15:16.16ID:ngB6qDho244デフォルトの名無しさん
2018/05/03(木) 14:31:25.30ID:M52LYEAa >>236 javascript
var f = l => {
console.log(
l.reduce((acc, m, i, ary) =>
[
...acc,
...ary.slice(i+1)
.filter(n => m + n == 100)
.map(n => [m, n])
],
[]
)
)
}
f([1, 99, 20])
//=> [[1, 99]]
f([62, 116, 181, 86, 60, 98, -16, 73, 131, 16, 80, -81, 40])
//=> [[116, -16], [181, -81], [60, 40]]
f([100, 0, 100, 0])
//=> [[100, 0], [100, 0], [0, 100], [100, 0]]
var f = l => {
console.log(
l.reduce((acc, m, i, ary) =>
[
...acc,
...ary.slice(i+1)
.filter(n => m + n == 100)
.map(n => [m, n])
],
[]
)
)
}
f([1, 99, 20])
//=> [[1, 99]]
f([62, 116, 181, 86, 60, 98, -16, 73, 131, 16, 80, -81, 40])
//=> [[116, -16], [181, -81], [60, 40]]
f([100, 0, 100, 0])
//=> [[100, 0], [100, 0], [0, 100], [100, 0]]
245デフォルトの名無しさん
2018/05/03(木) 14:55:50.12ID:cjR1ezGU Smalltalk のメソッドの充実っぷりには毎回感心
246デフォルトの名無しさん
2018/05/03(木) 18:28:55.09ID:qi+bYfi0 それなりの規模の処理系(GUI付きOSモドキ)をセルフホスティングで構築・維持していると
イディオムがイディオムとして認識・共有されやすく、さらにメソッドとしてまとめられやすいのかも
たとえばスクリプト言語処理系でしかないGNU Smalltalkはあまり便利メソッドが増える感じがしないので
イディオムがイディオムとして認識・共有されやすく、さらにメソッドとしてまとめられやすいのかも
たとえばスクリプト言語処理系でしかないGNU Smalltalkはあまり便利メソッドが増える感じがしないので
247デフォルトの名無しさん
2018/05/04(金) 19:54:42.66ID:4Zt1BODM お題
10,000個の単純変数に1から10,000の整数を代入する
10,000個の単純変数に1から10,000の整数を代入する
248デフォルトの名無しさん
2018/05/04(金) 20:34:39.46ID:6j9W/G+p >>247 Ruby
(1..10000).each{|i|instance_variable_set("@v#{i}", i}
(1..10000).each{|i|instance_variable_set("@v#{i}", i}
249デフォルトの名無しさん
2018/05/04(金) 20:41:53.19ID:LfImqqRO250デフォルトの名無しさん
2018/05/04(金) 20:52:57.61ID:LfImqqRO■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国国営メディア「沖縄は日本ではない」… ★5 [BFU★]
- 高市政権にパイプ役不在…日中高まる緊張 公明党の連立離脱影響、自民内にも懸念「自分でまいた種は自分で刈り取ってもらわないと」★2 [ぐれ★]
- 【速報】 高市政権、「日本版DOGE」を立ち上げ 米国で歳出削減をした「政府効率化省(DOGE)」になぞらえたもの [お断り★]
- 【速報】 日経平均の下落率3%超す、財政懸念で長期金利上昇 [お断り★]
- 台湾声明 「台湾は独立した主権国家、中国は台湾を統治したことがなく、中国は口出しする権利ない」 中国が高市首相に抗議で ★7 [お断り★]
- 日本が「世界で最も魅力的な国」1位に!✨「魅力的な都市」では東京が2位 「魅力的な地域」は北海道が7位に [煮卵★]
- 高市政権「中国さん、日本はいつでも対話に応じるで」 [834922174]
- 吉村はん「高市さんは発言を撤回する必要ないですよ。中国の大阪総領事が謝罪すべき」 [256556981]
- 中国「高市が謝罪撤回しないとこれ全部なくなるけどどうする?」 [931948549]
- 日経平均、49000円割れ 国賊高市を許すな [402859164]
- 東浩紀「日本はいままさに駆け引きをしている。」高市有事にピシャリ [834922174]
- 【高市経済】日経平均マイナス1600円!、金利1.76%!ドル円155円!世界恐慌へ [219241683]
