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

■ このスレッドは過去ログ倉庫に格納されています
2018/04/24(火) 20:45:14.49ID:ZY7R7Sru
プログラミングのお題スレです。

前スレ
プログラミングのお題スレ 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/

宿題は宿題スレがあるのでそちらへ。
2018/05/01(火) 01:33:38.84ID:bK+upqA8
>>122 続き
今 exp(z) = -1, z ∈C

>>122 Cより
exp(x + yj) = -1, x, y ∈R
e^x(cos(y) + j・sin(y)) = -1
e^x・cos(y) + j・e^x・sin(y) = -1…D

よってDの両辺の虚部が 0 だから

e^x・sin(y) = 0
e^x > 0 より sin(y) = 0
y = nπ…D(必要条件)
このとき
cos(y) = ±1

このときDの両辺の実部を比較して
e^x(±1) = -1
e^x > 0 だから cos(y) = -1 となるのはDの中でも y = (2n + 1)π, n ∈Zのときのみ
また y = (2n + 1)π のとき、e^x = 1, x = 0

>>109
exp(z) の絶対値は z の実部にのみ影響されます
exp(z) = -1 から |exp(z)| = 1
|exp(z)| = e^x
ですから
e^x = 1
これを満たすのは x = 0 のみ、という推論はどうでしょうか?
2018/05/01(火) 01:43:11.17ID:W5y6CuNF
>>121-123
>exp(x) = Σx^n/n! = e^x
なんでexp(x)とe^xを比較する議論の前提で、この2つが正しいことを利用してるの?
循環論法です。破綻しています

>exp(jy) = 1 + (yj)/1! - y^2/2! - j・y^3/3! + y^4/4! + j・y^5/5! + …
>=(1 - y^2/2! + y^4/4! - …) + j ・ (y/1! - y^3/3! + y^5/5! - …)
exp(x)が収束することしか仮定されていないためこの変形は成り立ちません
きちんと絶対収束(absolute convergence)することを示すか仮定しましょう。破綻しています

よって以後の議論は全て誤りですので参考になりません
殊に循環論法による誤謬は致命的ですね
あなたはまず複素解析の文脈で任意の実数xに対して exp(x) = (2.7...)^x となる事を証明しなければなりません
尤も、expは単射なのに対してa^zは多価関数なのでこれらが等しくないことは計算するまでもなく自明なんですが、
なんでここにこんなにつっかかってくるんですかね……
2018/05/01(火) 01:56:50.61ID:sD3/P01t
>>102 javascript
var f = s => {
var d = [...new Set(s)]
return d.length == 2
? ((a,b) => ({g:'c',c:'p',p:'g'})[a] == b)(d[0],d[1])
? s.match(new RegExp(d[0],'g')).length
: s.match(new RegExp(d[1],'g')).length
: 0;
}
console.log(f('gccgc')) //=> 2
console.log(f('ggggggg')) //=> 0
console.log(f('cppcppppccpppppc')) //=> 5
console.log(f('cppcppppccpgpppc')) //=> 0
2018/05/01(火) 02:00:54.53ID:bK+upqA8
>>124
>>121 >>exp(x) = Σx^n/n! = e^x
>なんでexp(x)とe^xを比較する議論の前提で、この2つが正しいことを利用してるの?
>循環論法です。破綻しています

いいえ循環論法ではありません
仮定は
exp(z) = Σz^n/n! が z ∈ C で収束すること…@
exp(z1 + z2) = exp(z1)exp(z2), z1, ze ∈C …A
のみです

z = x + jy と置いたとき
exp(z1 + z2) = exp(z1)exp(z2), z1, z2 ∈C…A
が成り立つ前提で
z1 = x, z2 = yj
とおいて
exp(x + yj) = exp(x)exp(yj)
と変形します

もともと exp(z) = Σz^n/n! と置いたのですから
x ∈R のとき、exp(x) = Σz^n/n!
Σx^n/n! = e^x の収束は別途長い議論を経ないといけませんが、ここでは既知としています

最終的には >>121
exp(x + jy) = e^x(cos(y) + j・sin(y))
を導きだすのが目的です
2018/05/01(火) 02:04:42.58ID:MakmSkau
数学荒らし本当うざ…
2018/05/01(火) 02:12:20.66ID:sD3/P01t
>>125
((a,b) => ({g:'c',c:'p',p:'g'})[a] == b)(d[0],d[1])
は単純に
({g:'c',c:'p',p:'g'})[d[0]] == d[1]
でよかった。
最初関数として作ってあったもので単純化し忘れ。
2018/05/01(火) 02:19:47.25ID:6vH9r7He
>>77 Perl5 >>83を書き込んだけど気に入らなかったので少し修正した。
@s = split '','213cba213cba213cba';
@k = grep{$s[$_] =~ /[a-z]/} 0..$#s;
@s[@k] = sort @s[@k];
print @s,"\n";

実行結果
$ perl 11_77_2.pl
213aaa213bbb213ccc
2018/05/01(火) 02:24:25.71ID:85dldNJr
>>126
>exp(x) = Σx^n/n! = e^x
において e^x = Σx^n/n! と勝手にしているのが結果を先取り(しかも誤謬)していて宜しくないと言っているのです
「複素解析の文脈」では w^z = exp(z*(p.v. log|w| + i*arg(w))) なのです
これは定義です。これが気に食わなくて、どうしても exp(x) = e^x を言いたいのであれば
より妥当性がありwell-definedな w^z の定義を提示してください
繰り返します。あなたは「e^z = exp(z)が成立するように、任意の複素数w, zに対して w^z を定義する」必要があります

>Σx^n/n! = e^x の収束は別途長い議論を経ないといけませんが、ここでは既知としています
Σx^n/n!が収束するだけでは弱くて、
「絶対収束」(絶対に収束するという意味ではありません)を仮定する必要があると言っているんですけど
まあ枝葉末節なので不問とします
2018/05/01(火) 02:26:11.46ID:bK+upqA8
>>124
>exp(x)が収束することしか仮定されていないためこの変形は成り立ちません
>きちんと絶対収束(absolute convergence)することを示すか仮定しましょう。

厳しいですね…手元の教科書(高木・解析概論、ただ結構いい加減な本だそうですが)の引き写しなんですが…
虚数単位を j と置いていることからもわかるように、工科系の出自で、厳密な話は苦手です

>なんでここにこんなにつっかかってくるんですかね……
そのようなつもりはなく、純粋に数学的関心から書いているものです
>>123-121 >>113 >>109 >>106 >>103 を見返しても問題はないと思いますが

>あなたはまず複素解析の文脈で任意の実数xに対して exp(x) = (2.7...)^x となる事を証明しなければなりません
>尤も、expは単射なのに対してa^zは多価関数なのでこれらが等しくないことは計算するまでもなく自明なんですが、
exp(z) = exp(z + 2nπj) なので exp(z) は周期関数であることはわかるのですが、
これ以上のことはちょっとわかりません、今日はここまででお休みします
お付き合いくださりありがとうございました
132デフォルトの名無しさん
垢版 |
2018/05/01(火) 02:37:06.62ID:D2CDUI2h
>>87
Kotlin
https://paiza.io/projects/lG5nWGdi-n7XwGLr0YAi_A
Javaのライブラリに日付や曜日の計算任せちゃってて自分ではほとんど何もやってません。
2018/05/01(火) 02:39:14.06ID:MakmSkau
スレタイも読めない数学荒らしが一族郎党苦しんで死にますように。
2018/05/01(火) 02:46:03.00ID:6vH9r7He
そこまでのろわなくてもよい希ガスるけど、、
数学的お題でもいいけど、明快なお題を出すか、回答を書き込むかを重視し
解釈のかみ合わない議論は程々にした方が医院ジャマイカ
2018/05/01(火) 03:31:48.56ID:7ekaWt6m
>>117 Emacs Lisp

(defun f (S)
(let ((s 0) (N 0))
(ignore-errors (loop (mapcar (lambda (c) (setq s (1+ (position c S :start s)))) "odai") (incf N)))
N))

(f "odaiodai") 2
(f "ooddaai") 1
(f "idao") 0
(f "ododoadioadioadioadioadioadiodaioadodioadiaodi") 5
136デフォルトの名無しさん
垢版 |
2018/05/01(火) 04:52:28.26ID:D2CDUI2h
>>102
Kotlin
https://paiza.io/projects/bk-KHJlrtxxPPYLndwrHvA
137デフォルトの名無しさん
垢版 |
2018/05/01(火) 05:19:23.17ID:D2CDUI2h
>>117
Kotlin
https://paiza.io/projects/iL8CfccFm8DLlbB5dA63zQ
138デフォルトの名無しさん
垢版 |
2018/05/01(火) 05:47:58.01ID:D2CDUI2h
>>117
Perl
正規表現のパターンを作ってループさせてみました。
https://paiza.io/projects/pcQMuxJqlGR75LNkXho93w
2018/05/01(火) 07:17:35.34ID:dg2b7E11
>>131
純粋に数学的関心ならもうプログラミング関係ないんだから、適切な板、スレを探してそっちで好きなだけやってこい
140デフォルトの名無しさん
垢版 |
2018/05/01(火) 08:38:29.97ID:DfUAZvBS
>>102 Common Lisp
https://ideone.com/vtkIq4
141デフォルトの名無しさん
垢版 |
2018/05/01(火) 09:28:24.04
数学やってる奴は頭悪いってことは分かった
2018/05/01(火) 09:42:49.56ID:k1G9EgK2
数学は別にいいんだが難しすぎるのはちょっとな
簡単なお題なら個人的に歓迎
143デフォルトの名無しさん
垢版 |
2018/05/01(火) 10:53:36.69ID:DfUAZvBS
>>117 Common Lisp
https://ideone.com/84mgEu
2018/05/01(火) 11:01:22.65ID:V5+E1IVs
>>117 Squeak/Pharo Smalltalk

| fn |
fn := [:str |
| strm odai count |
strm := str readStream.
odai := 'odai' readStream.
count := 0.
[strm atEnd] whileFalse: [
((strm skipTo: odai next) and: [odai atEnd])
ifTrue: [odai reset. count := count + 1]
].
count
].

fn value: 'odaiodai'. "=> 2 "
fn value: 'ooddaai'. "=> 1 "
fn value: 'idao'. "=> 0 "
fn value: 'ododoadioadioadioadioadioadiodaioadodioadiaodi'. "=> 5 "
2018/05/01(火) 11:23:10.29ID:PxRnJhKl
>>102 Squeak/Pharo Smalltalk

| numOfWinnersOf |
numOfWinnersOf := [:jkStr |
| arr set |
arr := jkStr asArray collect: [:chr | 'gcp' indexOf: chr].
(set := arr asSet) size = 2 ifFalse: [0] ifTrue: [
| one other |
one := set anyOne. other := set remove: one; anyOne.
arr occurrencesOf: (one - other \\ 3 = 2 ifTrue: [one] ifFalse: [other])
]
].

numOfWinnersOf value: 'gccgc'. "=> 2 "
numOfWinnersOf value: 'ggggggg'. "=> 0 "
numOfWinnersOf value: 'cppcppppccpppppc'. "=> 5 "
numOfWinnersOf value: 'cppcppppccpgpppc'. "=> 0 "
2018/05/01(火) 11:50:43.04ID:PxRnJhKl
>>80 Squeak/Pharo Smalltalk

| fn |
fn := [:ps |
ps asSet size = 4 and: [
ps noneSatisfy: [:p1 |
[:p2 :p3 :p4 |
(p3 - p2 crossProduct: p4 - p2) = 0 or: [p1 insideTriangle: p2 with: p3 with: p4]
] valueWithArguments: (ps copyWithout: p1)
]
]
].

fn value: {0@0. 1@0. 1@1. 0@1}. "=> true "
fn value: {0@0. 1@1. 1@0. 0@1}. "=> true "
fn value: {0@0. 2@0. 1@1. 0@2}. "=> false "
fn value: {0@0. 1@1. 2@2. 3@3}. "=> false "
fn value: {0@0. 0@0. 0@0. 0@0}. "=> false "
2018/05/01(火) 12:02:35.06ID:pz418p4m
>>117
お題のサンプル程度なら正規表現で十分かと
PowerShell
PS C:\> ([regex]'o.*?d.*?a.*?i.*?').Matches('odaiodai').Count
>>
2
PS C:\> ([regex]'o.*?d.*?a.*?i.*?').Matches('ooddaaii').Count
>>
1
PS C:\> ([regex]'o.*?d.*?a.*?i.*?').Matches('idao').Count
>>
0
PS C:\> ([regex]'o.*?d.*?a.*?i.*?').Matches('ododoadioadioadioadioadioadiodaioadodioadiaodi ').Count
>>
5
2018/05/01(火) 12:07:06.40ID:70o2W7dO
文字をATCGにして長さ1億くらいにすればプログラミングっぽくなるんじゃねえの
149デフォルトの名無しさん
垢版 |
2018/05/01(火) 12:28:06.18ID:UGhOjMxe
【安全デマにブーメラン】 山口が自殺したら、次は城島、他のメンバーも酷い運命、食べて応援が応報に
http://rosie.5ch.net/test/read.cgi/liveplus/1525137558/l50
2018/05/01(火) 12:30:10.65ID:in398Y2z
お題
大きさW×Hでポケットのないビリヤード台を想像してください。
左下の座標を(0,0)、右上の座標を(W,H)とします。
位置(0,0)から右上に向かって毎秒(a,b)の速度でボールを射出したとき、
ボールが位置(0,0)に戻ってくるのは何秒後でしょうか?
ボールの大きさや摩擦などは無視します。

[input]
W H a b (すべて正の整数)

[example]
2 4 1 1 -> 8
3 4 2 1 -> 24
4 5 2 4 -> 20
1 2 10 5 -> 0.8
2018/05/01(火) 13:50:08.69ID:NcJxSmfh
公式があるね。
周期=2WH/gcd(aH,bW)
(gcdは最大公約数)
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
2018/05/01(火) 13:59:50.83ID:w7H89JvO
>>151
やっぱ公約数に帰結するんだ、
>>152書いてて繰り返し不要な解法がありそうだという気がしてきた
まいいや自分で考えることも面白いから
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 "
2018/05/01(火) 19:12:45.94ID:sD3/P01t
>>117 javascript
var f = s => {console.log((s.match(/o.*?d.*?a.*?i.*?/g)||[]).length)}
f('odaiodai') //=> 2
f('ooddaai') //=> 1
f('idao') //=> 0
f('ododoadioadioadioadioadioadiodaioadodioadiaodi') //=> 5
>>147と同じ
2018/05/01(火) 20:49:51.17ID:2ktnnBej
>>102 ruby
https://ideone.com/f8m9QV
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
と荷物及びナップサックが与えられた時、最大の価値を求めよ
可能ならどれを詰めたかも求めよ
なお荷物は回転させて詰めても良いものとする
2018/05/01(火) 21:36:00.67ID:2ktnnBej
>>117 ruby
https://ideone.com/4Ra0WG
2018/05/01(火) 22:01:39.67ID:bRlEbj+U
ナップザックというか箱だなそれ (雑感)
160デフォルトの名無しさん
垢版 |
2018/05/01(火) 22:40:45.68ID:7ekaWt6m
お題
政令指定都市名を受け取り, 隣接する区を異なる色になるように塗り分けるのに必要な最少の色数を返す.

f(Sagamihara) => 2
f(Yokohama) => 4
161デフォルトの名無しさん
垢版 |
2018/05/01(火) 22:43:51.19
>>157は、巡回セールスマン問題に並んで有名なナップサック問題である。
なお、この手の問題をNP完全問題だとかNP困難問題だとか呼ぶのは
「ナップサック」(NaPpsuck)に由来する。
2018/05/01(火) 22:47:15.06ID:Bi25k6nv
non-polynomial
2018/05/01(火) 22:53:05.87ID:Q2z4i3xl
数学荒らし死ね
2018/05/01(火) 22:54:11.24ID:RbfjP2ra
自分が理解できないからって数学荒らし呼ばわりは惨めすぎるね
2018/05/01(火) 23:00:54.97ID:dg2b7E11
>>161
民明書房か
2018/05/02(水) 00:09:48.80ID:WLxRJQ+g
>>164
じゃロシア語で埋めてくな。
文句ないんだろ。
2018/05/02(水) 00:16:51.78ID:WLxRJQ+g
Текущая версия страницы пока не проверялась опытными участниками и может
значительно отличаться от версии, проверенной 11 апреля 2015;
проверки требуют 20 правок.
Бу́ря (шторм) — собирательное понятие, обозначающее очень
сильный ветер (а также сильное волнение на море), возникающий по
различным причинам и в разных областях Земли. Скорость
приземного ветра (на стандартной высоте измерений 6—12 м над
земной поверхностью) при буре составляет, по разным источникам,
15—20 м/с и более (21-25 м/с или 75-88 км/ч). Бури бывают снежные,
песчаные и водные. Скорость ветра при буре гораздо меньше, чем при
урагане, однако буря чаще всего сопровождается переносом песка,
пыли или снега, что приводит к ущербу сельскому хозяйству, путям
сообщения и другим отраслям экономики.
2018/05/02(水) 00:18:35.47ID:WLxRJQ+g
Буря может наблюдаться:
при прохождении тропического или внетропического циклона;
при прохождении смерча (тромба, торнадо);
при шквале — кратковременном усилении ветра, связанном с местной или фронтальной грозой.
К бурям по шкале Бофорта относятся ветры скоростью более 20 м/с (9 баллов), а к ураганам — ветры со
скоростью более 32,6 м/с (12 баллов). Кроме того, по этой шкале различают:
сильную бурю со скоростью 24,5-28,4 м/с (10 баллов);
жестокую бурю со скоростью 28,5-32,6 м/с (11 баллов).
2018/05/02(水) 00:19:06.57ID:WLxRJQ+g
Термин «ураган» имеет также более узкое значение — тропический циклон. По месту образования тропические циклоны делят на:

Субтропический шторм
Тропический шторм
Ураган (Атлантический океан)
Тайфун (Тихий океан)
Если скорость ветра в тропическом циклоне превышает 60 км/ч, ему присваивается собственное имя.
2018/05/02(水) 00:20:01.14ID:WLxRJQ+g
По мнению американских учёных, для областей, расположенных в
северных широтах, снежной бурей можно считать зимний сильный
ветер, во время которого скорость ветра достигает и превышает 15 м/с (56 км/ч).
При этом температура воздуха опускается до −7 °C и ниже.
Территория распространения снежной бури может быть сколь угодно обширной.
2018/05/02(水) 00:32:41.39ID:Ahv/tBZs
数学は少なくとも話してる本人は内容を理解している
一方お前のクソみたいなロシア語はお前はその内容を理解していない
一つ聞くが、お前がコピペした文章の中には原意が支配するという意味のロシア語の単語が出てくるが、
その単語の性数態をお前は適切にこたえられるか?
答えられないだろうな。奇を衒って知りもしない外国語の文章をコピペしただけなんだから
2018/05/02(水) 00:46:25.46ID:bQ3xZw0Z
>>157
これは普通のナップザック問題と違って、荷物を積む積まないの選択肢のみならず
それに加えナップザック中に残されているスペースの形状・大きさ、
荷物を積むならば配置する向きと位置
そういったすべての条件の組み合わせに配慮して、最終価値最大の解を探索せねばならず、
単に荷物の重さと価値のみに着目して動的計画法で価値最大化プログラムをちょいちょいと書く
ような課題とは全然違った難しさがあるな…
2018/05/02(水) 00:47:08.25ID:WLxRJQ+g
なるほど。じゃ落語で埋めてくわ。
本人が理解してりゃスレ違いでもいいらしいからな。
2018/05/02(水) 00:49:53.30ID:Ahv/tBZs
>>173
数学が理解できなくてそんなに悔しかった??
自分がロシア語も理解できないのにコピペしたのがバレてそんなに悔しかった??
本当に惨めだね。あ、僕は落語なら浜野矩随が好きだからよろしくね、ど低能くん^^
2018/05/02(水) 00:50:17.20ID:WLxRJQ+g
こんな話がございます。

両国の回向院に猫塚トいうものがございます。
猫が死にますト、飼い主が回向料とともに、猫の亡骸を持ち込みまして。
寺の僧侶がお経を読んで、猫を葬ってくれるという。
これは、この塚に最初に入ったという猫の話でございます。

八丁堀の玉子屋新道に、魚屋を営む定吉ト申す者がございました。
もっとも、魚屋とは名ばかりで、その実は博奕打ちでございます。
毎日を遊んで暮らしている。
2018/05/02(水) 00:50:56.06ID:WLxRJQ+g
この日も、朝湯の帰りに馴染みの三河屋という居酒屋に立ち寄りまして。
風呂あがりの一杯とばかりに、呑気に引っ掛けておりますト。
ポカッ、ポカッと、頭の上から妙な音が聞こえてくる。

博奕打ちというのは、我々とはものの考え方が異なっているようで。

――板に何かを叩きつける音がする。
なるほど、やってやがるな――
2018/05/02(水) 00:51:47.73ID:WLxRJQ+g
ト、てっきり丁半博打の壺を伏せる音と勘違いいたしまして。

「おい、六さん」

店の者を呼びつけます。

「なんだい、水臭えじゃねえか。やってるならやってるで、教えてくれてもいいだろうに。俺も仲間に入れてくれ。取り次いでくんなよ」
「博奕ですか。滅相もない。うちではそういったことはさせません。二階は物置ですよ」
2018/05/02(水) 00:53:01.26ID:WLxRJQ+g
それでも、確かに音がするのは妙でございます。
店の者が二階へ上がっていって、やがて下りてまいりました。

「分かりました。あれは猫です」

こういった店は、商売柄、どうしても猫が寄ってくる。
今朝も早くに仕入れておいたイナダを、勝手に食ってしまったそうで。
あんまり腹が立つから、焼け火箸で目玉を刺してやろうかとも思ったが。
店の主人が、せめて橋の上から放り投げる程度にしてやれと言ったという。
2018/05/02(水) 00:54:13.04ID:WLxRJQ+g
「それで柱にふん縛っておいたんですがね。今、見に行ったら、なんとか逃げ出そうとして、立ち上がっては倒れてやがる。あれはその音ですよ」

定吉は柄にもなく、猫がちょっと不憫に思えまして。
死なせるくらいなら、自分が引き取って育てるからト。
金を渡して猫を貰い受けました。

差し毛の一本も見当たらない、正真正銘の黒猫です。
定吉は懐に入れるト、店を出て家に帰った。
2018/05/02(水) 00:54:44.10ID:WLxRJQ+g
家では女房のお滝が待っています。
定吉が懐から黒猫を取り出しますト、途端に渋い顔を浮かべまして。

「やだよ、そんなものを持って帰って。私は猫は嫌いなんだよ」

ト、そっぽを向いて風呂に行ってしまう。

定吉は、自分が命を救ってやった猫ですから。
恩を着せるわけではないが、やはり可愛い。
一人残った家の中で、猫を抱き上げて話しかける。
2018/05/02(水) 00:55:53.83ID:WLxRJQ+g
「そういや、名前を聞いてこなかったな。大抵の猫ならタマとかミケとか付けるんだが、お前はそんなガラじゃねえ。全身真っ黒で、熊みてえだもんな。そうだ。クマってのはどうだ」

するト、猫がにゃーごト鳴く。

「にゃーごだと。ヘヘ。鳴かなくていいから、恩返しのひとつでもしてみろよ。俺をちょっとは儲けさせてくれたら、拾った甲斐もあるってもんだ」

ト、猫に博奕の講釈をいたします。
2018/05/02(水) 00:57:44.85ID:WLxRJQ+g
「一つでやるのをチョボイチ、 二つ使うのを丁半、三つ使うのをきつねと言う。俺がやってるのは丁半だ。グニの半、二ゾロの丁ってな」

定吉は賽を湯のみに入れて、畳の上に伏せますト。

「どうだ。表から見たらどの目か分からないだろう。だから、銭を賭けて当てるんだ。猫は魔物というから、お前なら当てられるだろう。おい、なんとか言ってみろよ」

猫は相変わらず、にゃーごト鳴く。
2018/05/02(水) 00:58:41.40ID:WLxRJQ+g
「俺は、丁が出ると思うな。お前は何だ。にゃーごか。よし、俺が丁で、お前がにゃーご。勝負ッ」

ト、戯れながら湯呑みを開けますト、一二の半。

「おかしいな、半か。するってえと、お前のにゃーごは半か。ヘヘ、にゃご半か。それじゃあ今度は俺が半だ」

すると、今度は猫がにゃご、にゃごト、二回鳴く。
2018/05/02(水) 00:59:18.14ID:WLxRJQ+g
「なんだい、妙な鳴き方をしやがる。今度はにゃごにゃごの丁ってか」

ト、笑いながら湯呑みを開けるト、二ゾロの丁。

それから何度繰り返してみましても、猫がにゃーごと鳴くと半。
にゃごにゃごト、二回鳴くと丁が出ます。

「お前、本当に恩返ししてくれるつもりだな。こいつはいい」
2018/05/02(水) 01:00:01.79ID:WLxRJQ+g
それから定吉は、賭場へ行くたびにこの猫を懐に忍ばせていく。
にゃーごの半、にゃごにゃごの丁で、どんどん金が儲かりまして。
羽振りがよくなるト、兄い、親分と立てられるようになる。
猫を始終連れて歩くので、そのうちに猫定と呼ばれるようになった。
2018/05/02(水) 01:03:08.53ID:WLxRJQ+g
博徒の世界では、あだ名がついたら一人前ト申すそうでございますが。
一人前になるト、自然、悪評も目立つようになる。
そのうちに江戸にいられなくなり、ふた月ばかり旅に出ることにいたしまして。
定吉は、猫を女房に預けて家を出た。

これが惨劇の幕開けでございます。

――チョット、一息つきまして。
2018/05/02(水) 01:03:26.56ID:bQ3xZw0Z
数学厨よりひどいあらしだな
スレが機能しなくなっちゃった
2018/05/02(水) 01:04:21.64ID:WLxRJQ+g
どこまでお話しましたか。
そうそう、博奕打ちの定吉が、猫の鳴き声で賽の目を当て、兄い、親分ト立てられるようになるところまでで――。

亭主の定吉が家を空けますト。
女房のお滝は、子分の若い者を家に引き入れるようになりまして。
長屋の住人たちが眉をひそめるのも、まったく気にしておりません。
2018/05/02(水) 01:13:03.09ID:p96PUqzp
数学ができないやつは論理的思考もできないということを示す良い例だな
頼むからスレから未来永劫消えてくれ
2018/05/02(水) 01:17:36.33ID:bQ3xZw0Z
いてもいいけど荒らすな
お題を出し
解答プログラムを書くこと
2018/05/02(水) 01:21:54.54ID:Ahv/tBZs
あの〜続きが気になるから http://onboumaru.com/049-nekosada から無断転載した「猫定」を
最後まで張ってくださいませんか?? 無能ロシア語落語さん^^
2018/05/02(水) 01:22:07.91ID:WLxRJQ+g
自分が理解できれば何を書いてもいいというのは数学厨が示したルールだが。
文句を言われたらこう言って開き直ればいいそうだ。
「自分が理解できないからって荒らし呼ばわりは惨めすぎるね」
2018/05/02(水) 01:23:03.68ID:bQ3xZw0Z
勘弁してくれよ
それこそよそでやってくれ
2018/05/02(水) 01:23:13.12ID:WLxRJQ+g
>>191
了解。>>191の依頼に従い、続行する。
2018/05/02(水) 01:24:29.12ID:WLxRJQ+g
そのうちに、人の噂も七十五日トばかりに。
ほとぼりが覚めた頃を見計らって、定吉が江戸に帰ってくる。

帰ってくるト、猫を連れてまたぞろ博奕へ出掛けます。

その夜。
お滝は、間男の若い者を呼びつけ、相談をした。

定吉がいては、お互い落ち着いて逢瀬を楽しむこともままならない。
いっそ、ひと思いに殺してしまってほしい。
2018/05/02(水) 01:24:49.92ID:p96PUqzp
>>192
数学は少なくともスレのお題と関係があったがお前のクソみたいなコピペはスレと無関係のただの荒らしだろうが
どっちもウザイのは同じだが、一緒くたにすんなハゲ!
2018/05/02(水) 01:25:10.76ID:WLxRJQ+g
若い者は、親分の家の姉御に見込まれたことで、男が上がったつもりになり。
箒を斜に切って油をかけ、ジリジリと火で炙る。
これは竹槍を作っているのでございます。

そうして、鯵切り包丁を手ぬぐいで包みますト。
腰に差して、長屋を飛び出していきました。

定吉は、馴染みの賭場へやってきておりましたが。
その晩はどうしたことか、猫が一向に鳴きません。
2018/05/02(水) 01:26:10.04ID:WLxRJQ+g
体の具合が悪いのだろうか。
まあ、今まで稼がせてもらったのだから。

ト、この時にはすでに情が移っておりますから。
猫の具合を優先して、素直に帰ることにいたしました。

賭場を出るト、ポツポツと雨が降り出してくる。
定吉は猫を懐に大事にしまって、新橋の喜多川といううなぎ屋に駆け込んだ。

一杯やりながら、猫に鰻の切れ端をやるのが、この頃の楽しみでございます。
ところが、いつもはよく食う猫が、これまた今日に限って口をつけようといたしません。
2018/05/02(水) 01:28:05.76ID:WLxRJQ+g
続きを張れと言ったのは数学厨な。
2018/05/02(水) 01:29:36.61ID:p96PUqzp
責任転嫁すんなハゲ
お前のせいで直近のお題が迷子だっつーの
もう二度とこないでください
2018/05/02(水) 02:28:44.50ID:/DSye1oK
>>200
お前さんがやってる煽りも、ロシア語はってるいじけた小学生みたいな奴と同じレベルだよ。数学ができたとしても精神レベルは同程度。お前さんにどんな言い分があろうとも、周囲からはそう見える。
2018/05/02(水) 02:46:19.96ID:7KO0UxVX
重み付き3次元箱詰め問題みたいなもんをここのお題に出すバカ
各都市の区の具体的なグラフが必要な問題をそれぞれのグラフも与えずに出すバカ

自分で解いて楽しいかどうか考えろよ
2018/05/02(水) 02:57:52.71ID:MBc9Gfy6
出題時の注意>>4
2018/05/02(水) 02:59:10.33ID:bQ3xZw0Z
そら言えてる
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 -> ?
2018/05/02(水) 05:46:42.10ID:hUDFoTxj
お題:Hello, World!を10回出力してください。ただし、偶数文字を小文字、奇数文字を大文字にすること。さらに3の倍数の文字をランダムな英字にすること。
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!
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!
209デフォルトの名無しさん
垢版 |
2018/05/02(水) 10:26:22.57ID:PqZlWADT
>>206 Common Lisp
https://ideone.com/RrNm7L
210デフォルトの名無しさん
垢版 |
2018/05/02(水) 11:55:19.15
>>206
C言語
https://ideone.com/5UVPgG
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
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!
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
2018/05/02(水) 17:33:20.51ID:R3g8E+PO
有効な(注:主観による)お題一覧
>>11
>>40
>>77
>>80
>>87
>>102
2018/05/02(水) 17:33:54.32ID:R3g8E+PO
>>214

>>117
>>150
>>206
>>211
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
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
2018/05/02(水) 18:10:22.50ID:TAWRfgOr
>>206 octave
https://ideone.com/j9EsUn
2018/05/02(水) 18:11:53.98ID:ja0hTifx
あれ?バグってるなこれ
総当たりの方は取り消します
2018/05/02(水) 18:20:29.66ID:ja0hTifx
違った
山型に並べる方を取り消します、だった。
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
2018/05/02(水) 19:04:01.98ID:intU8xfF
>>206
Perl
https://paiza.io/projects/3hW53qnnJ69_qwvN_oWiTA
改行入れないで変換しちゃったが、指定がないからまあいいか。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況