プログラミングのお題スレです。
【出題と回答例】
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.5ch.net/test/read.cgi/tech/1549160513/
プログラミングのお題スレ Part14
レス数が1000を超えています。これ以上書き込みはできません。
2019/05/18(土) 17:33:29.45ID:BWmpW4IF
2019/05/18(土) 21:48:24.46ID:4Z6EQGT/
2get!
2019/05/19(日) 00:58:10.37ID:+tXYNnhs
#!/bin/sh
echo 1乙
echo 1乙
2019/05/19(日) 01:17:58.03ID:nN2qvMwg
2019/05/19(日) 08:48:39.78ID:b1S+2jBu
お題
1. URLエンコード
次の文字列をURLエンコード(パーセントエンコーディング)せよ。
但しURLエンコード専用ライブラリだけは使わない事。
‘日 本’
( 全角2文字の間に半角スペースが一つ入ってる.)
元の文字コードはUTF8とする。 この場合は7バイト。
パーセントエンコードとは、バイトの並びについて各バイトを「%XX」(XXは十六進法)という文字列への変換である。 バイト列への変換はライブラリを使っても良い。
正解(アルファベットは小文字も可)
%E6%97%A5%20%E6%9C%AC
2. URLデコード
1でURLエンコードされたものをURLデコードせよ。
URLデコード用ライブラリがあれば使う事。
正解 日 本
1. URLエンコード
次の文字列をURLエンコード(パーセントエンコーディング)せよ。
但しURLエンコード専用ライブラリだけは使わない事。
‘日 本’
( 全角2文字の間に半角スペースが一つ入ってる.)
元の文字コードはUTF8とする。 この場合は7バイト。
パーセントエンコードとは、バイトの並びについて各バイトを「%XX」(XXは十六進法)という文字列への変換である。 バイト列への変換はライブラリを使っても良い。
正解(アルファベットは小文字も可)
%E6%97%A5%20%E6%9C%AC
2. URLデコード
1でURLエンコードされたものをURLデコードせよ。
URLデコード用ライブラリがあれば使う事。
正解 日 本
2019/05/19(日) 08:56:45.08ID:b1S+2jBu
>>5 python
from urllib.parse import unquote #,quote
url = '日 本'
urle = ''.join([ '%{:x}'.format(b) for b in url.encode('UTF-8') ])
print(urle) # encode same #print(quote(url))
print(unquote(urle)) # decode
''' # 出力
%e6%97%a5%20%e6%9c%ac
日 本
'''
from urllib.parse import unquote #,quote
url = '日 本'
urle = ''.join([ '%{:x}'.format(b) for b in url.encode('UTF-8') ])
print(urle) # encode same #print(quote(url))
print(unquote(urle)) # decode
''' # 出力
%e6%97%a5%20%e6%9c%ac
日 本
'''
2019/05/19(日) 09:25:01.68ID:c0f8nIXT
何も考えないバカはすぐに飛びつくなぁ
これお題に見せかけた課題か宿題だろw
これお題に見せかけた課題か宿題だろw
2019/05/19(日) 10:51:39.18ID:m8K8ZuW2
9デフォルトの名無しさん
2019/05/19(日) 11:02:33.76ID:zmnHcBRa 各桁を足し合わせたら引数で与えられた数になるものを5個返す関数を作れ。
例:
sumnum 12
> [39,48,57,66,75] <- 3 + 9 = 12, 4 + 8 = 12, 5 + 7 = 12, 6 + 6 = 12, 7 + 5 = 12
例:
sumnum 12
> [39,48,57,66,75] <- 3 + 9 = 12, 4 + 8 = 12, 5 + 7 = 12, 6 + 6 = 12, 7 + 5 = 12
2019/05/19(日) 12:12:27.92ID:tgogs/mB
お題
(0,0)(0,999)(999,0)(999,999)のx,y 座標系の中の問題
次の20個の数値を先頭から2個ずつ取ってのx,y の位置に 10個のポイントがあるとする。
[136, 577, 110, 927, 472, 199, 157, 808, 388, 598, 94, 31, 388, 157, 325, 409, 787, 897, 850, 598]
(136,577) (110,927) 〜(850,598) 10ポイント
問題1 外側の正方形
全てのポイントが正方形の内側にあり、正方形の面積が一番小さくなる正方形の4点の座標を示せ。 但し正方形の座標は(999,999)の範囲内とする。
正方形は斜めもあり得る。 正方形の辺は必ず2点以上ポイントに重なっている。
問題2 内側の正方形
全てのポイントが正方形の外側にあり、正方形の面積が一番大きくなる4点の座標を示せ。
正方形は斜めもあり得る。 正方形の辺は必ず2点以上ポイントに重なっている。
問題を難しく感じる人は、斜めの正方形は考えないとしても良い。その旨回答に書いておいてください。
(0,0)(0,999)(999,0)(999,999)のx,y 座標系の中の問題
次の20個の数値を先頭から2個ずつ取ってのx,y の位置に 10個のポイントがあるとする。
[136, 577, 110, 927, 472, 199, 157, 808, 388, 598, 94, 31, 388, 157, 325, 409, 787, 897, 850, 598]
(136,577) (110,927) 〜(850,598) 10ポイント
問題1 外側の正方形
全てのポイントが正方形の内側にあり、正方形の面積が一番小さくなる正方形の4点の座標を示せ。 但し正方形の座標は(999,999)の範囲内とする。
正方形は斜めもあり得る。 正方形の辺は必ず2点以上ポイントに重なっている。
問題2 内側の正方形
全てのポイントが正方形の外側にあり、正方形の面積が一番大きくなる4点の座標を示せ。
正方形は斜めもあり得る。 正方形の辺は必ず2点以上ポイントに重なっている。
問題を難しく感じる人は、斜めの正方形は考えないとしても良い。その旨回答に書いておいてください。
2019/05/19(日) 12:21:01.79ID:sA5/dcdL
宿題スレ行けって
2019/05/19(日) 12:29:21.94ID:tgogs/mB
>>12 おいおい、金儲けにするんかい。 ま、金を払う人がいるなら良いが。 学生の宿題に需要があるかな?
しかしこんなところで宣伝すんな。
しかしこんなところで宣伝すんな。
2019/05/19(日) 12:30:23.34ID:GWUTnTrp
2019/05/19(日) 13:00:59.70ID:tgogs/mB
>>15 93 だけは正しいけど他は違うだろと思ったが、0を足しても結果は変わらないから詐欺に近いな。
しかしこう言う指摘は、プログラムには重要。
こう言う考え方をするなら、129 12342 なども該当するな。
あまりにも組み合わせが多すぎるから、条件をつけないとな。
問題の条件として各桁に0は含まないとしたり数字は2桁以内とするとか、答えは一番大きな数字を上から順に5つ示せとか。
しかしこう言う指摘は、プログラムには重要。
こう言う考え方をするなら、129 12342 なども該当するな。
あまりにも組み合わせが多すぎるから、条件をつけないとな。
問題の条件として各桁に0は含まないとしたり数字は2桁以内とするとか、答えは一番大きな数字を上から順に5つ示せとか。
2019/05/19(日) 13:16:39.44ID:tgogs/mB
出題するときには、答えが一意になる様にした方が良い。
回答する方も戸惑うし、正解が何かも判りづらくなる。
出来るだけ正解は少ない方が良い。 理想的には一つ。
回答する方も戸惑うし、正解が何かも判りづらくなる。
出来るだけ正解は少ない方が良い。 理想的には一つ。
19デフォルトの名無しさん
2019/05/19(日) 14:19:46.32ID:xtBtC84Z 0 -> 1
1 -> 11
2 -> 101
3 -> 1111
4 -> 10001
5 -> 110011
6 -> 1010101
7 -> 11111111
8 -> 100000001
9 -> 1100000011
10 -> 10100000101
11 -> 111100001111
12 -> 1000100010001
13 -> 11001100110011
14 -> 101010101010101
15 -> 1111111111111111
この0から15までを隙間なく並べる
隙間なく並べるとは例えばこの0から2までなら
0 -> 1
1 -> 11
2 -> 101
---1
11
--101
11111
このように1同士がぶつからずにそして0がなくなるように並べる
この場合の解答は0番を3つ右にずらして2番を右に二つずらしているので
(0,3)(1,0)(2,2)となる
1 -> 11
2 -> 101
3 -> 1111
4 -> 10001
5 -> 110011
6 -> 1010101
7 -> 11111111
8 -> 100000001
9 -> 1100000011
10 -> 10100000101
11 -> 111100001111
12 -> 1000100010001
13 -> 11001100110011
14 -> 101010101010101
15 -> 1111111111111111
この0から15までを隙間なく並べる
隙間なく並べるとは例えばこの0から2までなら
0 -> 1
1 -> 11
2 -> 101
---1
11
--101
11111
このように1同士がぶつからずにそして0がなくなるように並べる
この場合の解答は0番を3つ右にずらして2番を右に二つずらしているので
(0,3)(1,0)(2,2)となる
2019/05/19(日) 14:36:55.39ID:GWUTnTrp
詐欺は酷くないか
要件は満たしてるし、何より解が存在する全ての値に対して正しい解を出力するだろ
sumnum 1についても対応しようとしたらこれが綺麗な解法の1つであることは疑いようもない事実のはず
要件は満たしてるし、何より解が存在する全ての値に対して正しい解を出力するだろ
sumnum 1についても対応しようとしたらこれが綺麗な解法の1つであることは疑いようもない事実のはず
2019/05/19(日) 14:45:53.44ID:GWUTnTrp
>>20 と思ったが俺が間違ってた
相違なる数と言われてないから、sumnum 0に対しても[0,0,0,0,0]が解を満たすわな、すまんかった
相違なる数と言われてないから、sumnum 0に対しても[0,0,0,0,0]が解を満たすわな、すまんかった
2019/05/19(日) 14:55:35.26ID:Ep+P2jjw
2019/05/19(日) 15:06:26.05ID:dHqS2yoD
お題
ペアノの公理、及びペアノに依る加法の定義に従って 128 + 256 を計算せよ。
ペアノの公理、及びペアノに依る加法の定義に従って 128 + 256 を計算せよ。
>>23
>リンク先に書いてあるじゃん、金払えと
根拠のないデマを流さないでください
>>12 に記載のアンカーの一つ >>10
>>10 に記載のアンカー(リンクの一つ) https://mevius.5ch.net/test/read.cgi/tech/1434079972/56
https://mevius.5ch.net/test/read.cgi/tech/1434079972/56 に記載のリンクは https://ideone.com/Nxx41h でこれは ideone へのリンク
リンクをたどれるところのどこにも宣伝は記載していません
>>10 に記載のアンカーの一部 https://mevius.5ch.net/test/read.cgi/tech/1434079972/
のうち https://mevius.5ch.net/test/read.cgi/tech/1434079972/1 には、ビットコインの請求が発生する手順が定義されており
その定義を満たさないものについては、特に「※本フローに従わない回答掲示についてはビットコインの請求は発生しないものとします。」と注記していますね
したがって、そもそも「金払え」とは書いてませんし、あるいは「ビットコインを払え」とすら書いていませんね
>リンク先に書いてあるじゃん、金払えと
根拠のないデマを流さないでください
>>12 に記載のアンカーの一つ >>10
>>10 に記載のアンカー(リンクの一つ) https://mevius.5ch.net/test/read.cgi/tech/1434079972/56
https://mevius.5ch.net/test/read.cgi/tech/1434079972/56 に記載のリンクは https://ideone.com/Nxx41h でこれは ideone へのリンク
リンクをたどれるところのどこにも宣伝は記載していません
>>10 に記載のアンカーの一部 https://mevius.5ch.net/test/read.cgi/tech/1434079972/
のうち https://mevius.5ch.net/test/read.cgi/tech/1434079972/1 には、ビットコインの請求が発生する手順が定義されており
その定義を満たさないものについては、特に「※本フローに従わない回答掲示についてはビットコインの請求は発生しないものとします。」と注記していますね
したがって、そもそも「金払え」とは書いてませんし、あるいは「ビットコインを払え」とすら書いていませんね
2019/05/19(日) 15:58:31.52ID:+SzmmtV9
>>26
自分の書いたコードを一箇所に固めているだけですよ
これわりと便利で、3年前のコードなんかすっかり忘れてしまっているのを呼び出せるのです、ああ、あのとき N クイーンやったよね、とか
自分のローカルは一つのディレクトリに放り込んでいるだけだから grep でも検索困難…
自分の書いたコードを一箇所に固めているだけですよ
これわりと便利で、3年前のコードなんかすっかり忘れてしまっているのを呼び出せるのです、ああ、あのとき N クイーンやったよね、とか
自分のローカルは一つのディレクトリに放り込んでいるだけだから grep でも検索困難…
2019/05/19(日) 16:17:53.58ID:+SzmmtV9
練習問題のコードなんて使い捨てでいいじゃない。 俺も最初の頃は記録してたけど、もうやめた。
要は必要なときに必要なコードが書けなければそれまでなんだから、最初から勉強し直しても同じ。
昔のコードを見ても自分が理解していないんだから同じ。
沢山練習した方が良い。 基本から見直す事でより理解が深くなる。
要は必要なときに必要なコードが書けなければそれまでなんだから、最初から勉強し直しても同じ。
昔のコードを見ても自分が理解していないんだから同じ。
沢山練習した方が良い。 基本から見直す事でより理解が深くなる。
>>28
ええ、まったくの使い捨てでここ十年くらいやってますが、特定のスレに ideone/codepad のリンクを貼っていたのが、十年たってみると、当初は意図していなかった効用をもたらしてくれているんですね
ええ、まったくの使い捨てでここ十年くらいやってますが、特定のスレに ideone/codepad のリンクを貼っていたのが、十年たってみると、当初は意図していなかった効用をもたらしてくれているんですね
2019/05/19(日) 18:13:20.80ID:CS5X1kUk
>>23
自己愛性パーソナリティ障害の朝鮮人は相手にすんなよ
自己愛性パーソナリティ障害の朝鮮人は相手にすんなよ
2019/05/19(日) 18:40:48.30ID:ibH/HNzv
ネトウヨの相手もすんなよ
2019/05/19(日) 19:37:16.01ID:lXFYvnLZ
>>5 Squeak Smalltalk
'日 本' encodeForHTTP "=> '%E6%97%A5%20%E6%9C%AC' "
'%E6%97%A5%20%E6%9C%AC' unescapePercents "=> '日 本' "
'日 本' encodeForHTTP "=> '%E6%97%A5%20%E6%9C%AC' "
'%E6%97%A5%20%E6%9C%AC' unescapePercents "=> '日 本' "
2019/05/19(日) 20:09:21.36ID:b1S+2jBu
>>32 但しURLエンコード専用ライブラリだけは使わない事。
34デフォルトの名無しさん
2019/05/19(日) 20:17:22.66ID:w9oOtt0P35デフォルトの名無しさん
2019/05/19(日) 20:20:05.14ID:w9oOtt0P >>9
Haskell
import Data.Char
main = (print.sumnum) 12
sumnum 0 = [0]
sumnum n |n < 0 = error "Please n >= 0 number"
sumnum n = take 5 [x | x <- [0..], n == sum [read [a]| a <- show x]]
Haskell
import Data.Char
main = (print.sumnum) 12
sumnum 0 = [0]
sumnum n |n < 0 = error "Please n >= 0 number"
sumnum n = take 5 [x | x <- [0..], n == sum [read [a]| a <- show x]]
36デフォルトの名無しさん
2019/05/19(日) 20:25:29.07ID:iZGlVtrY >>36
いいことを教えてもらいました、Java って uft-16 だけかとおもっていました…
いいことを教えてもらいました、Java って uft-16 だけかとおもっていました…
2019/05/19(日) 21:30:05.06ID:GwAz9H1L
>>33
組み込みメソッドの使用禁止とかばかげてる
組み込みメソッドの使用禁止とかばかげてる
2019/05/19(日) 22:17:12.44ID:6fg2Xy1G
出禁 ID:8BTe2vpb
2019/05/19(日) 22:26:04.27ID:iE9NckHD
正直言ってここに出てくるお題よりAtCoderのお題の方がレベル高いよね
2019/05/19(日) 22:53:21.34ID:nN2qvMwg
11がマジで難しいんだけど、だれか取り組んでる?
44デフォルトの名無しさん
2019/05/20(月) 02:35:31.92ID:8xDKheXg2019/05/20(月) 06:02:09.58ID:poyp5Kqc
漏れなんて、書き捨てのRuby のファイルが、100もある
いつも、Windows10 で、WSL, Ubuntu16.04 から、grep してる
いつも、Windows10 で、WSL, Ubuntu16.04 から、grep してる
2019/05/20(月) 06:44:50.41ID:Wdi8QIqr
お、ツッコミ待ちか?
47デフォルトの名無しさん
2019/05/20(月) 07:53:09.19ID:oPixGX3C お題
Excelのカラム名でHELLOからWORLDまで表示する
Excelのカラム名でHELLOからWORLDまで表示する
2019/05/20(月) 09:16:55.34ID:m4uUuPD/
>>11 問題1の斜めにしない直行正方形までは出た。
xの範囲= (94, 31) (850, 598) 差 756
yの範囲= (94, 31) (110, 927) 差 896
1辺= 896
直行正方形 (94, 31) (990, 31) (94, 927) (990, 927)
次はこれを傾けていくんだな。これがムズイ。
xの範囲= (94, 31) (850, 598) 差 756
yの範囲= (94, 31) (110, 927) 差 896
1辺= 896
直行正方形 (94, 31) (990, 31) (94, 927) (990, 927)
次はこれを傾けていくんだな。これがムズイ。
2019/05/20(月) 13:11:43.52ID:YvmdLvGf
>>11 x,y座標は 0〜999までの整数 辺の長さは斜めになった時は整数とは限らない。
2019/05/20(月) 15:10:01.16ID:poyp5Kqc
プログラミングのお題スレ Part13
https://mevius.5ch.net/test/read.cgi/tech/1549160513/920-984
前スレのランク付けの問題は、O(n^2)とかなら簡単なんだが、
ハッシュなどを使って、計算回数を少なくするのに、苦戦してる
入力データ
-6 3 9 5 3 -7
出力・ランク
2 3 5 4 3 1
https://mevius.5ch.net/test/read.cgi/tech/1549160513/920-984
前スレのランク付けの問題は、O(n^2)とかなら簡単なんだが、
ハッシュなどを使って、計算回数を少なくするのに、苦戦してる
入力データ
-6 3 9 5 3 -7
出力・ランク
2 3 5 4 3 1
2019/05/20(月) 18:09:47.07ID:paVMwW+F
ハッシュを使ってんのがperlのじゃねえの
2019/05/20(月) 19:35:06.91ID:SPSZRaeY
ランク付けならmap使うと楽、O(NlogN)が想定解
53デフォルトの名無しさん
2019/05/20(月) 19:41:12.77ID:Nk0f6TzG 前スレの場合、みんなハッシュ(set)かソート使ってたじゃん
2019/05/20(月) 19:53:28.74ID:GKW/g8qb
>>53 コンパクトなコーディングはみんなほぼ同じだったね。
python smalltalk java
なんかプログラミング言語を見直しはじめたよ。
複雑にせずに根本を見つめるコーディングが出来る言語というのは素晴らしい。
python smalltalk java
なんかプログラミング言語を見直しはじめたよ。
複雑にせずに根本を見つめるコーディングが出来る言語というのは素晴らしい。
2019/05/20(月) 19:56:03.94ID:jO4bupva
え、JAVA?
2019/05/20(月) 19:58:48.02ID:HD7QqTZv
>>前スレ988 Perl5
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988
sub p {
$h = int $n/2;
for ($i=2; $i<=$h; $i++) {
$s[$i] = 1 unless exists $s[$i];
do {$s[$i*$_] = 0 for 2..int $h/$i} if $s[$i];
}
@p = grep{$s[$_]} 2..$h;
}
sub f {
my $i = shift;
my $h = int $i/2;
for $j (grep{$_ <= $h} @p) {
return ($j, f($i/$j)) if 0 == $i % $j;
}
$i
}
for $n (qw{28 2002 216653}) {
p;
my %f; $f{$_}++ for f($n);
@f = map{$_ . (1 < $f{$_} and "^$f{$_}")} sort{$a<=>$b} keys %f;
$" = '+';
print "$n => @f\n";
}
実行
~ $ perl 13_988.pl
28 => 2^2+7
2002 => 2+7+11+13
216653 => 216653
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988
sub p {
$h = int $n/2;
for ($i=2; $i<=$h; $i++) {
$s[$i] = 1 unless exists $s[$i];
do {$s[$i*$_] = 0 for 2..int $h/$i} if $s[$i];
}
@p = grep{$s[$_]} 2..$h;
}
sub f {
my $i = shift;
my $h = int $i/2;
for $j (grep{$_ <= $h} @p) {
return ($j, f($i/$j)) if 0 == $i % $j;
}
$i
}
for $n (qw{28 2002 216653}) {
p;
my %f; $f{$_}++ for f($n);
@f = map{$_ . (1 < $f{$_} and "^$f{$_}")} sort{$a<=>$b} keys %f;
$" = '+';
print "$n => @f\n";
}
実行
~ $ perl 13_988.pl
28 => 2^2+7
2002 => 2+7+11+13
216653 => 216653
57デフォルトの名無しさん
2019/05/20(月) 20:01:05.70ID:oKvxv21R setにぶちこんで重複削除、リストにしてソートしてマップの値の方にインデックス入れて最後にそのマップ使って出して完成
58デフォルトの名無しさん
2019/05/20(月) 20:02:09.53ID:oKvxv21R ゆっくり書いてたら間にたくさんの書き込みが入った。
俺のことは忘れてくれ。
俺のことは忘れてくれ。
2019/05/20(月) 20:08:45.44ID:HD7QqTZv
>>56 スマソ、ケアレスミスった、繋ぐ演算子は+ => *だた…orz
sub p {
$h = int $n/2;
for ($i=2; $i<=$h; $i++) {
$s[$i] = 1 unless exists $s[$i];
do {$s[$i*$_] = 0 for 2..int $h/$i} if $s[$i];
}
@p = grep{$s[$_]} 2..$h;
}
sub f {
my $i = shift;
my $h = int $i/2;
for $j (grep{$_ <= $h} @p) {
return ($j,f($i/$j)) if 0 == $i % $j;
}
$i
}
for $n (qw{28 2002 216653}) {
p;
my %f; $f{$_}++ for f($n);
@f = map{$_ . (1 < $f{$_} and "^$f{$_}")} sort{$a<=>$b} keys %f;
$" = '*';
print "$n => @f\n";
}
実行
~ $ perl 13_988.pl
28 => 2^2*7
2002 => 2*7*11*13
216653 => 216653
sub p {
$h = int $n/2;
for ($i=2; $i<=$h; $i++) {
$s[$i] = 1 unless exists $s[$i];
do {$s[$i*$_] = 0 for 2..int $h/$i} if $s[$i];
}
@p = grep{$s[$_]} 2..$h;
}
sub f {
my $i = shift;
my $h = int $i/2;
for $j (grep{$_ <= $h} @p) {
return ($j,f($i/$j)) if 0 == $i % $j;
}
$i
}
for $n (qw{28 2002 216653}) {
p;
my %f; $f{$_}++ for f($n);
@f = map{$_ . (1 < $f{$_} and "^$f{$_}")} sort{$a<=>$b} keys %f;
$" = '*';
print "$n => @f\n";
}
実行
~ $ perl 13_988.pl
28 => 2^2*7
2002 => 2*7*11*13
216653 => 216653
お題と回答
>>5 : 6 10 32 36 44
>>9 : 15 34 35
>>11 : 48
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 :
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 : 59 61
>>5 : 6 10 32 36 44
>>9 : 15 34 35
>>11 : 48
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 :
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 : 59 61
63デフォルトの名無しさん
2019/05/21(火) 23:09:46.41ID:Arl7g85c あなたが解けない C/C++/Java/C#/JavaScript の問題を有償で片付けるスレッドです
64デフォルトの名無しさん
2019/05/21(火) 23:10:51.22ID:Arl7g85c 有償で片付けるスレッドに貼り付けるのはよろしくないね
有償で片付けてほしくて出題してるわけじゃないでしょ
問題の窃盗だよ
有償で片付けてほしくて出題してるわけじゃないでしょ
問題の窃盗だよ
2019/05/21(火) 23:21:22.29ID:GF2ZpO+x
>>59
Perlは配列に対するexistsやdefinedは呼び出せるが振る舞いは不明確で「強く」非推奨となっているので
この場合では問題なくとも@pはリストではなく代わりにハッシュ%pを使って実装するべきだった
Perlは配列に対するexistsやdefinedは呼び出せるが振る舞いは不明確で「強く」非推奨となっているので
この場合では問題なくとも@pはリストではなく代わりにハッシュ%pを使って実装するべきだった
2019/05/21(火) 23:33:57.22ID:GF2ZpO+x
>>65
ハッシュにしたほうが良いのは@pじゃなくて@sの方だったわ
ハッシュにしたほうが良いのは@pじゃなくて@sの方だったわ
2019/05/21(火) 23:56:06.27ID:Jac4P34c
2019/05/22(水) 00:03:24.91ID:qz4w5gXY
2019/05/22(水) 00:04:37.78ID:I/cGK6IK
ネトウヨもコテハンもうぜえわ
2019/05/22(水) 01:11:55.55ID:BQdyZ7fR
>>62 折角まとめるんなら、回答の方も >> でリンクを貼って欲しいな。
2019/05/22(水) 01:20:05.57ID:34FbFmyD
2019/05/22(水) 01:29:50.95ID:BQdyZ7fR
>>11 は、多角形の中のドットの内外判定問題と言うのが確立されてるみたいね。
色んな方法があるみたいだが、簡単なのは、
Crossing Number Algorithm
らしい、ググってみると結構コンパクトなコード。
他も見てみたが、問題は境界線上にある点は多角形外と判定する事。
だから、そのままのロジックに手を入れないとした場合、使う側としてどう解決したら良いんだろう。
直行正方形を1ドットずつ大きくしてから回転させる?
それとも、多角形の中の多角形問題の方が適してるのかな?
この問題は結構勉強になる。 問題のイメージを掴むために、図形表示までやり始めたよ。 表示するとより楽しくなる。
色んな方法があるみたいだが、簡単なのは、
Crossing Number Algorithm
らしい、ググってみると結構コンパクトなコード。
他も見てみたが、問題は境界線上にある点は多角形外と判定する事。
だから、そのままのロジックに手を入れないとした場合、使う側としてどう解決したら良いんだろう。
直行正方形を1ドットずつ大きくしてから回転させる?
それとも、多角形の中の多角形問題の方が適してるのかな?
この問題は結構勉強になる。 問題のイメージを掴むために、図形表示までやり始めたよ。 表示するとより楽しくなる。
2019/05/22(水) 01:32:14.02ID:BQdyZ7fR
>>71 そこまで悪い人間では無さそうだけどな、おだてれば猿も木に登るタイプだとみた。
高い木に登ってもらおう。
高い木に登ってもらおう。
2019/05/22(水) 01:33:07.52ID:57KmKoFr
ググラないで考えようとしていたけど、
ヒントを目にしてしまった気分
いやべつにいいけどさ
ヒントを目にしてしまった気分
いやべつにいいけどさ
2019/05/22(水) 01:34:42.74ID:7yGywXQG
Q. クソ問題とは何ですか?
A. 問題の解釈を巡って議論や煽り合いが10レス以上続く、バカが投稿した不備のある問題のことです。
A. 問題の解釈を巡って議論や煽り合いが10レス以上続く、バカが投稿した不備のある問題のことです。
76デフォルトの名無しさん
2019/05/22(水) 04:38:05.31ID:qmHT8WH/ >>47 Ruby
("HELLO".."WORLD").each{|v| puts v}
("HELLO".."WORLD").each{|v| puts v}
2019/05/22(水) 07:31:41.79ID:O8fu6CiE
2019/05/22(水) 07:39:53.22ID:O8fu6CiE
>>72
https://dotup.org/uploda/dotup.org1853571.cpp.html
とりあえず図形表示。
一応内部の点は除去して、凸包を表示するような感じにしてる。
左クリックで頂点追加、右クリックで全削除、中クリックでリセット
操作しながらいろいろ検討してるけど、さっぱり思いつかない。
https://dotup.org/uploda/dotup.org1853571.cpp.html
とりあえず図形表示。
一応内部の点は除去して、凸包を表示するような感じにしてる。
左クリックで頂点追加、右クリックで全削除、中クリックでリセット
操作しながらいろいろ検討してるけど、さっぱり思いつかない。
79デフォルトの名無しさん
2019/05/22(水) 10:43:49.16ID:qmHT8WH/2019/05/22(水) 12:02:59.73ID:75T3S5z+
>>78
Windows じゃないと動かないようだけど見やすいようにideonに張ってみた。
https://ideone.com/gJVREH
凸包と言うんだね。
2次元の凸包を求めるアルゴリズムと応用について
https://matsu7874.hatenablog.com/entry/2018/12/17/025713
凸包(convex hull)とは,与えられた点をすべて包含する最小の凸多角形(凸多面体)のこと.
--------
凸包が求められても難しいね。 凸包内の点を削除して計算時間を削減できる効果はあるかもしれないけど。
Windows じゃないと動かないようだけど見やすいようにideonに張ってみた。
https://ideone.com/gJVREH
凸包と言うんだね。
2次元の凸包を求めるアルゴリズムと応用について
https://matsu7874.hatenablog.com/entry/2018/12/17/025713
凸包(convex hull)とは,与えられた点をすべて包含する最小の凸多角形(凸多面体)のこと.
--------
凸包が求められても難しいね。 凸包内の点を削除して計算時間を削減できる効果はあるかもしれないけど。
2019/05/22(水) 12:11:47.61ID:/472uU17
凸包が求められれば、頂点の並びも整列するので
形状を分割して余弦定理とかから導けないかなって思ったんだよね
形状を分割して余弦定理とかから導けないかなって思ったんだよね
82デフォルトの名無しさん
2019/05/22(水) 12:13:57.61ID:pwChZnOT >>47
画面の幅が足りなくて表示できません。
画面の幅が足りなくて表示できません。
2019/05/22(水) 12:34:28.61ID:/472uU17
ちなみに、最小を求めるだけならある角度から見た凸包の一次元への投影と、直交する角度からの一次元への投影を180度回しながら調べれば出せると思うけど、分割の粒度の問題で、本当に最小が取れる保証はないね
84デフォルトの名無しさん
2019/05/22(水) 13:45:45.60ID:pwChZnOT8550
2019/05/22(水) 19:14:59.08ID:1CosvZF6 >前スレの920
頭を使った。Ruby で、
str = "-6 3 9 5 3 -7"
original_ary = str.split.map!( &:to_i ) # 各要素は整数型
hash = original_ary.each_with_object( { } ) { | num, h | h[ num ] = true }
sorted_ary = hash.sort # キーでソートする
#=> [[-7, true], [-6, true], [3, true], [5, true], [9, true]]
# Enumerator#with_index(offset = 0)
sorted_hash = sorted_ary.each.with_index( 1 ) { | elem, idx | elem[ 1 ] = idx }.to_h
# p sorted_ary
#=> [[-7, 1], [-6, 2], [3, 3], [5, 4], [9, 5]]
# p sorted_hash
#=> {-7=>1, -6=>2, 3=>3, 5=>4, 9=>5}
results = original_ary.map{ | num | sorted_hash[ num ] }
puts results.join( " " ) #=> 2 3 5 4 3 1
頭を使った。Ruby で、
str = "-6 3 9 5 3 -7"
original_ary = str.split.map!( &:to_i ) # 各要素は整数型
hash = original_ary.each_with_object( { } ) { | num, h | h[ num ] = true }
sorted_ary = hash.sort # キーでソートする
#=> [[-7, true], [-6, true], [3, true], [5, true], [9, true]]
# Enumerator#with_index(offset = 0)
sorted_hash = sorted_ary.each.with_index( 1 ) { | elem, idx | elem[ 1 ] = idx }.to_h
# p sorted_ary
#=> [[-7, 1], [-6, 2], [3, 3], [5, 4], [9, 5]]
# p sorted_hash
#=> {-7=>1, -6=>2, 3=>3, 5=>4, 9=>5}
results = original_ary.map{ | num | sorted_hash[ num ] }
puts results.join( " " ) #=> 2 3 5 4 3 1
>>70-71
アンカーが多すぎると投稿できないのです、ただそれだけです
アンカーが多すぎると投稿できないのです、ただそれだけです
8850
2019/05/22(水) 19:26:33.00ID:1CosvZF6 >2 3 5 4 3 1
これが、
2 3 6 5 3 1
みたいに、4 が無くなる・飛ばされるランキングだと、もっとややこしい!w
これが、
2 3 6 5 3 1
みたいに、4 が無くなる・飛ばされるランキングだと、もっとややこしい!w
89デフォルトの名無しさん
2019/05/23(木) 09:23:03.57ID:mvOL8yN3 前スレの920 Ruby
def f(a)
b={}
a .dup.sort.each{|v|b[v]=b.size+1 if not b.key v}
a.map{|v|b[v]}
end
p f([-6,3,9,5,3,-7])
[2, 3, 5, 4, 3, 1]
def f(a)
b={}
a .dup.sort.each{|v|b[v]=b.size+1 if not b.key v}
a.map{|v|b[v]}
end
p f([-6,3,9,5,3,-7])
[2, 3, 5, 4, 3, 1]
90デフォルトの名無しさん
2019/05/23(木) 12:32:00.03ID:vYeVJ6FZ2019/05/23(木) 13:50:07.86ID:qjdiTxTD
苗字で漢字の「口」を「くち」ではなく「ぐち」と読むのは
井口、矢口、田口の3つだけ
これマメな
井口、矢口、田口の3つだけ
これマメな
2019/05/23(木) 15:16:07.91ID:j56nuYko
2019/05/23(木) 16:02:19.12ID:4YO7mLFH
ただの荒らし 、蒸し蒸し by 山口
2019/05/23(木) 17:19:50.40ID:TKS1qOdO
96デフォルトの名無しさん
2019/05/23(木) 18:37:52.11ID:TjazBdz3 >>92
谷口
関口
合口・相口・藍口・青口・赤口・秋口・明口… https://name.sijisuru.com/Fname/search?option=1&moji=%E5%8F%A3&pages=0&kanjilen=0&kanalen=0&romalen=0
谷口
関口
合口・相口・藍口・青口・赤口・秋口・明口… https://name.sijisuru.com/Fname/search?option=1&moji=%E5%8F%A3&pages=0&kanjilen=0&kanalen=0&romalen=0
2019/05/23(木) 19:39:17.51ID:4YO7mLFH
99デフォルトの名無しさん
2019/05/23(木) 21:02:26.03ID:W0nkxFNY aを要素の型がIntである長さNの配列、k、cを型がIntである変数とする。
{P}a[a[k]]=c;{a[a[k]]!=c}
Hoare tripleが成立するためのなるべく弱いPを示せ
{P}a[a[k]]=c;{a[a[k]]!=c}
Hoare tripleが成立するためのなるべく弱いPを示せ
101デフォルトの名無しさん
2019/05/23(木) 21:17:28.82ID:W0nkxFNY102デフォルトの名無しさん
2019/05/23(木) 21:38:26.52ID:iqEot/XY sumnum、引数に10000とか与えたら答え返ってこなさそう
引数に1億とかは文字列長が千万とかになるから無理でも仕方ないけど、1万位は対応したいね
引数に1億とかは文字列長が千万とかになるから無理でも仕方ないけど、1万位は対応したいね
103デフォルトの名無しさん
2019/05/23(木) 23:35:27.08ID:+TqLtPkO >>102
下位桁に9が並ぶだけじゃね?
下位桁に9が並ぶだけじゃね?
104デフォルトの名無しさん
2019/05/23(木) 23:45:44.19ID:iqEot/XY105デフォルトの名無しさん
2019/05/24(金) 00:19:46.43ID:25j6Q5My QZは相変わらず頭が悪い癖にプライドだけは高いな
106デフォルトの名無しさん
2019/05/24(金) 00:38:02.83ID:3viueN7b >>92は「必ずレスがもらえるレス」として有名な文らしいな
案の定わんさかレスの付いてること
案の定わんさかレスの付いてること
107デフォルトの名無しさん
2019/05/24(金) 01:07:12.76ID:/EuQv4hQ >>99 何語?
108デフォルトの名無しさん
2019/05/24(金) 01:41:24.00ID:/EuQv4hQ109デフォルトの名無しさん
2019/05/24(金) 02:55:43.78ID:/EuQv4hQ >>108 この凸包図を眺めてると、正解の正方形は 左辺の一番長い線を1辺とした正方形になりそうだが、それをどうやって求めるのか。
How to find the minimum-area-rectangle (MAR) fitted on the given points?
https://gis.stackexchange.com/questions/22895/finding-minimum-area-rectangle-for-given-points
最初に書いた人は、凸包を求めて重心を中心として1度ずつ回転させるやり方を考えたらしいが、下の方で良い解法のコメントが付いてた。
https://i.stack.imgur.com/ExZl3.png
少しずつ回転させるのではなくて、長方形の1辺は必ず凸包の辺のどれかと重なってるはずだから、凸包の辺の角度だけをとって試せば良いとのこと。
これなら重心を求める必要もないし、時間はかからない。
長方形が求まったら、座標系の中に入る正方形にすれば良いがはみ出してたら、参考解かな。
このアルゴリズムは、
The algorithm you are looking for is known in polygon generalisation as "smallest surrounding rectangle".
凸包最小長方形の解法とでも言えば良いのかな。
How to find the minimum-area-rectangle (MAR) fitted on the given points?
https://gis.stackexchange.com/questions/22895/finding-minimum-area-rectangle-for-given-points
最初に書いた人は、凸包を求めて重心を中心として1度ずつ回転させるやり方を考えたらしいが、下の方で良い解法のコメントが付いてた。
https://i.stack.imgur.com/ExZl3.png
少しずつ回転させるのではなくて、長方形の1辺は必ず凸包の辺のどれかと重なってるはずだから、凸包の辺の角度だけをとって試せば良いとのこと。
これなら重心を求める必要もないし、時間はかからない。
長方形が求まったら、座標系の中に入る正方形にすれば良いがはみ出してたら、参考解かな。
このアルゴリズムは、
The algorithm you are looking for is known in polygon generalisation as "smallest surrounding rectangle".
凸包最小長方形の解法とでも言えば良いのかな。
110デフォルトの名無しさん
2019/05/24(金) 06:39:15.19ID:UW+Tk6Dp >>109
正方形を求める場合で凸包がひし形の場合、その方法はうまくいかないきがす?
正方形を求める場合で凸包がひし形の場合、その方法はうまくいかないきがす?
111デフォルトの名無しさん
2019/05/24(金) 09:32:40.58ID:0g5oPW7D 今回のアルゴリズムは、最小の正方形を求める方法だけじゃなくて、グラフの境界との交差判定もあるから
最小の求め方だけではなく、2番め以降についても正しく判定できないといけない上に、回答が一つに定まらない可能性もあるんだよね
最小の求め方だけではなく、2番め以降についても正しく判定できないといけない上に、回答が一つに定まらない可能性もあるんだよね
112デフォルトの名無しさん
2019/05/24(金) 09:46:10.43ID:SalRbGaI 与えられた点を全て含む凸包全体からなる集合の濃度は明らかに連続体濃度なんだから2番目なんて存在しないぞ
113デフォルトの名無しさん
2019/05/24(金) 10:02:31.57ID:SalRbGaI あ、凸包じゃなくて凸多角形な
114デフォルトの名無しさん
2019/05/24(金) 10:35:59.86ID:0g5oPW7D115デフォルトの名無しさん
2019/05/24(金) 11:52:18.57ID:MR3FxfYE116デフォルトの名無しさん
2019/05/24(金) 12:12:24.29ID:MR3FxfYE >>110 どんな凸包体でも求まるよ。 1辺の長さが凸包体の辺の長さと一致させるわけじゃないよ。
全ての頂点を含む直方体を作る。 この求め方も工夫が必要そう。
1辺を伸ばした直線上に全ての頂点から垂線を引いて、一番外の距離を直方体の1辺とするんだろうな。
同じように他辺も求める。
全ての頂点を含む直方体を作る。 この求め方も工夫が必要そう。
1辺を伸ばした直線上に全ての頂点から垂線を引いて、一番外の距離を直方体の1辺とするんだろうな。
同じように他辺も求める。
117デフォルトの名無しさん
2019/05/24(金) 12:51:12.25ID:Nda2hmui >>116
雑な書き殴りですまん
https://i.imgur.com/v8rWTSf.png
さらにややこしいのは、凸包の頂点が正方形の辺上に位置して、
頂点に存在しないことのほうが多いのも難くする要因の一つ
雑な書き殴りですまん
https://i.imgur.com/v8rWTSf.png
さらにややこしいのは、凸包の頂点が正方形の辺上に位置して、
頂点に存在しないことのほうが多いのも難くする要因の一つ
118デフォルトの名無しさん
2019/05/24(金) 13:09:58.32ID:MR3FxfYE >>117 あ、そうか。
119デフォルトの名無しさん
2019/05/24(金) 18:00:01.45ID:ZpEEE6+U >>11 色々見たけど、画像認識の境界を探す為にある程度人気のある話題みたいだが、完全を求めるのではなく、だいたいで良いからスピードの速いのが良いとしてるみたいだね。 境界自体があやふやなものだし。
厳密にやるとしても、長方形と正方形ではかなり条件が違う。
全ての点が正方形に入るのなら、一つの候補は凸包の対角上の点が一番離れているところを正方形の対角とした正方形が一つの候補ではないだろうか。
直交正方形が最大だからそこまでを調べれば良いけど、それだけをしらみつぶしに調べてどれだけ時間がかかるかだな。
それをはみ出る点がある場合にどうゴニョゴニョするかだけど、条件が絞れればスピードは速くなる。
一般的にはポイント数は膨大な数だから、条件を絞り込む方法が重要になりそう。
しかし、こんな例題はどこにでもありそうで殆どサンプルがないのは時間がかかりすぎて簡単に試せないのかな、今回はポイント数が少ないからそれほどではないとは思うけど。
厳密にやるとしても、長方形と正方形ではかなり条件が違う。
全ての点が正方形に入るのなら、一つの候補は凸包の対角上の点が一番離れているところを正方形の対角とした正方形が一つの候補ではないだろうか。
直交正方形が最大だからそこまでを調べれば良いけど、それだけをしらみつぶしに調べてどれだけ時間がかかるかだな。
それをはみ出る点がある場合にどうゴニョゴニョするかだけど、条件が絞れればスピードは速くなる。
一般的にはポイント数は膨大な数だから、条件を絞り込む方法が重要になりそう。
しかし、こんな例題はどこにでもありそうで殆どサンプルがないのは時間がかかりすぎて簡単に試せないのかな、今回はポイント数が少ないからそれほどではないとは思うけど。
120デフォルトの名無しさん
2019/05/24(金) 18:05:08.54ID:ZpEEE6+U >>119 文章が変な順になっててごめん。
全ての点が正方形に入るのなら、一つの候補は凸包の対角上の点が一番離れているところを正方形の対角とした正方形が一つの候補ではないだろうか。
それをはみ出る点がある場合にどうゴニョゴニョするかだけど、条件が絞れればスピードは速くなる。
直交正方形が最大だからそこまでを調べれば良いけど、それだけをしらみつぶしに調べてどれだけ時間がかかるかだな。
全ての点が正方形に入るのなら、一つの候補は凸包の対角上の点が一番離れているところを正方形の対角とした正方形が一つの候補ではないだろうか。
それをはみ出る点がある場合にどうゴニョゴニョするかだけど、条件が絞れればスピードは速くなる。
直交正方形が最大だからそこまでを調べれば良いけど、それだけをしらみつぶしに調べてどれだけ時間がかかるかだな。
121デフォルトの名無しさん
2019/05/24(金) 18:27:30.58ID:ukAKIdqH 計算両を優先するなら、座標軸を基準にとって大雑把に取るべきじゃないのかな
これなら、ゲームのコリジョン検出で使われる方法そのままだし
これなら、ゲームのコリジョン検出で使われる方法そのままだし
122デフォルトの名無しさん
2019/05/24(金) 18:52:18.42ID:U6fsa1pB 点の数は関係なくね?
任意の3点を選んでその内部にある点は無いものとして考えても同じなんだから
任意の3点を選んでその内部にある点は無いものとして考えても同じなんだから
123デフォルトの名無しさん
2019/05/24(金) 19:02:15.89ID:U6fsa1pB いや、関係あるか
頂点のめちゃくちゃ多い凸多角形になったら計算量明らかに増えるもんな
頂点のめちゃくちゃ多い凸多角形になったら計算量明らかに増えるもんな
124デフォルトの名無しさん
2019/05/25(土) 18:51:08.08ID:CqCnLPQm >>11 なんかかなりの難問に思えてきたな。 解法への足がかりが見えない。 凸包までは比較的簡単にたどり着いたけどそれからが闇の中。
凸包の重心が何か使えるだろうか?
最小包含円 という言葉もあるようだが、少なくとも 正方形の辺はこの円の直径以下。
凸包の重心が何か使えるだろうか?
最小包含円 という言葉もあるようだが、少なくとも 正方形の辺はこの円の直径以下。
125デフォルトの名無しさん
2019/05/25(土) 19:01:54.73ID:CqCnLPQm >>124 取り敢えずこの問題を 『凸包正方形 』
とでも呼びますか。
とでも呼びますか。
126デフォルトの名無しさん
2019/05/25(土) 20:41:54.94ID:jq9htnT/ 三角形に分解してみる?
127デフォルトの名無しさん
2019/05/25(土) 21:12:11.52ID:9LrJCzXS128デフォルトの名無しさん
2019/05/25(土) 22:13:07.00ID:u9k+LAdR >>11
ポイントが(136,577), (110,927)の2つだけならどうなる?
ポイントが(136,577), (110,927)の2つだけならどうなる?
129デフォルトの名無しさん
2019/05/25(土) 22:15:27.93ID:9LrJCzXS >>128
それ対角線の正方形しかないやろ
それ対角線の正方形しかないやろ
130デフォルトの名無しさん
2019/05/26(日) 01:40:13.82ID:y3Cc4Dz0 以下はオレなりに考えた仮説
1)2点で正方形の内側に接するのは何らかの平べったい形、対角にて頂点が接するので45°
2)3点で接するのは、細長い三角形あるいはそれに準じた形、角度の計算は…?不明
または凸包の一辺が正方形の辺に接する形
3)4点で接するのは、細長い三角形あるいはそれに準じた形、角度の計算は…?不明
または凸包の一辺が正方形の辺に接する形
4)5点以上で接する場合は、凸包の一辺が正方形の辺に接する
「対角にて頂点が接する形の角度は45°」
「凸包の一辺が正方形の辺に接する形は凸包の辺の角度」
これらは角度が分かるので回転変化・逆変換を使って
外側の最小の斜め正方形の候補を探索することは可能だが、
角度が良く分からない形の解法が、まだ見出せていない
1)2点で正方形の内側に接するのは何らかの平べったい形、対角にて頂点が接するので45°
2)3点で接するのは、細長い三角形あるいはそれに準じた形、角度の計算は…?不明
または凸包の一辺が正方形の辺に接する形
3)4点で接するのは、細長い三角形あるいはそれに準じた形、角度の計算は…?不明
または凸包の一辺が正方形の辺に接する形
4)5点以上で接する場合は、凸包の一辺が正方形の辺に接する
「対角にて頂点が接する形の角度は45°」
「凸包の一辺が正方形の辺に接する形は凸包の辺の角度」
これらは角度が分かるので回転変化・逆変換を使って
外側の最小の斜め正方形の候補を探索することは可能だが、
角度が良く分からない形の解法が、まだ見出せていない
131デフォルトの名無しさん
2019/05/26(日) 01:44:08.13ID:y3Cc4Dz0 凸包の一辺が正方形の辺に接するおよび二点が対角に接する場合に限った解法
なら難しくないんだがな…
なら難しくないんだがな…
132デフォルトの名無しさん
2019/05/26(日) 01:59:58.39ID:tjjSxTb8 >>129
それは正方形が(0,0)-(999,999)からはみでてまうな
それは正方形が(0,0)-(999,999)からはみでてまうな
133130
2019/05/26(日) 17:27:59.46ID:XOxN6P/y >>11 外側の正方形 Perl5、但し>>130>>131の「凸包の一辺が正方形の辺に接する」または「細い菱形のような形が
正方形の対角2点で接する」場合について求てみた。凸包を求める処理は略し、二点間の辺を総当りで計算している。
use List::Util qw{min max pairkeys pairvalues};
@s=qw{136 577 110 927 472 199 157 808 388 598 94 31 388 157 325 409 787 897 850 598};
@X = pairkeys @s; @Y = pairvalues @s;
sub sp {$_[0]*$_[2] + $_[1]*$_[3]}
sub rt {
@e = (cos $th, -sin $th); @f = (sin $th, cos $th);
my @x = map{sp @e, $X[$_], $Y[$_]} 0..$#X;
my @y = map{sp @f, $X[$_], $Y[$_]} 0..$#Y;
@x = (min(@x), max(@x)); @y = (min(@y), max(@y));
$h = (max $x[1] - $x[0], $y[1] - $y[0]) / 2;
$cx = ($x[1] + $x[0]) / 2; $cy = ($y[1] + $y[0]) / 2;
@x = ($cx - $h, $cx + $h); @y = ($cy - $h, $cy + $h);
($e[1], $f[0]) = (-$e[1], -$f[0]);
@x = map{sp @e, $x[$_], $y[$_]} 0..1;
@y = map{sp @f, $x[$_], $y[$_]} 0..1;
@x = (min(@x), max(@x)); @y = (min(@y), max(@y));
(\@x, \@y, 2*$h) }
for $i (0..@X-2) { for $j ($i+1..$#X) {
($dx, $dy) = ($X[$j] - $X[$i], $Y[$j] - $Y[$i]);
($dx, $dy) = (-$dx, -$dy) if $dx < 0;
$l = sqrt($dx*$dx + $dy*$dy);
$th = $dx > abs($dy) ? -atan2($dy, $dx) : atan2($dx, $dy);
($X, $Y, $w) = &rt;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,l,$l,th,$th,X,$X,Y,$Y,w,$w};
$th += 3.14159265358979/4; ($X, $Y, $w) = &rt;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,l,$l,th,$th,X,$X,Y,$Y,w,$w};
} }
@t = sort{$a->{w}<=>$b->{w}} grep{0<=$_->{X}[0]and$_->{X}[1]<=999 and 0<=$_->{Y}[0]and$_->{Y}[1]<=999} @t;
do {@x = @{$t[$_]->{X}}; @y = @{$t[$_]->{Y}};
printf"%d: (%7.3f, %7.3f)-(%7.3f, %7.3f): w=%3.3f\n",$_+1,$x[0],$y[0],$x[1],$y[1],$t[$_]->{w}} for 0..5;
正方形の対角2点で接する」場合について求てみた。凸包を求める処理は略し、二点間の辺を総当りで計算している。
use List::Util qw{min max pairkeys pairvalues};
@s=qw{136 577 110 927 472 199 157 808 388 598 94 31 388 157 325 409 787 897 850 598};
@X = pairkeys @s; @Y = pairvalues @s;
sub sp {$_[0]*$_[2] + $_[1]*$_[3]}
sub rt {
@e = (cos $th, -sin $th); @f = (sin $th, cos $th);
my @x = map{sp @e, $X[$_], $Y[$_]} 0..$#X;
my @y = map{sp @f, $X[$_], $Y[$_]} 0..$#Y;
@x = (min(@x), max(@x)); @y = (min(@y), max(@y));
$h = (max $x[1] - $x[0], $y[1] - $y[0]) / 2;
$cx = ($x[1] + $x[0]) / 2; $cy = ($y[1] + $y[0]) / 2;
@x = ($cx - $h, $cx + $h); @y = ($cy - $h, $cy + $h);
($e[1], $f[0]) = (-$e[1], -$f[0]);
@x = map{sp @e, $x[$_], $y[$_]} 0..1;
@y = map{sp @f, $x[$_], $y[$_]} 0..1;
@x = (min(@x), max(@x)); @y = (min(@y), max(@y));
(\@x, \@y, 2*$h) }
for $i (0..@X-2) { for $j ($i+1..$#X) {
($dx, $dy) = ($X[$j] - $X[$i], $Y[$j] - $Y[$i]);
($dx, $dy) = (-$dx, -$dy) if $dx < 0;
$l = sqrt($dx*$dx + $dy*$dy);
$th = $dx > abs($dy) ? -atan2($dy, $dx) : atan2($dx, $dy);
($X, $Y, $w) = &rt;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,l,$l,th,$th,X,$X,Y,$Y,w,$w};
$th += 3.14159265358979/4; ($X, $Y, $w) = &rt;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,l,$l,th,$th,X,$X,Y,$Y,w,$w};
} }
@t = sort{$a->{w}<=>$b->{w}} grep{0<=$_->{X}[0]and$_->{X}[1]<=999 and 0<=$_->{Y}[0]and$_->{Y}[1]<=999} @t;
do {@x = @{$t[$_]->{X}}; @y = @{$t[$_]->{Y}};
printf"%d: (%7.3f, %7.3f)-(%7.3f, %7.3f): w=%3.3f\n",$_+1,$x[0],$y[0],$x[1],$y[1],$t[$_]->{w}} for 0..5;
134デフォルトの名無しさん
2019/05/26(日) 17:29:47.07ID:XOxN6P/y >>133 の実行例
~ $ perl 14_11.pl
1: ( 48.607, 27.043)-(863.062, 983.177): w=891.576
2: ( 45.920, 20.484)-(869.713, 849.356): w=892.353
3: ( 32.627, 29.170)-(901.066, 949.457): w=895.142
4: ( 24.000, 31.000)-(920.000, 927.000): w=896.000
5: ( 24.000, 31.000)-(920.000, 927.000): w=896.000
6: ( 14.845, 32.823)-(931.567, 907.397): w=896.130
検算してないので、もしバグっていたらゴメンチャイ、(ゝω・) テヘペロ
~ $ perl 14_11.pl
1: ( 48.607, 27.043)-(863.062, 983.177): w=891.576
2: ( 45.920, 20.484)-(869.713, 849.356): w=892.353
3: ( 32.627, 29.170)-(901.066, 949.457): w=895.142
4: ( 24.000, 31.000)-(920.000, 927.000): w=896.000
5: ( 24.000, 31.000)-(920.000, 927.000): w=896.000
6: ( 14.845, 32.823)-(931.567, 907.397): w=896.130
検算してないので、もしバグっていたらゴメンチャイ、(ゝω・) テヘペロ
135デフォルトの名無しさん
2019/05/26(日) 17:38:51.62ID:XOxN6P/y >>133 スマソ、「正方形の4点の座標を示せ」と書かれていたので、出力処理を少し修正
use List::Util qw{min max pairkeys pairvalues};
@s=qw{136 577 110 927 472 199 157 808 388 598 94 31 388 157 325 409 787 897 850 598};
@X = pairkeys @s; @Y = pairvalues @s;
sub sp {$_[0]*$_[2] + $_[1]*$_[3]}
sub rt {
@e = (cos $th, -sin $th); @f = (sin $th, cos $th);
my @x = map{sp @e, $X[$_], $Y[$_]} 0..$#X;
my @y = map{sp @f, $X[$_], $Y[$_]} 0..$#Y;
@x = (min(@x), max(@x)); @y = (min(@y), max(@y));
$h = (max $x[1] - $x[0], $y[1] - $y[0]) / 2;
$cx = ($x[1] + $x[0]) / 2; $cy = ($y[1] + $y[0]) / 2;
@x = ($cx - $h, $cx + $h); @y = ($cy - $h, $cy + $h);
($e[1], $f[0]) = (-$e[1], -$f[0]);
@x = map{sp @e, $x[$_], $y[$_]} 0..1;
@y = map{sp @f, $x[$_], $y[$_]} 0..1;
@x = (min(@x), max(@x)); @y = (min(@y), max(@y));
(\@x, \@y, 2*$h) }
for $i (0..@X-2) { for $j ($i+1..$#X) {
($dx, $dy) = ($X[$j] - $X[$i], $Y[$j] - $Y[$i]);
($dx, $dy) = (-$dx, -$dy) if $dx < 0;
$l = sqrt($dx*$dx + $dy*$dy);
$th = $dx > abs($dy) ? -atan2($dy, $dx) : atan2($dx, $dy);
($X, $Y, $w) = &rt;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,l,$l,th,$th,X,$X,Y,$Y,w,$w};
$th += 3.14159265358979/4; ($X, $Y, $w) = &rt;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,l,$l,th,$th,X,$X,Y,$Y,w,$w};
} }
@t = sort{$a->{w}<=>$b->{w}} grep{0<=$_->{X}[0]and$_->{X}[1]<=999 and 0<=$_->{Y}[0]and$_->{Y}[1]<=999} @t;
do {@x = @{$t[$_]->{X}}; @y = @{$t[$_]->{Y}};
printf"%d: (%6.3f, %6.3f), (%7.3f, %6.3f), (%6.3f, %7.3f), (%7.3f, %7.3f): w=%3.3f\n",
$_+1,$x[0],$y[0],$x[1],$y[0],$x[0],$y[1],$x[1],$y[1],$t[$_]->{w}} for 0..5;
use List::Util qw{min max pairkeys pairvalues};
@s=qw{136 577 110 927 472 199 157 808 388 598 94 31 388 157 325 409 787 897 850 598};
@X = pairkeys @s; @Y = pairvalues @s;
sub sp {$_[0]*$_[2] + $_[1]*$_[3]}
sub rt {
@e = (cos $th, -sin $th); @f = (sin $th, cos $th);
my @x = map{sp @e, $X[$_], $Y[$_]} 0..$#X;
my @y = map{sp @f, $X[$_], $Y[$_]} 0..$#Y;
@x = (min(@x), max(@x)); @y = (min(@y), max(@y));
$h = (max $x[1] - $x[0], $y[1] - $y[0]) / 2;
$cx = ($x[1] + $x[0]) / 2; $cy = ($y[1] + $y[0]) / 2;
@x = ($cx - $h, $cx + $h); @y = ($cy - $h, $cy + $h);
($e[1], $f[0]) = (-$e[1], -$f[0]);
@x = map{sp @e, $x[$_], $y[$_]} 0..1;
@y = map{sp @f, $x[$_], $y[$_]} 0..1;
@x = (min(@x), max(@x)); @y = (min(@y), max(@y));
(\@x, \@y, 2*$h) }
for $i (0..@X-2) { for $j ($i+1..$#X) {
($dx, $dy) = ($X[$j] - $X[$i], $Y[$j] - $Y[$i]);
($dx, $dy) = (-$dx, -$dy) if $dx < 0;
$l = sqrt($dx*$dx + $dy*$dy);
$th = $dx > abs($dy) ? -atan2($dy, $dx) : atan2($dx, $dy);
($X, $Y, $w) = &rt;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,l,$l,th,$th,X,$X,Y,$Y,w,$w};
$th += 3.14159265358979/4; ($X, $Y, $w) = &rt;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,l,$l,th,$th,X,$X,Y,$Y,w,$w};
} }
@t = sort{$a->{w}<=>$b->{w}} grep{0<=$_->{X}[0]and$_->{X}[1]<=999 and 0<=$_->{Y}[0]and$_->{Y}[1]<=999} @t;
do {@x = @{$t[$_]->{X}}; @y = @{$t[$_]->{Y}};
printf"%d: (%6.3f, %6.3f), (%7.3f, %6.3f), (%6.3f, %7.3f), (%7.3f, %7.3f): w=%3.3f\n",
$_+1,$x[0],$y[0],$x[1],$y[0],$x[0],$y[1],$x[1],$y[1],$t[$_]->{w}} for 0..5;
136デフォルトの名無しさん
2019/05/26(日) 17:40:00.54ID:XOxN6P/y >>135 実行結果
~ $ perl 14_11.pl
1: (48.607, 27.043), (863.062, 27.043), (48.607, 983.177), (863.062, 983.177): w=891.576
2: (45.920, 20.484), (869.713, 20.484), (45.920, 849.356), (869.713, 849.356): w=892.353
3: (32.627, 29.170), (901.066, 29.170), (32.627, 949.457), (901.066, 949.457): w=895.142
4: (24.000, 31.000), (920.000, 31.000), (24.000, 927.000), (920.000, 927.000): w=896.000
5: (24.000, 31.000), (920.000, 31.000), (24.000, 927.000), (920.000, 927.000): w=896.000
6: (14.845, 32.823), (931.567, 32.823), (14.845, 907.397), (931.567, 907.397): w=896.130
検算してないので、もしバグっていたらゴメンチャイ、(ゝω・) テヘペロ
~ $ perl 14_11.pl
1: (48.607, 27.043), (863.062, 27.043), (48.607, 983.177), (863.062, 983.177): w=891.576
2: (45.920, 20.484), (869.713, 20.484), (45.920, 849.356), (869.713, 849.356): w=892.353
3: (32.627, 29.170), (901.066, 29.170), (32.627, 949.457), (901.066, 949.457): w=895.142
4: (24.000, 31.000), (920.000, 31.000), (24.000, 927.000), (920.000, 927.000): w=896.000
5: (24.000, 31.000), (920.000, 31.000), (24.000, 927.000), (920.000, 927.000): w=896.000
6: (14.845, 32.823), (931.567, 32.823), (14.845, 907.397), (931.567, 907.397): w=896.130
検算してないので、もしバグっていたらゴメンチャイ、(ゝω・) テヘペロ
137デフォルトの名無しさん
2019/05/26(日) 17:44:33.42ID:XOxN6P/y >>136
なんか変、バグってるスマソ、直すことが出来たら書き込みます
なんか変、バグってるスマソ、直すことが出来たら書き込みます
138デフォルトの名無しさん
2019/05/26(日) 18:33:59.00ID:XOxN6P/y >>11 外側の正方形 Perl5 凸包の辺が正方形の辺に接するまたは対角二点で接する場合、>>135の露骨なバグ一個修正
use List::Util qw{min max pairkeys pairvalues};
@s=qw{136 577 110 927 472 199 157 808 388 598 94 31 388 157 325 409 787 897 850 598};
@X = pairkeys @s; @Y = pairvalues @s;
sub sp {$_[0]*$_[2] + $_[1]*$_[3]}
sub rt {
@e = (cos $th, -sin $th); @f = (sin $th, cos $th);
my @x = map{sp @e, $X[$_], $Y[$_]} 0..$#X;
my @y = map{sp @f, $X[$_], $Y[$_]} 0..$#Y;
@x = (min(@x), max(@x)); @y = (min(@y), max(@y));
$h = (max $x[1] - $x[0], $y[1] - $y[0]) / 2;
$cx = ($x[1] + $x[0]) / 2; $cy = ($y[1] + $y[0]) / 2;
@x = ($cx - $h, $cx + $h, $cx - $h, $cx + $h);
@y = ($cy - $h, $cy - $h, $cy + $h, $cy + $h);
($e[1], $f[0]) = (-$e[1], -$f[0]);
@x = map{sp @e, $x[$_], $y[$_]} 0..3;
@y = map{sp @f, $x[$_], $y[$_]} 0..3;
(\@x, \@y, 2*$h) }
for $i (0..@X-2) { for $j ($i+1..$#X) {
($dx, $dy) = ($X[$j] - $X[$i], $Y[$j] - $Y[$i]);
($dx, $dy) = (-$dx, -$dy) if $dx < 0;
$l = sqrt($dx*$dx + $dy*$dy);
$th = $dx > abs($dy) ? -atan2($dy, $dx) : atan2($dx, $dy);
($X, $Y, $w) = &rt;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,l,$l,th,$th,X,$X,Y,$Y,w,$w};
$th += 3.14159265358979/4; ($X, $Y, $w) = &rt;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,l,$l,th,$th,X,$X,Y,$Y,w,$w};
} }
@t = sort{$$a{w}<=>$$b{w}} grep{0<=min@{$_->{X}}and max@{$_->{X}}<=999 and 0<=min@{$_->{Y}}and max@{$_->{Y}}<=999} @t;
do {@x = @{$t[$_]{X}}; @y = @{$t[$_]{Y}};
printf"%d: (%7.3f,%7.3f), (%7.3f,%7.3f), (%7.3f,%7.3f), (%7.3f,%7.3f): w=%7.3f, th=%7.3f°\n",
$_+1,$x[0],$y[0],$x[1],$y[1],$x[2],$y[2],$x[3],$y[3],$t[$_]{w},$t[$_]{th}*180/3.14159265358979} for 0..4;
use List::Util qw{min max pairkeys pairvalues};
@s=qw{136 577 110 927 472 199 157 808 388 598 94 31 388 157 325 409 787 897 850 598};
@X = pairkeys @s; @Y = pairvalues @s;
sub sp {$_[0]*$_[2] + $_[1]*$_[3]}
sub rt {
@e = (cos $th, -sin $th); @f = (sin $th, cos $th);
my @x = map{sp @e, $X[$_], $Y[$_]} 0..$#X;
my @y = map{sp @f, $X[$_], $Y[$_]} 0..$#Y;
@x = (min(@x), max(@x)); @y = (min(@y), max(@y));
$h = (max $x[1] - $x[0], $y[1] - $y[0]) / 2;
$cx = ($x[1] + $x[0]) / 2; $cy = ($y[1] + $y[0]) / 2;
@x = ($cx - $h, $cx + $h, $cx - $h, $cx + $h);
@y = ($cy - $h, $cy - $h, $cy + $h, $cy + $h);
($e[1], $f[0]) = (-$e[1], -$f[0]);
@x = map{sp @e, $x[$_], $y[$_]} 0..3;
@y = map{sp @f, $x[$_], $y[$_]} 0..3;
(\@x, \@y, 2*$h) }
for $i (0..@X-2) { for $j ($i+1..$#X) {
($dx, $dy) = ($X[$j] - $X[$i], $Y[$j] - $Y[$i]);
($dx, $dy) = (-$dx, -$dy) if $dx < 0;
$l = sqrt($dx*$dx + $dy*$dy);
$th = $dx > abs($dy) ? -atan2($dy, $dx) : atan2($dx, $dy);
($X, $Y, $w) = &rt;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,l,$l,th,$th,X,$X,Y,$Y,w,$w};
$th += 3.14159265358979/4; ($X, $Y, $w) = &rt;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,l,$l,th,$th,X,$X,Y,$Y,w,$w};
} }
@t = sort{$$a{w}<=>$$b{w}} grep{0<=min@{$_->{X}}and max@{$_->{X}}<=999 and 0<=min@{$_->{Y}}and max@{$_->{Y}}<=999} @t;
do {@x = @{$t[$_]{X}}; @y = @{$t[$_]{Y}};
printf"%d: (%7.3f,%7.3f), (%7.3f,%7.3f), (%7.3f,%7.3f), (%7.3f,%7.3f): w=%7.3f, th=%7.3f°\n",
$_+1,$x[0],$y[0],$x[1],$y[1],$x[2],$y[2],$x[3],$y[3],$t[$_]{w},$t[$_]{th}*180/3.14159265358979} for 0..4;
139デフォルトの名無しさん
2019/05/26(日) 18:37:35.18ID:XOxN6P/y >>138 実行例
~ $ perl 14_11.pl
1: ( 32.627, 29.170), (927.382, 55.475), ( 6.310,923.152), (901.066,949.457): w=895.142, th= -1.685°
2: (920.000,927.000), ( 24.000,927.000), (920.000, 31.000), ( 24.000, 31.000): w=896.000, th=180.000°
3: ( 24.000, 31.000), (920.000, 31.000), ( 24.000,927.000), (920.000,927.000): w=896.000, th= 0.000°
4: ( 14.845, 32.823), (910.733, 11.994), ( 35.680,928.226), (931.567,907.397): w=896.130, th= 1.332°
5: ( 18.819, 32.332), (914.819, 16.335), ( 34.819,928.046), (930.819,912.049): w=896.143, th= 1.023°
ちゃんと検算してないので、もしまだバグがいたらゴメンチャイ、(ゝω・) テヘペロ
検算方法考えた方がいいのかも。ちなみにwは正方形の幅、thは回転各[deg]
>>11 の内側の正方形についてはまだ考えていない。
~ $ perl 14_11.pl
1: ( 32.627, 29.170), (927.382, 55.475), ( 6.310,923.152), (901.066,949.457): w=895.142, th= -1.685°
2: (920.000,927.000), ( 24.000,927.000), (920.000, 31.000), ( 24.000, 31.000): w=896.000, th=180.000°
3: ( 24.000, 31.000), (920.000, 31.000), ( 24.000,927.000), (920.000,927.000): w=896.000, th= 0.000°
4: ( 14.845, 32.823), (910.733, 11.994), ( 35.680,928.226), (931.567,907.397): w=896.130, th= 1.332°
5: ( 18.819, 32.332), (914.819, 16.335), ( 34.819,928.046), (930.819,912.049): w=896.143, th= 1.023°
ちゃんと検算してないので、もしまだバグがいたらゴメンチャイ、(ゝω・) テヘペロ
検算方法考えた方がいいのかも。ちなみにwは正方形の幅、thは回転各[deg]
>>11 の内側の正方形についてはまだ考えていない。
140デフォルトの名無しさん
2019/05/26(日) 20:05:21.06ID:MaF2nVvH >>11 おもろいな、初級問題だと文法の練習としてそれなりに勉強になる。
こう言うのはそれを超えていろんなパッケージ/ライブラリを駆使することになるから一皮剥けて勉強になる。
解けるか解けないか判らないけど楽しんでる。
勿論こう言うのは、言語の問題ではなく、ロジックの問題だと解っているんだが、ヒントとなる数字を出せるのは言語の力にもよるからそれはそれなりに面白い。
図形は直感的に推論が正しいかどうか判るから面白い。
https://i.imgur.com/cCazfFe.jpg
凸包の重心は使えなさそうだな。
>>139 なんとなく変に感じるんだが。
https://i.imgur.com/3ioZWjZ.jpg
この場合の正方形の一辺は、左側の凸包の線そのものになると思うんだけど。
つまり、左下端が、( 94,31 )、上端が(110,927) にならないかな?
こう言うのはそれを超えていろんなパッケージ/ライブラリを駆使することになるから一皮剥けて勉強になる。
解けるか解けないか判らないけど楽しんでる。
勿論こう言うのは、言語の問題ではなく、ロジックの問題だと解っているんだが、ヒントとなる数字を出せるのは言語の力にもよるからそれはそれなりに面白い。
図形は直感的に推論が正しいかどうか判るから面白い。
https://i.imgur.com/cCazfFe.jpg
凸包の重心は使えなさそうだな。
>>139 なんとなく変に感じるんだが。
https://i.imgur.com/3ioZWjZ.jpg
この場合の正方形の一辺は、左側の凸包の線そのものになると思うんだけど。
つまり、左下端が、( 94,31 )、上端が(110,927) にならないかな?
141デフォルトの名無しさん
2019/05/26(日) 20:06:23.89ID:MaF2nVvH >>140 ごめん、同じ画像を二つ上げてしまった。
お題と回答
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11 : 48 (78) 138-139
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 : 59 61
>>90 : 95 96
>>99 :
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11 : 48 (78) 138-139
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 : 59 61
>>90 : 95 96
>>99 :
144138
2019/05/26(日) 21:07:57.74ID:GCxYDy5d >>140 図をありがとう
scriptを(94, 31) - (110, 927)の辺に傾けてこの角度における最小の正方形だけを計算するようなおして
計算したら
5: ( 18.819, 32.332), (914.819, 16.335), ( 34.819,928.046), (930.819,912.049): w=896.143, th= 1.023°
になりました。
scriptを(94, 31) - (110, 927)の辺に傾けてこの角度における最小の正方形だけを計算するようなおして
計算したら
5: ( 18.819, 32.332), (914.819, 16.335), ( 34.819,928.046), (930.819,912.049): w=896.143, th= 1.023°
になりました。
145デフォルトの名無しさん
2019/05/27(月) 00:47:32.69ID:WucVzOyp >>144 それはおかしい。 直行正方形の辺の長さが896だから、896以下にならなければならない。
146デフォルトの名無しさん
2019/05/27(月) 03:33:47.20ID:ZlNUfz2v >>11 1)のみ やってみた。
図 https://codepen.io/dokokade/full/WBzgrZ
※ 途中で完全にJavaScriptのお遊びになってしまった。
(計算は別プログラムで、そのログを図にした)
一辺 = 890.70993168302
四点
x: [ 0.8027676391, 82.9114960624, 969.828819782, 887.7200913596]
y: [916.8907759982, 29.9734522778, 112.082180701, 998.9995044215]
図 https://codepen.io/dokokade/full/WBzgrZ
※ 途中で完全にJavaScriptのお遊びになってしまった。
(計算は別プログラムで、そのログを図にした)
一辺 = 890.70993168302
四点
x: [ 0.8027676391, 82.9114960624, 969.828819782, 887.7200913596]
y: [916.8907759982, 29.9734522778, 112.082180701, 998.9995044215]
147デフォルトの名無しさん
2019/05/27(月) 12:03:51.40ID:g1o9JmK9 >>146 多分正解だね。 おめでとう。
148デフォルトの名無しさん
2019/05/27(月) 12:17:08.10ID:g1o9JmK9 >>146 あ、でも 右上の頂点は y = 998.9995044215 となってるけど、
正確には y=999 とぶつからなければいけないよね。 少し誤差が大きすぎるような気がするけどこんなもの?
正確には y=999 とぶつからなければいけないよね。 少し誤差が大きすぎるような気がするけどこんなもの?
149デフォルトの名無しさん
2019/05/27(月) 23:46:29.70ID:FhcziIHI >>140
この図の(388,157)は(388,598)の誤記?
この図の(388,157)は(388,598)の誤記?
150デフォルトの名無しさん
2019/05/27(月) 23:59:39.40ID:WucVzOyp >>149 間違っていないでしょ。
両方あるよ。
xys [[136 577]
[110 927]
[472 199]
[157 808]
[388 598] ***
[ 94 31]
[388 157] ***
[325 409]
[787 897]
[850 598]]
https://i.imgur.com/9emHzzD.jpg
両方あるよ。
xys [[136 577]
[110 927]
[472 199]
[157 808]
[388 598] ***
[ 94 31]
[388 157] ***
[325 409]
[787 897]
[850 598]]
https://i.imgur.com/9emHzzD.jpg
151デフォルトの名無しさん
2019/05/28(火) 00:07:34.28ID:A9u6a3RO >>145 凸包の一辺(94,31)-(110,927)のみに着目し、この辺が垂直となる様に座標を1.023°回転して
から点郡を囲む矩形領域を求め、その長方形を正方形になるように短い辺を伸ばす処理は省いて
長方形のまま元の座標系に逆変換し4頂点座標を見たところ、
use List::Util qw{min max};
use Math::Trig;
@X = qw{94 110}; # 787 850 472 388};
@Y = qw{31 927}; # 897 598 199 598};
sub sp {$_[0]*$_[2] + $_[1]*$_[3]}
for $i (0..@X-2) { for $j ($i+1..$#X) {
($dx, $dy) = ($X[$j] - $X[$i], $Y[$j] - $Y[$i]);
($dx, $dy) = (-$dx, -$dy) if $dx < 0;
$th = $dx > abs($dy) ? -atan2($dy, $dx) : atan2($dx, $dy);
@e = (cos $th, -sin $th); @f = (sin $th, cos $th);
my @x = map{sp @e, $X[$_], $Y[$_]} 0..$#X;
my @y = map{sp @f, $X[$_], $Y[$_]} 0..$#Y;
@x = (min(@x), max @x); @y = (min(@y), max @y);
$w = max($x[1] - $x[0], $y[1] - $y[0]);
($e[1], $f[0]) = (-$e[1], -$f[0]);
@x = map{sp @e, $x[$_], $y[$_]} 0,1,0,1;
@y = map{sp @f, $x[$_], $y[$_]} 0,0,1,1;
#next if min@x<0 or 999<max@x or min@y<0 or 999<max@y;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,th,$th,X,[@x],Y,[@y],w,$w} } }
@t = sort{$$a{w}<=>$$b{w}} @t;
do {@x = @{$_->{X}}; @y = @{$_->{Y}};
printf"%d: (%7.3f,%7.3f), (%7.3f,%7.3f), (%7.3f,%7.3f), (%7.3f,%7.3f): w=%7.3f, th=%7.3f°\n",
++$k,$x[0],$y[0],$x[1],$y[1],$x[2],$y[2],$x[3],$y[3],$$_{w},rad2deg $$_{th}} for @t;
~ $ perl 14_11_2.pl
1: ( 94.000, 30.990), (110.000, 30.990), ( 94.000,926.704), (110.000,926.704): w=896.143, th= 1.023°
となったので、今のところ計算は合っていると思う。おかしく感じたのは長方形を正方形になるように短い辺を伸ばした座標の
シフトによるものだと思う。しかし、この長方形⇒正方形補正が曲者で、より小さい正方形であるにもかかわらず長方形の
短辺を両側に均等に伸ばすと頂点が0〜999の範囲をこえてしまうものがあるらしく、不均等に伸ばすようにすれば
より小さい正方形を見出せるかもしれない。
から点郡を囲む矩形領域を求め、その長方形を正方形になるように短い辺を伸ばす処理は省いて
長方形のまま元の座標系に逆変換し4頂点座標を見たところ、
use List::Util qw{min max};
use Math::Trig;
@X = qw{94 110}; # 787 850 472 388};
@Y = qw{31 927}; # 897 598 199 598};
sub sp {$_[0]*$_[2] + $_[1]*$_[3]}
for $i (0..@X-2) { for $j ($i+1..$#X) {
($dx, $dy) = ($X[$j] - $X[$i], $Y[$j] - $Y[$i]);
($dx, $dy) = (-$dx, -$dy) if $dx < 0;
$th = $dx > abs($dy) ? -atan2($dy, $dx) : atan2($dx, $dy);
@e = (cos $th, -sin $th); @f = (sin $th, cos $th);
my @x = map{sp @e, $X[$_], $Y[$_]} 0..$#X;
my @y = map{sp @f, $X[$_], $Y[$_]} 0..$#Y;
@x = (min(@x), max @x); @y = (min(@y), max @y);
$w = max($x[1] - $x[0], $y[1] - $y[0]);
($e[1], $f[0]) = (-$e[1], -$f[0]);
@x = map{sp @e, $x[$_], $y[$_]} 0,1,0,1;
@y = map{sp @f, $x[$_], $y[$_]} 0,0,1,1;
#next if min@x<0 or 999<max@x or min@y<0 or 999<max@y;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,th,$th,X,[@x],Y,[@y],w,$w} } }
@t = sort{$$a{w}<=>$$b{w}} @t;
do {@x = @{$_->{X}}; @y = @{$_->{Y}};
printf"%d: (%7.3f,%7.3f), (%7.3f,%7.3f), (%7.3f,%7.3f), (%7.3f,%7.3f): w=%7.3f, th=%7.3f°\n",
++$k,$x[0],$y[0],$x[1],$y[1],$x[2],$y[2],$x[3],$y[3],$$_{w},rad2deg $$_{th}} for @t;
~ $ perl 14_11_2.pl
1: ( 94.000, 30.990), (110.000, 30.990), ( 94.000,926.704), (110.000,926.704): w=896.143, th= 1.023°
となったので、今のところ計算は合っていると思う。おかしく感じたのは長方形を正方形になるように短い辺を伸ばした座標の
シフトによるものだと思う。しかし、この長方形⇒正方形補正が曲者で、より小さい正方形であるにもかかわらず長方形の
短辺を両側に均等に伸ばすと頂点が0〜999の範囲をこえてしまうものがあるらしく、不均等に伸ばすようにすれば
より小さい正方形を見出せるかもしれない。
152デフォルトの名無しさん
2019/05/28(火) 00:08:24.04ID:A9u6a3RO >>150
そうだね、ゴメン
そうだね、ゴメン
153デフォルトの名無しさん
2019/05/28(火) 00:16:35.63ID:eILR4MCH >>150 外接円を描いてみたけど、利用方法を見つけられなかった。
むしろ [ 94 31] [787 897] の対角を直径とする最小包含円 からかな?
むしろ [ 94 31] [787 897] の対角を直径とする最小包含円 からかな?
154デフォルトの名無しさん
2019/05/28(火) 00:27:46.22ID:A9u6a3RO 以下は試作実験programと結果
@凸包の辺の角度にのみ傾ける(それ以外の角度は略) A長方形⇒正方形補正は略 B頂点座標が0〜999の範囲外も出力
use List::Util qw{min max}; use Math::Trig;
@X = qw{94 110 787 850 472 388}; @Y = qw{31 927 897 598 199 157};
sub sp {$_[0]*$_[2] + $_[1]*$_[3]}
for $i (0..@X-2) { for $j ($i+1..$#X) {
($dx, $dy) = ($X[$j] - $X[$i], $Y[$j] - $Y[$i]);
($dx, $dy) = (-$dx, -$dy) if $dx < 0;
$th = $dx > abs($dy) ? -atan2($dy, $dx) : atan2($dx, $dy);
@e = (cos $th, -sin $th); @f = (sin $th, cos $th);
my @x = map{sp @e, $X[$_], $Y[$_]} 0..$#X;
my @y = map{sp @f, $X[$_], $Y[$_]} 0..$#Y;
@x = (min(@x), max @x); @y = (min(@y), max @y);
$w = max($x[1] - $x[0], $y[1] - $y[0]);
($e[1], $f[0]) = (-$e[1], -$f[0]);
@x = map{sp @e, $x[$_], $y[$_]} 0,1,0,1;
@y = map{sp @f, $x[$_], $y[$_]} 0,0,1,1;
#next if min@x<0 or 999<max@x or min@y<0 or 999<max@y;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,th,$th,X,[@x],Y,[@y],w,$w} } }
@t = sort{$$a{w}<=>$$b{w}} @t;
do {@x = @{$_->{X}}; @y = @{$_->{Y}};
printf"%d: (%7.3f,%7.3f), (%7.3f,%7.3f), (%7.3f,%7.3f), (%7.3f,%7.3f): w=%7.3f, th=%7.3f°\n",
++$k,$x[0],$y[0],$x[1],$y[1],$x[2],$y[2],$x[3],$y[3],$$_{w},rad2deg $$_{th}} for @t[0..4];
1: (752.170,710.324), ( 94.000,710.324), (752.170, -8.662), ( 94.000, -8.662): w=873.451, th=168.102°
2: ( 70.342, 31.983), (863.100, 31.983), ( 70.342,891.839), (863.100,891.839): w=895.830, th= 2.537°
3: ( 94.000, 30.990), (855.637, 30.990), ( 94.000,913.391), (855.637,913.391): w=896.143, th= 1.023°
4: (699.348,547.478), ( 94.000,547.478), (699.348,-34.520), ( 94.000,-34.520): w=945.899, th=160.148°
5: ( 94.000, 29.184), (671.086, 29.184), ( 94.000,1007.681), (671.086,1007.681): w=978.102, th=-23.199°
真の極小解は中途半端な角度にあるのか…
@凸包の辺の角度にのみ傾ける(それ以外の角度は略) A長方形⇒正方形補正は略 B頂点座標が0〜999の範囲外も出力
use List::Util qw{min max}; use Math::Trig;
@X = qw{94 110 787 850 472 388}; @Y = qw{31 927 897 598 199 157};
sub sp {$_[0]*$_[2] + $_[1]*$_[3]}
for $i (0..@X-2) { for $j ($i+1..$#X) {
($dx, $dy) = ($X[$j] - $X[$i], $Y[$j] - $Y[$i]);
($dx, $dy) = (-$dx, -$dy) if $dx < 0;
$th = $dx > abs($dy) ? -atan2($dy, $dx) : atan2($dx, $dy);
@e = (cos $th, -sin $th); @f = (sin $th, cos $th);
my @x = map{sp @e, $X[$_], $Y[$_]} 0..$#X;
my @y = map{sp @f, $X[$_], $Y[$_]} 0..$#Y;
@x = (min(@x), max @x); @y = (min(@y), max @y);
$w = max($x[1] - $x[0], $y[1] - $y[0]);
($e[1], $f[0]) = (-$e[1], -$f[0]);
@x = map{sp @e, $x[$_], $y[$_]} 0,1,0,1;
@y = map{sp @f, $x[$_], $y[$_]} 0,0,1,1;
#next if min@x<0 or 999<max@x or min@y<0 or 999<max@y;
push @t, +{i,$i,j,$j,dx,$dx,dy,$dy,th,$th,X,[@x],Y,[@y],w,$w} } }
@t = sort{$$a{w}<=>$$b{w}} @t;
do {@x = @{$_->{X}}; @y = @{$_->{Y}};
printf"%d: (%7.3f,%7.3f), (%7.3f,%7.3f), (%7.3f,%7.3f), (%7.3f,%7.3f): w=%7.3f, th=%7.3f°\n",
++$k,$x[0],$y[0],$x[1],$y[1],$x[2],$y[2],$x[3],$y[3],$$_{w},rad2deg $$_{th}} for @t[0..4];
1: (752.170,710.324), ( 94.000,710.324), (752.170, -8.662), ( 94.000, -8.662): w=873.451, th=168.102°
2: ( 70.342, 31.983), (863.100, 31.983), ( 70.342,891.839), (863.100,891.839): w=895.830, th= 2.537°
3: ( 94.000, 30.990), (855.637, 30.990), ( 94.000,913.391), (855.637,913.391): w=896.143, th= 1.023°
4: (699.348,547.478), ( 94.000,547.478), (699.348,-34.520), ( 94.000,-34.520): w=945.899, th=160.148°
5: ( 94.000, 29.184), (671.086, 29.184), ( 94.000,1007.681), (671.086,1007.681): w=978.102, th=-23.199°
真の極小解は中途半端な角度にあるのか…
155146
2019/05/28(火) 00:38:23.09ID:dFqOFikP >>148
146は、ヒュースリックス解だから、まだ小さくなると思う。
でも、あと1くらいだと思う
( これが厳密解を求めるやる気が、無くなる原因)
少しずるして、この問題に過剰最適化させて、
890.7003209442369にした。
図 https://codepen.io/dokokade/full/WBzgrZ
146は、ヒュースリックス解だから、まだ小さくなると思う。
でも、あと1くらいだと思う
( これが厳密解を求めるやる気が、無くなる原因)
少しずるして、この問題に過剰最適化させて、
890.7003209442369にした。
図 https://codepen.io/dokokade/full/WBzgrZ
156デフォルトの名無しさん
2019/05/28(火) 00:44:50.83ID:A9u6a3RO157デフォルトの名無しさん
2019/05/28(火) 01:02:45.97ID:eILR4MCH158デフォルトの名無しさん
2019/05/28(火) 01:18:31.05ID:eILR4MCH >>155 無理を言ってごめん、答えの誤差をなくすために、最終座標は整数の xy 座標に出来るかな。 中心からの距離を切り上げて整数にする感じになると思うけど。
159デフォルトの名無しさん
2019/05/28(火) 01:33:00.26ID:A9u6a3RO こういう問題って、極小・最小解にいたる連続的な解空間形成してなけりゃ収束計算もできないし
かといって解析的あるいはロジカルな求解法が見出せなけりゃ、最後はヒューリスティックあるいはランダムwalk
あるいはRISMみたいな外挿的に探索するしかないのだろうか…
ないんだろうなたぶん。そんなきがす
かといって解析的あるいはロジカルな求解法が見出せなけりゃ、最後はヒューリスティックあるいはランダムwalk
あるいはRISMみたいな外挿的に探索するしかないのだろうか…
ないんだろうなたぶん。そんなきがす
160デフォルトの名無しさん
2019/05/28(火) 01:41:09.17ID:eILR4MCH >>159 現実の世界でも、求める解は整数にすることが多いと思う。
画面のドット精度、工作機械の精度など整数と考えた方が良い。
現実的には整数解が求められないと、角を切り落としたりしかねない。
(許容誤差を加えた範囲を求めるのでも良いけど)
整数解にした方が、試行錯誤の時間も少なくなると思うからより現実的だと思う。 答えが一律に決まるし。
画面のドット精度、工作機械の精度など整数と考えた方が良い。
現実的には整数解が求められないと、角を切り落としたりしかねない。
(許容誤差を加えた範囲を求めるのでも良いけど)
整数解にした方が、試行錯誤の時間も少なくなると思うからより現実的だと思う。 答えが一律に決まるし。
16150
2019/05/28(火) 13:42:19.32ID:tpS8MDSU https://mevius.5ch.net/test/read.cgi/tech/1549160513/920
前スレの920の、ランク付けの問題で、
入力データ
-6 3 9 5 3 -7
出力・ランク
2 3 5 4 3 1
2 3 6 5 3 1
下のように、同値の場合は、同じランクにして、次のランクの間隔を空ける場合、
ランク3 が2つあるから、4が無くなって、次は、5に飛ぶ場合は、難しい!
前スレの920の、ランク付けの問題で、
入力データ
-6 3 9 5 3 -7
出力・ランク
2 3 5 4 3 1
2 3 6 5 3 1
下のように、同値の場合は、同じランクにして、次のランクの間隔を空ける場合、
ランク3 が2つあるから、4が無くなって、次は、5に飛ぶ場合は、難しい!
162デフォルトの名無しさん
2019/05/28(火) 16:43:58.97ID:C7xxE9sL >>161
uniqしないだけ
uniqしないだけ
163デフォルトの名無しさん
2019/05/28(火) 17:48:16.52ID:IzhB96hl >>153 このケースの場合の最小包含円は外接円と一致するんだな。
164デフォルトの名無しさん
2019/05/29(水) 15:51:03.59ID:PE9V8n6M 素因数分解する関数を作れ。
ただし2より小さい数は空のリスト(又は配列)を返す事とする。
例: factorization 150
>[2,3,5,5]
ただし2より小さい数は空のリスト(又は配列)を返す事とする。
例: factorization 150
>[2,3,5,5]
165デフォルトの名無しさん
2019/05/29(水) 16:00:45.49ID:bq8lopql はい、次のお題どうぞ
167デフォルトの名無しさん
2019/05/29(水) 21:59:41.60ID:tGd6tVjg >>164 Perl5、>>59 で書いたroutineを流用しています。
sub prime {
$h = int $n/2;
for ($i=2; $i<=$h; $i++) {
$s[$i] = 1 unless exists $s[$i];
do {$s[$i*$_] = 0 for 2..int $h/$i} if $s[$i];
}
@p = grep{$s[$_]} 2..$h;
}
sub factorization {
my $i = shift;
my $h = int $i/2;
for $j (grep{$_ <= $h} @p) {
return ($j, factorization($i/$j)) if 0 == $i % $j;
}
1 < $i ? $i : ();
}
$"=',';
for $n ((0, 1, 2, 150)) {
prime;
@f = factorization $n;
print"$n => [@f]\n";
}
実行結果
~ $ perl 14_164.pl
0 => []
1 => []
2 => [2]
150 => [2,3,5,5]
sub prime {
$h = int $n/2;
for ($i=2; $i<=$h; $i++) {
$s[$i] = 1 unless exists $s[$i];
do {$s[$i*$_] = 0 for 2..int $h/$i} if $s[$i];
}
@p = grep{$s[$_]} 2..$h;
}
sub factorization {
my $i = shift;
my $h = int $i/2;
for $j (grep{$_ <= $h} @p) {
return ($j, factorization($i/$j)) if 0 == $i % $j;
}
1 < $i ? $i : ();
}
$"=',';
for $n ((0, 1, 2, 150)) {
prime;
@f = factorization $n;
print"$n => [@f]\n";
}
実行結果
~ $ perl 14_164.pl
0 => []
1 => []
2 => [2]
150 => [2,3,5,5]
168デフォルトの名無しさん
2019/05/30(木) 18:43:19.57ID:vFLUPPTs >>166
すでに既出だったとは。。。orz
すでに既出だったとは。。。orz
169デフォルトの名無しさん
2019/05/30(木) 18:45:09.99ID:vFLUPPTs >>164
一応Haskell載せときます。
main = (print.factorization) 150
factorization n | n < 2 = []
factorization n = f n primes
where
f n (x:_) |n == x = [x]
f n (x:xs)|n `mod` x == 0 = x:f (n `div` x) (x:xs)
f n (_:xs) = f n xs
primes = sieve [2..]
where sieve (p:xs) = p:sieve [x | x <- xs, x `mod` p /= 0]
一応Haskell載せときます。
main = (print.factorization) 150
factorization n | n < 2 = []
factorization n = f n primes
where
f n (x:_) |n == x = [x]
f n (x:xs)|n `mod` x == 0 = x:f (n `div` x) (x:xs)
f n (_:xs) = f n xs
primes = sieve [2..]
where sieve (p:xs) = p:sieve [x | x <- xs, x `mod` p /= 0]
170デフォルトの名無しさん
2019/05/30(木) 18:49:02.33ID:WCG+7mjF 既に既出
馬から落馬
歌を歌う
舞を舞う
ダンスをダンスる
馬から落馬
歌を歌う
舞を舞う
ダンスをダンスる
171デフォルトの名無しさん
2019/05/30(木) 18:50:08.40ID:WCG+7mjF ヤフーでググる
172デフォルトの名無しさん
2019/05/30(木) 20:22:38.83ID:JBeAmq0Y お題: sin, cos を用いてお題を作成せよ
173デフォルトの名無しさん
2019/05/30(木) 20:26:45.68ID:zjW7i8/A eをネイピア数とした時
e^(iθ) ≠ cosθ + i sinθ
となる事を証明せよ
e^(iθ) ≠ cosθ + i sinθ
となる事を証明せよ
174デフォルトの名無しさん
2019/05/30(木) 20:35:25.37ID:7cnHmzOq ん~、じゃあ
sin, cos を実装せよ
sin, cos を実装せよ
175デフォルトの名無しさん
2019/05/30(木) 22:02:46.02ID:8+NCnZcE >>173
オイラーの公式なめてんの?
オイラーの公式なめてんの?
176デフォルトの名無しさん
2019/05/30(木) 22:10:08.81ID:mWdPfVjS >>175
exp(iθ)=cosθ+isinθだけど(2.71828...)^(iθ)は多値関数だよ
exp(iθ)=cosθ+isinθだけど(2.71828...)^(iθ)は多値関数だよ
177デフォルトの名無しさん
2019/05/30(木) 22:23:36.25ID:mWdPfVjS >>176
多値じゃなくて多価
多値じゃなくて多価
178デフォルトの名無しさん
2019/05/30(木) 23:36:43.35ID:0JxSfYBl ^はxorだからな。そりゃ違うさ。
179蟻人間 ◆T6xkBnTXz7B0
2019/05/30(木) 23:40:43.53ID:rhzd9E8p お題:テーブル方式でcos/sin関数をテキトーに自作セヨ。
180デフォルトの名無しさん
2019/05/30(木) 23:54:33.59ID:J5ONVYE0 >>179
cos := (1 0)(round abs fdivmod 2 * $a Math.PI) * (sgn $a);
sin := (0 1)(round abs fdivmod 2 * $a Math.PI) * (sgn $a);
cos := (1 0)(round abs fdivmod 2 * $a Math.PI) * (sgn $a);
sin := (0 1)(round abs fdivmod 2 * $a Math.PI) * (sgn $a);
181デフォルトの名無しさん
2019/05/31(金) 00:55:18.43ID:t9s7pmzY ああこりゃ多価関数の意味を知らないバカだな
182デフォルトの名無しさん
2019/05/31(金) 01:02:49.06ID:6bzo9swJ 複素数の指数関数や対数関数は多価関数だろ
馬鹿はお前だ
馬鹿はお前だ
183デフォルトの名無しさん
2019/05/31(金) 01:38:23.70ID:4Atryqh8 指数関数は多価じゃないよ、何言ってんの
184デフォルトの名無しさん
2019/05/31(金) 05:30:51.21ID:Rd2VdfQd >>183
寝言はねえから言えよクズ
z^w := exp(w * log(z))
log(z) が多価関数なんだから一般にz^wも多価関数だっつーの
死ねよ雑魚が
https://en.wikipedia.org/wiki/Exponential_function
> We can then define a more general exponentiation:
>
> {\displaystyle z^{w}=e^{w\log z}} z^{w}=e^{w\log z}
> for all complex numbers z and w. This is also a MULTIVALUED function, even when z is real.
寝言はねえから言えよクズ
z^w := exp(w * log(z))
log(z) が多価関数なんだから一般にz^wも多価関数だっつーの
死ねよ雑魚が
https://en.wikipedia.org/wiki/Exponential_function
> We can then define a more general exponentiation:
>
> {\displaystyle z^{w}=e^{w\log z}} z^{w}=e^{w\log z}
> for all complex numbers z and w. This is also a MULTIVALUED function, even when z is real.
185デフォルトの名無しさん
2019/05/31(金) 05:49:38.41ID:C3HpXD20186デフォルトの名無しさん
2019/05/31(金) 06:17:16.52ID:4Atryqh8 >>184
第一の意味での指数関数、つまり f′(z) = f(z), f(0)=1 を満たす f(z) = exp(z) は当然多価関数じゃない。
第二の意味での「指数関数」、つまり複素数の複素数乗 f(z, w) = z^w は、引用してくれたとおり exp の「逆関数」 log を使って f(z, w) = exp(w log z) と定義するけど、
log は主値を取るものとして(つまり定義域を制限した exp の真の意味での逆関数として)定義すれば log w も f(z, w) もちゃんとした関数になる。そうでなければどちらも多価関数になる。
多価関数って要は関数じゃない(写像ではない)から、少なくとも一般的な計算には使わないよね。多価の asin x や多価の √x なんて使わないでしょ?
第一の意味での指数関数、つまり f′(z) = f(z), f(0)=1 を満たす f(z) = exp(z) は当然多価関数じゃない。
第二の意味での「指数関数」、つまり複素数の複素数乗 f(z, w) = z^w は、引用してくれたとおり exp の「逆関数」 log を使って f(z, w) = exp(w log z) と定義するけど、
log は主値を取るものとして(つまり定義域を制限した exp の真の意味での逆関数として)定義すれば log w も f(z, w) もちゃんとした関数になる。そうでなければどちらも多価関数になる。
多価関数って要は関数じゃない(写像ではない)から、少なくとも一般的な計算には使わないよね。多価の asin x や多価の √x なんて使わないでしょ?
187デフォルトの名無しさん
2019/05/31(金) 06:53:54.48ID:BfGYI+kd188デフォルトの名無しさん
2019/05/31(金) 07:16:05.79ID:LXc8d8Er189デフォルトの名無しさん
2019/05/31(金) 07:32:11.07ID:E12bWjgi190デフォルトの名無しさん
2019/05/31(金) 12:16:09.80ID:ihIFj/V/191デフォルトの名無しさん
2019/05/31(金) 14:15:19.33ID:rnSTXr8b 数学の問題なんて、センター入試問題でも解いてこいよ。 手を抜きすぎだぞ。 もっと面白くひねれよ。
192デフォルトの名無しさん
2019/05/31(金) 20:50:13.55ID:/Dlwa3kC193デフォルトの名無しさん
2019/05/31(金) 23:54:43.29ID:fDsN7sSa センターなんて数学じゃなくて算数でしょ
194デフォルトの名無しさん
2019/06/01(土) 05:45:08.23ID:uuPo6pHP 面白いお題がないかと文句を言う前に
進んで面白いお題を書きましょう
進んで面白いお題を書きましょう
195デフォルトの名無しさん
2019/06/02(日) 10:12:21.99ID:kAC27lYz >>192 python sympy
from sympy import *
import time
time_sta = time.perf_counter()
ans=factorint(13999)
time_end = time.perf_counter()
print(ans,'{:.7f}ms'.format((time_end-time_sta)*1000))
#{13999: 1} 0.0283330ms
同じpython でも餅は餅屋なんだろうな。
因みに、13999**2 を求めると
#{13999: 2} 0.4635000ms
iPhone Xs Max Pythonista3.2 Python3.6.5 sympy 0.4.7.1
from sympy import *
import time
time_sta = time.perf_counter()
ans=factorint(13999)
time_end = time.perf_counter()
print(ans,'{:.7f}ms'.format((time_end-time_sta)*1000))
#{13999: 1} 0.0283330ms
同じpython でも餅は餅屋なんだろうな。
因みに、13999**2 を求めると
#{13999: 2} 0.4635000ms
iPhone Xs Max Pythonista3.2 Python3.6.5 sympy 0.4.7.1
196デフォルトの名無しさん
2019/06/02(日) 15:03:12.02ID:c9LZ9fJN198195
2019/06/02(日) 18:41:56.81ID:Hxta4mKu199デフォルトの名無しさん
2019/06/03(月) 00:41:43.81ID:u5qwV1AY200デフォルトの名無しさん
2019/06/03(月) 03:39:17.26ID:4uiCu3lL お題:↓の画像のようにコンソール画面に雨を降らせなさい
https://i.imgur.com/wR1mNu5.gif
https://i.imgur.com/wR1mNu5.gif
201デフォルトの名無しさん
2019/06/03(月) 12:16:50.21ID:V0dR4GNy202デフォルトの名無しさん
2019/06/03(月) 21:33:09.94ID:CuEu7mic >>164
Kotlin
https://paiza.io/projects/65lAktSm6rjmcVdxSlaLSQ
ただループ回すだけじゃ芸がないと思って素数を返すイテレータのクラス作ってやってみた。
(素数をバッファリングもすればもっと無駄がなかったなとは思ったがそれはやってない)。
Kotlin
https://paiza.io/projects/65lAktSm6rjmcVdxSlaLSQ
ただループ回すだけじゃ芸がないと思って素数を返すイテレータのクラス作ってやってみた。
(素数をバッファリングもすればもっと無駄がなかったなとは思ったがそれはやってない)。
203デフォルトの名無しさん
2019/06/04(火) 06:42:47.26ID:7qxdZD6A >>185
Wikiが正しいとは限らないからと言って、wikiが間違っている前提で反論するバカの見本
Wikiが正しいとは限らないからと言って、wikiが間違っている前提で反論するバカの見本
204195
2019/06/04(火) 07:17:53.03ID:/ArpXH0n >>201 jupyter で測ってみた。結構早い。
[1000000007]
CPU times: user 2.28 ms, sys: 0 ns, total: 2.28 ms
Wall time: 2.25 ms
[1000000000039]
CPU times: user 99.8 ms, sys: 0 ns, total: 99.8 ms
Wall time: 107 ms
[2, 3, 3, 5, 7, 11, 13, 17, 29]
CPU times: user 76 µs, sys: 0 ns, total: 76 µs
Wall time: 78.7 µs
[2, 3, 3, 5, 7, 11, 13, 17, 29, 1000000007]
CPU times: user 3.53 ms, sys: 0 ns, total: 3.53 ms
Wall time: 3.54 ms
[1000000007]
CPU times: user 2.28 ms, sys: 0 ns, total: 2.28 ms
Wall time: 2.25 ms
[1000000000039]
CPU times: user 99.8 ms, sys: 0 ns, total: 99.8 ms
Wall time: 107 ms
[2, 3, 3, 5, 7, 11, 13, 17, 29]
CPU times: user 76 µs, sys: 0 ns, total: 76 µs
Wall time: 78.7 µs
[2, 3, 3, 5, 7, 11, 13, 17, 29, 1000000007]
CPU times: user 3.53 ms, sys: 0 ns, total: 3.53 ms
Wall time: 3.54 ms
205デフォルトの名無しさん
2019/06/04(火) 07:56:52.47ID://1XsOfQ 素数は、平方根までの素数で割って、割り切れなければ素数だろ
[2,3,5,7,11,13...] みたいに、素数表に追加していく途中で、
例えば、103 なら、11 までの素数で割って、割り切れなければ素数
13以降の素数で割る必要はない
もし13で割り切れるなら、13 * n = 103
となり、n は、√103 よりも、小さくなるから、既に割り切れているはず!
[2,3,5,7,11,13...] みたいに、素数表に追加していく途中で、
例えば、103 なら、11 までの素数で割って、割り切れなければ素数
13以降の素数で割る必要はない
もし13で割り切れるなら、13 * n = 103
となり、n は、√103 よりも、小さくなるから、既に割り切れているはず!
206デフォルトの名無しさん
2019/06/04(火) 08:11:49.19ID:e9k+jtYr >>205
例のRubyバカはこのスレにも出没するのか
例のRubyバカはこのスレにも出没するのか
207デフォルトの名無しさん
2019/06/04(火) 09:07:39.39ID:QWQyVZWL 誰もRubyの話なんてしてないやろ
208デフォルトの名無しさん
2019/06/04(火) 09:27:19.41ID:u+S7EiZ9 日頃の行いがなぁ…
209デフォルトの名無しさん
2019/06/04(火) 10:23:22.04ID:prB+PlYz210202
2019/06/04(火) 10:27:05.50ID:prB+PlYz >>205
なるほど。暇があったらそれも考慮しよう。
なるほど。暇があったらそれも考慮しよう。
211デフォルトの名無しさん
2019/06/04(火) 11:04:03.94ID:Hzpqs43L 【速報】金券五百円分とすかいらーく優侍券をすぐもらえる
https://pbs.twimg.com/media/D8I_lOtVUAE8t0O.jpg
@ スマホでたいむばんくを入手
A 会員登録を済ませる
B マイページへ移動する
C 招待コード→招待コードを入力する [Rirz Tu](スペース抜き)
今なら更に4日18時までの登録で2倍の600円の紹介金を入手
クオカードとすかいらーく優待券を両方ゲットできます。
かんたんに入手できますのでご利用下さい
https://pbs.twimg.com/media/D8I_lOtVUAE8t0O.jpg
@ スマホでたいむばんくを入手
A 会員登録を済ませる
B マイページへ移動する
C 招待コード→招待コードを入力する [Rirz Tu](スペース抜き)
今なら更に4日18時までの登録で2倍の600円の紹介金を入手
クオカードとすかいらーく優待券を両方ゲットできます。
かんたんに入手できますのでご利用下さい
212デフォルトの名無しさん
2019/06/04(火) 13:01:01.36ID:XXr8i2SB >>211
あとで一万円の請求が来るらしい
あとで一万円の請求が来るらしい
213デフォルトの名無しさん
2019/06/04(火) 13:24:26.77ID:RxG/e7Cf >>211
バラまきキャンペーン乙。
バラまきキャンペーン乙。
214デフォルトの名無しさん
2019/06/05(水) 02:49:29.97ID:TK4G9YGK >>200 Ruby
# エスケープシーケンスが有効な環境
print "\e[1;1;H\e2" # "\ec"
while true
print 79.times.inject(''){|s| s += (rand(20) >= 19)? '|' : ' ' }, "\n\e[1T\eM"
sleep 0.1
end
# エスケープシーケンスが有効な環境
print "\e[1;1;H\e2" # "\ec"
while true
print 79.times.inject(''){|s| s += (rand(20) >= 19)? '|' : ' ' }, "\n\e[1T\eM"
sleep 0.1
end
215デフォルトの名無しさん
2019/06/05(水) 19:02:11.80ID:xAyG9V/M お題:2次元関数を図示したとき網目状になる関数を示せ。
216デフォルトの名無しさん
2019/06/05(水) 19:05:56.09ID:JxAz00LY 網目状になったら普通それは関数とは言わないんですが
217デフォルトの名無しさん
2019/06/05(水) 20:21:05.87ID:4AufAgsU >>200
https://light.dotup.org/uploda/light.dotup.org593450.gif
エスケープシーケンスのコードが行方不明だったので書き直した。
C++で書いたけど、ベターCですなぁ。
https://light.dotup.org/uploda/light.dotup.org593450.gif
エスケープシーケンスのコードが行方不明だったので書き直した。
C++で書いたけど、ベターCですなぁ。
218デフォルトの名無しさん
2019/06/05(水) 20:26:27.13ID:Fd++qFdy >>215
それは数学のお題では?関数の方を求めるんでしょ?図を画面に出すとかではなく。
それは数学のお題では?関数の方を求めるんでしょ?図を画面に出すとかではなく。
219214
2019/06/06(木) 05:58:02.66ID:6h02yf6h >>200 Ruby
# 水はねを追加
require 'io/console'
Crow, Ccol = STDOUT.winsize
print "\e[0;0H"
lines = []
while true
line = ' ' * Ccol
rand(Ccol).div(8).times{ line[rand(Ccol)] = '|' }
lines << line
print "\e[0;0H#{line}\n\e[0;0H"
if lines.size >= Crow
line = lines.shift.tr('|','w')
print "\e[#{Crow};0H#{line}\e[0;0H"
end
sleep 0.1
print "\e[0;0H\eM"
end
# 水はねを追加
require 'io/console'
Crow, Ccol = STDOUT.winsize
print "\e[0;0H"
lines = []
while true
line = ' ' * Ccol
rand(Ccol).div(8).times{ line[rand(Ccol)] = '|' }
lines << line
print "\e[0;0H#{line}\n\e[0;0H"
if lines.size >= Crow
line = lines.shift.tr('|','w')
print "\e[#{Crow};0H#{line}\e[0;0H"
end
sleep 0.1
print "\e[0;0H\eM"
end
220デフォルトの名無しさん
2019/06/06(木) 18:09:53.98ID:Qxsak61t お題
1/x + 1/2y + 1/3z = 4/3
を満たす、整数( x, y, z )の組み合わせを求めろ
ただし、x, y, z の範囲は、1 <= x, y, z <= 4 とする
答え
[ 1, 2, 4 ], [ 1, 3, 2 ], [ 2, 1, 1 ]
1/x + 1/2y + 1/3z = 4/3
を満たす、整数( x, y, z )の組み合わせを求めろ
ただし、x, y, z の範囲は、1 <= x, y, z <= 4 とする
答え
[ 1, 2, 4 ], [ 1, 3, 2 ], [ 2, 1, 1 ]
221デフォルトの名無しさん
2019/06/06(木) 20:34:48.88ID:2PaE6Est また数学か
222デフォルトの名無しさん
2019/06/06(木) 20:50:52.65ID:ZTQEoQsZ これは数学と言うより、コンピュータの問題じゃないかな。
IEEE754の理解が必要になると思う。
IEEE754の理解が必要になると思う。
223220
2019/06/06(木) 22:57:28.49ID:Qxsak61t 有理数・Rational クラスを使えば?
式を6倍しても良いけど
式を6倍しても良いけど
224デフォルトの名無しさん
2019/06/06(木) 23:11:58.29ID:Zwi2yFYb というか知的障害者でも64回回せば終わる問題だよな
225デフォルトの名無しさん
2019/06/06(木) 23:16:57.91ID:P4iafl1G 上位大学の入試見てると問題作りってセンス出るよな
226デフォルトの名無しさん
2019/06/07(金) 07:11:55.05ID:CBwJTjr/227デフォルトの名無しさん
2019/06/07(金) 13:55:32.04ID:D45ggIzR >>215
sin(x + y)*sin(x - y)=0
sin(x + y)*sin(x - y)=0
228デフォルトの名無しさん
2019/06/07(金) 16:27:31.91ID:RHh4qcVs230デフォルトの名無しさん
2019/06/07(金) 16:36:23.22ID:CBwJTjr/231デフォルトの名無しさん
2019/06/07(金) 16:44:59.95ID:RHh4qcVs あぁ、すまん。
暇なので愚直に解いてくるわ。
暇なので愚直に解いてくるわ。
232デフォルトの名無しさん
2019/06/07(金) 17:00:40.10ID:RHh4qcVs https://ideone.com/0kIloe
愚直に解いたのでは出ないので、有理数クラスが必要だ。という話になりました。(愚鈍)
愚直に解いたのでは出ないので、有理数クラスが必要だ。という話になりました。(愚鈍)
233デフォルトの名無しさん
2019/06/07(金) 17:32:22.41ID:IXZHPSuO 等式を6xyz倍して、4の3乗通りの整数の組み合わせを代入して単純に比較するだけの話だよね
234デフォルトの名無しさん
2019/06/07(金) 18:22:52.80ID:CBwJTjr/235デフォルトの名無しさん
2019/06/07(金) 20:25:03.39ID:itc0IrgZ お題:相異なる25個の英大文字が与えられるので、足りない1個を出力せよ
BCDEFGHIJKLMNOPQRSTUVWXYZ -> A
YIZFOADLMWCRUTGSVQKJEHNBP -> X
BCDEFGHIJKLMNOPQRSTUVWXYZ -> A
YIZFOADLMWCRUTGSVQKJEHNBP -> X
236デフォルトの名無しさん
2019/06/07(金) 20:27:51.01ID:LHJ6D3bl >>235 ruby
$><<([?A..?Z]-gets.split(''))
$><<([?A..?Z]-gets.split(''))
237デフォルトの名無しさん
2019/06/07(金) 20:28:29.84ID:LHJ6D3bl238デフォルトの名無しさん
2019/06/08(土) 00:59:14.99ID:zvJkEDj7 >>235 Perl5
for $s (BCDEFGHIJKLMNOPQRSTUVWXYZ, YIZFOADLMWCRUTGSVQKJEHNBP) {
@a = grep{0>index$s,$_} A..Z;
print "$s -> @a\n";
}
$ perl 14_235.pl
BCDEFGHIJKLMNOPQRSTUVWXYZ -> A
YIZFOADLMWCRUTGSVQKJEHNBP -> X
for $s (BCDEFGHIJKLMNOPQRSTUVWXYZ, YIZFOADLMWCRUTGSVQKJEHNBP) {
@a = grep{0>index$s,$_} A..Z;
print "$s -> @a\n";
}
$ perl 14_235.pl
BCDEFGHIJKLMNOPQRSTUVWXYZ -> A
YIZFOADLMWCRUTGSVQKJEHNBP -> X
239デフォルトの名無しさん
2019/06/08(土) 01:04:50.07ID:zvJkEDj7240デフォルトの名無しさん
2019/06/08(土) 04:54:26.27ID:t4bm4zRu241デフォルトの名無しさん
2019/06/08(土) 05:36:07.66ID:BULhVnPP243デフォルトの名無しさん
2019/06/08(土) 06:35:13.06ID:nbnKD3nO 最初から曖昧な式を書いてる出題者が最大の悪意だろ
もう無視しろよこんなサイコパス
もう無視しろよこんなサイコパス
244デフォルトの名無しさん
2019/06/08(土) 06:40:21.36ID:c2kswOOS えぇ……どこが曖昧なんだよ
無知だからって開き直るのは格好悪いわ
無知だからって開き直るのは格好悪いわ
245デフォルトの名無しさん
2019/06/08(土) 06:50:01.64ID:7Ke9leiS >>241
悪意と言うより6.0/xとか見る限りちょっと抜けてるんだと思う
悪意と言うより6.0/xとか見る限りちょっと抜けてるんだと思う
246デフォルトの名無しさん
2019/06/08(土) 07:48:52.33ID:jHJxbMi0 お前らでも他人の悪口言うもんなんだな
247デフォルトの名無しさん
2019/06/08(土) 10:21:44.01ID:831NYUH9 >>235 Pharo/Squeak Smalltalk
| alphabet |
alphabet := Character alphabet asUppercase.
alphabet difference: 'BCDEFGHIJKLMNOPQRSTUVWXYZ'. "=> 'A' "
alphabet difference: 'YIZFOADLMWCRUTGSVQKJEHNBP'. "=> 'X' "
| alphabet |
alphabet := Character alphabet asUppercase.
alphabet difference: 'BCDEFGHIJKLMNOPQRSTUVWXYZ'. "=> 'A' "
alphabet difference: 'YIZFOADLMWCRUTGSVQKJEHNBP'. "=> 'X' "
248デフォルトの名無しさん
2019/06/08(土) 11:01:33.46ID:CjDCyQh6 >>220 Pharo/Squeak Smalltalk
| set exp |
set := Set new.
(1 to: 4) asDigitsToPower: 3 do: [:combi |
combi permutationsDo: [:permu | set add: permu copy]
].
exp := [:x :y :z | 1/x + (1/(2*y)) + (1/(3*z))].
set select: [:permu | (exp valueWithArguments: permu) = (4/3)]
"=> a Set(#(2 1 1) #(1 3 2) #(1 2 4)) "
| set exp |
set := Set new.
(1 to: 4) asDigitsToPower: 3 do: [:combi |
combi permutationsDo: [:permu | set add: permu copy]
].
exp := [:x :y :z | 1/x + (1/(2*y)) + (1/(3*z))].
set select: [:permu | (exp valueWithArguments: permu) = (4/3)]
"=> a Set(#(2 1 1) #(1 3 2) #(1 2 4)) "
249195
2019/06/08(土) 11:07:07.66ID:gSg6KwWS >>235 python
import string
A26 = set(string.ascii_uppercase)
print(A26.difference(set('BCDEFGHIJKLMNOPQRSTUVWXYZ')).pop()) #-> A
print(A26.difference(set('YIZFOADLMWCRUTGSVQKJEHNBP')).pop()) #-> X
import string
A26 = set(string.ascii_uppercase)
print(A26.difference(set('BCDEFGHIJKLMNOPQRSTUVWXYZ')).pop()) #-> A
print(A26.difference(set('YIZFOADLMWCRUTGSVQKJEHNBP')).pop()) #-> X
250デフォルトの名無しさん
2019/06/08(土) 20:39:21.75ID:gCLo3iII251デフォルトの名無しさん
2019/06/08(土) 20:40:05.48ID:gCLo3iII >>245
全体を6倍しているからだが?
全体を6倍しているからだが?
252デフォルトの名無しさん
2019/06/08(土) 20:41:05.12ID:gCLo3iII >>242
それが分母ならちゃんと括弧書けよ。
それが分母ならちゃんと括弧書けよ。
253デフォルトの名無しさん
2019/06/08(土) 21:10:55.53ID:7Ke9leiS 周りの人に同情するわ…w
254デフォルトの名無しさん
2019/06/08(土) 21:53:10.61ID:bSq0it8T ID:gCLo3iII ガチのガイジやんけ
255デフォルトの名無しさん
2019/06/08(土) 22:03:07.94ID:CpkbOmpy ワラタwww
256デフォルトの名無しさん
2019/06/08(土) 23:58:19.51ID:nh3nMmSu https://ideone.com/IFCJVe
3個でないよ?(愚鈍)
3個でないよ?(愚鈍)
258デフォルトの名無しさん
2019/06/09(日) 00:14:56.14ID:W8wtcQAp >>235
AからZの文字コードの数値の総和から入力文字列の各文字の文字コードの総和を引けばいいね
AからZの文字コードの数値の総和から入力文字列の各文字の文字コードの総和を引けばいいね
259デフォルトの名無しさん
2019/06/09(日) 00:16:02.81ID:SSgQq8CW260デフォルトの名無しさん
2019/06/09(日) 00:17:23.59ID:SSgQq8CW261デフォルトの名無しさん
2019/06/09(日) 00:19:22.44ID:OSjRKT39 むしろプログラマの世界で数式を書くなら、
1/(2*y) だろうな。
1/2y と書けば、普通は、(1/2) * y だろ。
1/(2*y) だろうな。
1/2y と書けば、普通は、(1/2) * y だろ。
262デフォルトの名無しさん
2019/06/09(日) 00:24:01.37ID:SSgQq8CW 数学習った時も掛け算記号は省略できるとか習った覚えが。
あと、割り算と掛け算混ぜたときの結果は項の順番によらないかった覚えが。
寝る。
あと、割り算と掛け算混ぜたときの結果は項の順番によらないかった覚えが。
寝る。
263デフォルトの名無しさん
2019/06/09(日) 00:45:59.55ID:T9jyzIYI264デフォルトの名無しさん
2019/06/09(日) 01:16:32.66ID:zgQq0a06 >>263
数式でも人が紙に書いたかのような表現が使えず1行に無理に押し込める形式にするのならそれなりの工夫が必要だ
数式でも人が紙に書いたかのような表現が使えず1行に無理に押し込める形式にするのならそれなりの工夫が必要だ
265デフォルトの名無しさん
2019/06/09(日) 01:59:59.85ID:RDMRCxQC まず普通の人はあの表記を見ても迷わない
一京歩譲ったとして仮に迷ったとしても与えられた答えを代入すれば猿でも分かる
つまりいちゃもんつけてるのは猿未満
一京歩譲ったとして仮に迷ったとしても与えられた答えを代入すれば猿でも分かる
つまりいちゃもんつけてるのは猿未満
266デフォルトの名無しさん
2019/06/09(日) 02:03:55.91ID:vJOouxE6 自演乙
267デフォルトの名無しさん
2019/06/09(日) 02:08:15.94ID:1JZdgA2h268220
2019/06/09(日) 05:40:38.30ID:rn4C+nSw >>220
Ruby で、
ary = ( 1..4 ).to_a
# 直積・3重ループ
p ary.product( ary, ary ).select { |( x, y, z )|
Rational( 1, x ) + Rational( 1, 2 * y ) + Rational( 1, 3 * z ) == 4/3r }
#=> [[1, 2, 4], [1, 3, 2], [2, 1, 1]]
Ruby で、
ary = ( 1..4 ).to_a
# 直積・3重ループ
p ary.product( ary, ary ).select { |( x, y, z )|
Rational( 1, x ) + Rational( 1, 2 * y ) + Rational( 1, 3 * z ) == 4/3r }
#=> [[1, 2, 4], [1, 3, 2], [2, 1, 1]]
269デフォルトの名無しさん
2019/06/09(日) 08:43:57.74ID:OSjRKT39 >>263 >コード書いたわけじゃなくて普通の数式やがな
普通の数式ってどこの世界での普通なんだ? 普通の数式ならそんな書き方はしないからな。
1/2y を普通の数式として解釈すれば、(1/2) * y が普通の解釈だろ。 左から順に演算されるのが普通(と言うかルール)だからな。
普通の数式ってどこの世界での普通なんだ? 普通の数式ならそんな書き方はしないからな。
1/2y を普通の数式として解釈すれば、(1/2) * y が普通の解釈だろ。 左から順に演算されるのが普通(と言うかルール)だからな。
270デフォルトの名無しさん
2019/06/09(日) 09:08:49.29ID:T9jyzIYI 左からやって普通は1割る2yだろ
普通の数式で1÷2yってあってそう解釈するか?
割る記号の変わりだろ/は
プログラムのコードじゃないぞ
一個目の1/xがないならまだわからんでもないけど
普通の数式で1÷2yってあってそう解釈するか?
割る記号の変わりだろ/は
プログラムのコードじゃないぞ
一個目の1/xがないならまだわからんでもないけど
271デフォルトの名無しさん
2019/06/09(日) 09:18:11.20ID:OSjRKT39272デフォルトの名無しさん
2019/06/09(日) 09:20:36.13ID:OSjRKT39 >>270 お前の異常なところは、2y が優先演算されると思い込んでいるところ。
そこが大きな間違い。
そこが大きな間違い。
273デフォルトの名無しさん
2019/06/09(日) 09:32:55.64ID:T9jyzIYI 中学の文字式の問題といてみたらいいんじゃないかな
274デフォルトの名無しさん
2019/06/09(日) 09:42:13.99ID:1+U3aTMC 教養のない(1/2)派が暴れてて最高に笑えるわ
馬鹿は馬鹿らしく謙虚でいろよ
馬鹿は馬鹿らしく謙虚でいろよ
275デフォルトの名無しさん
2019/06/09(日) 10:16:16.60ID:Gi1Jt9cY 普通とかほざくゴミまで出てきたってことは一番最初の出題者はやっぱりサイコパスだろ
解釈の分れる書き方をワザとしてんだよ
解釈の分れる書き方をワザとしてんだよ
276デフォルトの名無しさん
2019/06/09(日) 10:16:55.57ID:1+U3aTMC いや馬鹿以外は一通りにしか解釈してねえだろ
277デフォルトの名無しさん
2019/06/09(日) 10:28:52.42ID:OSjRKT39278デフォルトの名無しさん
2019/06/09(日) 10:33:43.64ID:dGGyKbbw ID:OSjRKT39 こいつ、仕事もできねえんだろうな
同情するわ……こいつの同僚にw
同情するわ……こいつの同僚にw
279デフォルトの名無しさん
2019/06/09(日) 10:54:03.46ID:8GuoKRFn >>278
具体例も挙げてきちんと論証してるじゃん
具体例も挙げてきちんと論証してるじゃん
280デフォルトの名無しさん
2019/06/09(日) 10:54:55.69ID:wmlwj4f3 まあ理系なら数式見慣れてるし、数式だと 2x でセットと見るから
2x/3y を (2*x*y)/3 と解釈するアホはいないと思う
2x/3y を (2*x*y)/3 と解釈するアホはいないと思う
281デフォルトの名無しさん
2019/06/09(日) 10:57:55.90ID:8GuoKRFn282デフォルトの名無しさん
2019/06/09(日) 10:58:26.13ID:dGGyKbbw >>279
お前は論証という言葉をまず辞書で引け
お前は論証という言葉をまず辞書で引け
283デフォルトの名無しさん
2019/06/09(日) 10:59:01.91ID:8GuoKRFn 理系じゃない人にもやさしい世界の方がよくない?
284デフォルトの名無しさん
2019/06/09(日) 11:00:19.84ID:dGGyKbbw 理系以外にも優しくするのはいいとして馬鹿に優しくする必要は無いだろ
無能な猿が思い上がるだけ
無能な猿が思い上がるだけ
285デフォルトの名無しさん
2019/06/09(日) 11:00:55.16ID:tpC+iRBo キチガイを一人召喚してるな
286デフォルトの名無しさん
2019/06/09(日) 11:00:55.34ID:8GuoKRFn287デフォルトの名無しさん
2019/06/09(日) 11:02:06.44ID:dGGyKbbw >>286
たとい俺より百万倍マシだったとしてもお前がクズな現実は変わらない
たとい俺より百万倍マシだったとしてもお前がクズな現実は変わらない
288デフォルトの名無しさん
2019/06/09(日) 11:02:42.49ID:8GuoKRFn289デフォルトの名無しさん
2019/06/09(日) 11:04:17.16ID:dGGyKbbw 面白いなこいつ
叩けば音が鳴るおもちゃやん
叩けば音が鳴るおもちゃやん
290デフォルトの名無しさん
2019/06/09(日) 11:04:30.99ID:8GuoKRFn >>287
罵詈雑言を言ったら
罵詈雑言を言ったら
291デフォルトの名無しさん
2019/06/09(日) 11:04:57.97ID:8GuoKRFn 自分が賢くなるとでも?
292デフォルトの名無しさん
2019/06/09(日) 11:07:45.90ID:OSjRKT39293デフォルトの名無しさん
2019/06/09(日) 11:07:46.72ID:ycrydNOH で、結局論証ってなんのこと?
どこに論理的な推論があったわけ。
どこに論理的な推論があったわけ。
294デフォルトの名無しさん
2019/06/09(日) 11:09:31.01ID:8GuoKRFn >>293
一般的で具体的な例を上げて説明してたよ
一般的で具体的な例を上げて説明してたよ
295デフォルトの名無しさん
2019/06/09(日) 11:11:12.17ID:8GuoKRFn >>292
はいストローマン論法
はいストローマン論法
296デフォルトの名無しさん
2019/06/09(日) 11:11:47.45ID:8GuoKRFn 君たちは理系なの?
297デフォルトの名無しさん
2019/06/09(日) 11:13:37.36ID:ycrydNOH298デフォルトの名無しさん
2019/06/09(日) 11:15:19.30ID:8GuoKRFn299デフォルトの名無しさん
2019/06/09(日) 11:15:45.10ID:OSjRKT39300デフォルトの名無しさん
2019/06/09(日) 11:19:54.29ID:ycrydNOH wolframやgoogleでのレクシコンが今の議論に一体何の関係があるのだらうか!?
全くの荒唐無稽だと言っておきませうせうせう
全くの荒唐無稽だと言っておきませうせうせう
301デフォルトの名無しさん
2019/06/09(日) 11:24:46.91ID:8GuoKRFn302デフォルトの名無しさん
2019/06/09(日) 11:37:39.19ID:ycrydNOH >>301
君はいい人そうだから強く生きていきませう
君はいい人そうだから強く生きていきませう
303デフォルトの名無しさん
2019/06/09(日) 11:41:33.13ID:8GuoKRFn304デフォルトの名無しさん
2019/06/09(日) 11:41:33.39ID:OSjRKT39 >>300 自分の論証はどこに有る? 例を出せと言ってるのに出せないんだろ?
305デフォルトの名無しさん
2019/06/09(日) 11:43:32.18ID:8GuoKRFn >>304
兄貴、俺たちの勝ちっすね
兄貴、俺たちの勝ちっすね
306デフォルトの名無しさん
2019/06/09(日) 11:46:12.25ID:8GuoKRFn おいお前ら、俺たちのバックにはグーグルがいるんだぞ
307デフォルトの名無しさん
2019/06/09(日) 12:10:10.83ID:SqGEiAZe 物理などの世界では並置優先ルールが有る。
1/ab は、1(a*b) 1/2yは1/(2y)
しかし一般的なプログラミング(コンピュータ)の世界では、並置は存在しないから並置優先ルールもない。
ab は、a、b とは別変数となる。
プログラミングのお題としては、プログラミングルールに従った出し方にすべき。
1/ab は、1(a*b) 1/2yは1/(2y)
しかし一般的なプログラミング(コンピュータ)の世界では、並置は存在しないから並置優先ルールもない。
ab は、a、b とは別変数となる。
プログラミングのお題としては、プログラミングルールに従った出し方にすべき。
308デフォルトの名無しさん
2019/06/09(日) 12:49:50.56ID:W8wtcQAp 1.出題者が複数の解釈のできる曖昧な書き方(1/2y)をした。
2.多くの回答者は曖昧さを理解した上で自然に取れる解釈(1/(2y))をした。
3.一部の回答者はプログラミングや数学的な記法の厳密な解釈として((1/2)y)であるべきとした。
4.3と3を煽る奴らのどうでもいい喧嘩←今ここ
2.多くの回答者は曖昧さを理解した上で自然に取れる解釈(1/(2y))をした。
3.一部の回答者はプログラミングや数学的な記法の厳密な解釈として((1/2)y)であるべきとした。
4.3と3を煽る奴らのどうでもいい喧嘩←今ここ
309デフォルトの名無しさん
2019/06/09(日) 12:50:30.57ID:fheL3UO0 お題をみてそれにあわせたコードをかくのがプログラミングだろ
お題は文章なり数式でプログラミングのルールにのっとる必要はないじゃん
表現が曖昧で複数にとれるようなものは出題者に確認するだけの話だと思うけど
お題は文章なり数式でプログラミングのルールにのっとる必要はないじゃん
表現が曖昧で複数にとれるようなものは出題者に確認するだけの話だと思うけど
310デフォルトの名無しさん
2019/06/09(日) 13:03:13.41ID:Gi1Jt9cY ゴミみたいな書き方する出題者がそもそも悪いでしょ
そういうヤツは除外しなきゃ
叩いて叩いて叩きまくればいいんだよ
そういうヤツは除外しなきゃ
叩いて叩いて叩きまくればいいんだよ
311デフォルトの名無しさん
2019/06/09(日) 13:08:30.37ID:SqGEiAZe 誤解を生まないように書けば良いのにな。
お題と回答
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259
313デフォルトの名無しさん
2019/06/09(日) 13:48:39.24ID:7ZWYIG6V314デフォルトの名無しさん
2019/06/09(日) 14:28:03.28ID:zgQq0a06 >>308
> 2.多くの回答者は曖昧さを理解した上で自然に取れる解釈(1/(2y))をした。
多く?そもそも回答者がほとんどいないのでは?
それでもどちらかの解釈で回答した人は居るが、その回答はどちらの解釈が多かった?
> 2.多くの回答者は曖昧さを理解した上で自然に取れる解釈(1/(2y))をした。
多く?そもそも回答者がほとんどいないのでは?
それでもどちらかの解釈で回答した人は居るが、その回答はどちらの解釈が多かった?
315デフォルトの名無しさん
2019/06/09(日) 14:30:26.74ID:zgQq0a06 >>307
それならばそのようなルールで書くと断りを入れてから書くべきだな。
それならばそのようなルールで書くと断りを入れてから書くべきだな。
316デフォルトの名無しさん
2019/06/09(日) 15:51:50.05ID:30kMM31D >>313 並置優先ルールがない世界に、並置優先ルールが有るものだと言う前提で問題を出せば混乱するに決まってる。
そんな仕様書を書いたら即座に首だろ。
(唯一の救いはこの場合答えがあるから、確認することはできたが、確認せずに回答した人がいることも忘れてはならない)
プログラムの世界は、1点の曇りもあってはならない。
そんな仕様書を書いたら即座に首だろ。
(唯一の救いはこの場合答えがあるから、確認することはできたが、確認せずに回答した人がいることも忘れてはならない)
プログラムの世界は、1点の曇りもあってはならない。
317デフォルトの名無しさん
2019/06/09(日) 16:06:31.19ID:BPlIESHh 曖昧さも糞も無いだろ
答えまで書かれてたんだからそれで確認するのが正常な頭脳の持ち主
数学できない阿呆が噛み付いてるだけ
惨めだからもうやめときな
答えまで書かれてたんだからそれで確認するのが正常な頭脳の持ち主
数学できない阿呆が噛み付いてるだけ
惨めだからもうやめときな
318デフォルトの名無しさん
2019/06/09(日) 17:01:23.49ID:wmlwj4f3 単なる匿名掲示板で仕様書ガーとかw
バカにされて悔しいのはわかるけど流石にそろそろアキラメロン
バカにされて悔しいのはわかるけど流石にそろそろアキラメロン
319デフォルトの名無しさん
2019/06/09(日) 17:31:39.31ID:4d8N5HDz 激しい自演と正当化
320デフォルトの名無しさん
2019/06/09(日) 17:55:17.43ID:KzhGDYKc お題:Hello, World!を二進数で出力せよ
321デフォルトの名無しさん
2019/06/09(日) 18:46:11.83ID:iI/aMWbb >>320 Perl5
print map{sprintf'%b ',ord}split'','Hello, World!';
実行
~ $ perl 14_320.pl
1001000 1100101 1101100 1101100 1101111 101100 100000 1010111 1101111 1110010 1101100 1100100 100001
print map{sprintf'%b ',ord}split'','Hello, World!';
実行
~ $ perl 14_320.pl
1001000 1100101 1101100 1101100 1101111 101100 100000 1010111 1101111 1110010 1101100 1100100 100001
322デフォルトの名無しさん
2019/06/09(日) 20:11:20.28ID:v5VOLpEn お題
x=1から始めて一度のステップで
・xに1を足す
・xを2倍する
のいずれかを行うことができます。
正の整数Nが与えられるので、
x=Nに到達するのに必要な最小ステップ数を求めなさい。
N=34
=> 6 (1 -> 2 -> 4 -> 8 -> 16 -> 17 -> 34)
N=1
=> 0
N=10000
=> 17
x=1から始めて一度のステップで
・xに1を足す
・xを2倍する
のいずれかを行うことができます。
正の整数Nが与えられるので、
x=Nに到達するのに必要な最小ステップ数を求めなさい。
N=34
=> 6 (1 -> 2 -> 4 -> 8 -> 16 -> 17 -> 34)
N=1
=> 0
N=10000
=> 17
323デフォルトの名無しさん
2019/06/09(日) 20:18:23.01ID:SSgQq8CW324デフォルトの名無しさん
2019/06/09(日) 20:26:39.07ID:Gi1Jt9cY325デフォルトの名無しさん
2019/06/09(日) 20:58:31.04ID:8GuoKRFn326デフォルトの名無しさん
2019/06/09(日) 21:12:31.05ID:jNBSWirB >>325
桃白白改めミスターポポ改めピラフ改めピッコロさんには少し難しかったかな
桃白白改めミスターポポ改めピラフ改めピッコロさんには少し難しかったかな
327デフォルトの名無しさん
2019/06/09(日) 21:18:39.26ID:OSjRKT39 >>320 Python
print( ['{:08b}'.format(ord(s) ) for s in 'Hello, World!' ] )
# ['01001000', '01100101', '01101100', '01101100', '01101111', '00101100', '00100000', '01010111', '01101111', '01110010', '01101100', '01100100', '00100001']
print( ['{:08b}'.format(ord(s) ) for s in 'Hello, World!' ] )
# ['01001000', '01100101', '01101100', '01101100', '01101111', '00101100', '00100000', '01010111', '01101111', '01110010', '01101100', '01100100', '00100001']
328デフォルトの名無しさん
2019/06/09(日) 21:25:43.55ID:D5Urc2jv329デフォルトの名無しさん
2019/06/09(日) 22:04:49.27ID:OSjRKT39 # >>322 Python 取り敢えずオーソドックスに
def step(n):
for cnt , _ in enumerate( range(n ) ):
if n == 1 : break
n = n//2 if n%2 == 0 else n-1
return cnt
print(step(34)) #6
print(step(10000)) #17
print(step(1)) #0
def step(n):
for cnt , _ in enumerate( range(n ) ):
if n == 1 : break
n = n//2 if n%2 == 0 else n-1
return cnt
print(step(34)) #6
print(step(10000)) #17
print(step(1)) #0
330デフォルトの名無しさん
2019/06/09(日) 22:08:37.43ID:8GuoKRFn331デフォルトの名無しさん
2019/06/09(日) 22:49:04.65ID:OSjRKT39332デフォルトの名無しさん
2019/06/10(月) 10:26:34.05ID:Xpp6HhX6 >>322 Squeak Smalltalk
| fn |
fn := [:n | n bitCount + (n numberOfDigitsInBase: 2) - 2].
fn value: 34. "=> 6 "
fn value: 1. "=> 0 "
fn value: 10000. "=> 17 "
| fn |
fn := [:n | n bitCount + (n numberOfDigitsInBase: 2) - 2].
fn value: 34. "=> 6 "
fn value: 1. "=> 0 "
fn value: 10000. "=> 17 "
333デフォルトの名無しさん
2019/06/11(火) 00:54:15.70ID:aZcuYhl5 >>322
以下みたいに、すべてのステップ数を記録する、表を作っていくのか?
0 step : 1
1 : 2
2 : 3, 4
3 : 4, 6 | 5, 8 => 4, 5, 6, 8
4 : 5, 8 | 6, 10 | 7, 12 | 9, 16 => 5, 6, 7, 8, 9, 10, 12, 16
以下みたいに、すべてのステップ数を記録する、表を作っていくのか?
0 step : 1
1 : 2
2 : 3, 4
3 : 4, 6 | 5, 8 => 4, 5, 6, 8
4 : 5, 8 | 6, 10 | 7, 12 | 9, 16 => 5, 6, 7, 8, 9, 10, 12, 16
334333
2019/06/11(火) 02:58:39.60ID:aZcuYhl5 表を作らなくても、これで良いのか
1. 偶数なら、2で割る
2. 奇数なら、1を引いてから、1へ行く
1. 偶数なら、2で割る
2. 奇数なら、1を引いてから、1へ行く
335デフォルトの名無しさん
2019/06/11(火) 09:40:44.16ID:9nwOHJjF336デフォルトの名無しさん
2019/06/11(火) 09:58:48.09ID:p0Xp2yNy >>335
そいついつも人の話を聞かない奴だからスルーしとけばいいよ
そいついつも人の話を聞かない奴だからスルーしとけばいいよ
337デフォルトの名無しさん
2019/06/11(火) 10:35:23.49ID:fys+McUU 最小ステップの証明は?
338デフォルトの名無しさん
2019/06/11(火) 11:02:34.44ID:9nwOHJjF >>337 1足す2が3であることを証明しろと言うのか?
まあいいや、最小ステップは2倍が最大回数になればよいだけの話。
まあいいや、最小ステップは2倍が最大回数になればよいだけの話。
339デフォルトの名無しさん
2019/06/12(水) 01:58:04.75ID:vCbGNUwk >>322
kotlinスクリプト
>>> fun f(n: Int) = println("N=$n\n=> ${n.toString(2).map { it - '0' + 1 }.sum() - 2}")
>>> f(34)
N=34
=> 6
>>> f(1)
N=1
=> 0
>>> f(10000)
N=10000
=> 17
kotlinスクリプト
>>> fun f(n: Int) = println("N=$n\n=> ${n.toString(2).map { it - '0' + 1 }.sum() - 2}")
>>> f(34)
N=34
=> 6
>>> f(1)
N=1
=> 0
>>> f(10000)
N=10000
=> 17
340デフォルトの名無しさん
2019/06/12(水) 02:51:35.08ID:vCbGNUwk341333
2019/06/12(水) 06:36:52.68ID:vWkgJgOw >>322
Ruby で、
def f( n )
n_2 = n.to_s( 2 ) # 2進数
# 2進数の桁数 + 1の個数 - 2
n_2.length + n_2.count( "1" ) - 2
end
p [ 1, 34, 10_000 ].map { |n| f( n ) }
#=> [0, 6, 17]
Ruby で、
def f( n )
n_2 = n.to_s( 2 ) # 2進数
# 2進数の桁数 + 1の個数 - 2
n_2.length + n_2.count( "1" ) - 2
end
p [ 1, 34, 10_000 ].map { |n| f( n ) }
#=> [0, 6, 17]
342デフォルトの名無しさん
2019/06/12(水) 08:43:05.24ID:PSW3BzBK >>235 Io
f := method(s,
((65+90)*26/2 - s sum)asCharacter
)
Io> f("BCDEFGHIJKLMNOPQRSTUVWXYZ")
==> "A"
f := method(s,
((65+90)*26/2 - s sum)asCharacter
)
Io> f("BCDEFGHIJKLMNOPQRSTUVWXYZ")
==> "A"
343デフォルトの名無しさん
2019/06/12(水) 09:55:38.00ID:6rY4ofim 何かと思ったら'A'から'Z'の総和か、その求め方は草
344デフォルトの名無しさん
2019/06/12(水) 12:18:37.17ID:5tKK6KtT お題:特定ドライブ配下の*.jpgファイルを削除し、そのjpgファイルが格納されていたフォルダも削除する
345デフォルトの名無しさん
2019/06/12(水) 12:31:12.34ID:x67noP4p 質問スレへどうぞ。
346デフォルトの名無しさん
2019/06/12(水) 13:19:30.21ID:apqCeTcN >>344
rm -rf /
rm -rf /
347デフォルトの名無しさん
2019/06/12(水) 15:25:36.12ID:5tKK6KtT >>346
ありがとうございます。試してみます。
ありがとうございます。試してみます。
348デフォルトの名無しさん
2019/06/12(水) 16:38:42.58ID:cGak2oax 面白いことになりそうだな、ワクワク
349デフォルトの名無しさん
2019/06/12(水) 17:30:57.74ID:8XpDs8H3 最近のrmはそれじゃ実行できないとマジレス
350デフォルトの名無しさん
2019/06/12(水) 17:36:01.92ID:cGak2oax >>350
回答という形での投票行動がもっとも自然な見解なのでは?
回答という形での投票行動がもっとも自然な見解なのでは?
352デフォルトの名無しさん
2019/06/13(木) 00:08:48.60ID:NulSwGzN Ruby には、FileUtils::DryRun みたいに、
実際には実行されなくて、どうなるかだけを見るモードがある
PowerShell の、-WhatIf もそう
>>346
は、あちこちで、rm -rf /
を書いてる荒らしだから、実行しないように!
実際には実行されなくて、どうなるかだけを見るモードがある
PowerShell の、-WhatIf もそう
>>346
は、あちこちで、rm -rf /
を書いてる荒らしだから、実行しないように!
353デフォルトの名無しさん
2019/06/13(木) 01:15:05.86ID:uE2MTK17 >>235
Kotlin
https://paiza.io/projects/e1tMs1B9gF4m-AWN-z-Gyg
Set に全て入れて'A'..'Z'のSetから引くやり方で足りない文字は全て出すようにした。
Kotlin
https://paiza.io/projects/e1tMs1B9gF4m-AWN-z-Gyg
Set に全て入れて'A'..'Z'のSetから引くやり方で足りない文字は全て出すようにした。
354デフォルトの名無しさん
2019/06/13(木) 01:43:17.30ID:SaZXT9dZ355デフォルトの名無しさん
2019/06/13(木) 01:44:02.67ID:uE2MTK17 >>344
Linux や UNIX 系 OS で良く使われる find コマンドの場合は次のようにできる。
find '対象のディレクトリ' \( -type f -name '*.dir' -o -type d \) -delete
-delete が使えない find の場合は
find '対象のディレクトリ' -depth -type f -name '*.jpg' -exec rm {} \; -o -type d -exec rmdir {} \;
但し *.jpg 以外のファイルがあったら削除されないのでそのディレクトリの削除はできない。
Windows の場合でも WSL の Linux 環境か、Cygwin環境等では同じやり方が使える。
素の Windows だと find.exe という同名の全く違う動きをするコマンドがあるので同じやり方はできない。
Linux や UNIX 系 OS で良く使われる find コマンドの場合は次のようにできる。
find '対象のディレクトリ' \( -type f -name '*.dir' -o -type d \) -delete
-delete が使えない find の場合は
find '対象のディレクトリ' -depth -type f -name '*.jpg' -exec rm {} \; -o -type d -exec rmdir {} \;
但し *.jpg 以外のファイルがあったら削除されないのでそのディレクトリの削除はできない。
Windows の場合でも WSL の Linux 環境か、Cygwin環境等では同じやり方が使える。
素の Windows だと find.exe という同名の全く違う動きをするコマンドがあるので同じやり方はできない。
356デフォルトの名無しさん
2019/06/13(木) 02:18:28.38ID:N68D4F9N >>352
あれだけ周りから荒らし認定されても全く態度を改めないお前が、他人を荒らしだなどとよく言えるな。
あれだけ周りから荒らし認定されても全く態度を改めないお前が、他人を荒らしだなどとよく言えるな。
357デフォルトの名無しさん
2019/06/13(木) 07:56:16.47ID:C3vlVMf6 >>355
「jpegファイルが入っていたディレクトリの」削除になっていないですよ
「jpegファイルが入っていたディレクトリの」削除になっていないですよ
358デフォルトの名無しさん
2019/06/13(木) 09:22:03.12ID:387c3JPq >>322
Haskellでオーソドックスに。
main = mapM_ (print.f) [1,34,10000,0]
f = length.f'
where
f' n | n < 1 = error "Please n > 0 number."
f' 1 = []
f' n | even n = n:f' (n `div` 2)
f' n = n:f' (n - 1)
Out:
0
6
17
Program error: Please n > 0 number.
Haskellでオーソドックスに。
main = mapM_ (print.f) [1,34,10000,0]
f = length.f'
where
f' n | n < 1 = error "Please n > 0 number."
f' 1 = []
f' n | even n = n:f' (n `div` 2)
f' n = n:f' (n - 1)
Out:
0
6
17
Program error: Please n > 0 number.
359デフォルトの名無しさん
2019/06/13(木) 09:23:37.93ID:387c3JPq >>235
Haskellで正規表現知らん奴が。。。
import Data.List
main = mapM_ (print.f) ["BCDEFGHIJKLMNOPQRSTUVWXYZ", "YIZFOADLMWCRUTGSVQKJEHNBP"]
f = f' ['A'..'Z']
where
f' [x] _ = x
f' az (x:xs) = f' (delete x az) xs
Out:
'A'
'X'
Haskellで正規表現知らん奴が。。。
import Data.List
main = mapM_ (print.f) ["BCDEFGHIJKLMNOPQRSTUVWXYZ", "YIZFOADLMWCRUTGSVQKJEHNBP"]
f = f' ['A'..'Z']
where
f' [x] _ = x
f' az (x:xs) = f' (delete x az) xs
Out:
'A'
'X'
360デフォルトの名無しさん
2019/06/13(木) 09:39:44.91ID:Br2wLKeL361デフォルトの名無しさん
2019/06/13(木) 10:41:34.39ID:n1M8G6tH 良問ですな
362デフォルトの名無しさん
2019/06/13(木) 20:07:47.87ID:CBVgpEUY お題
実行すると1から6までの数字のどれか1つを返すサイコロのプログラム
表示可能なら以下の文字列を使っても良い
⚀⚁⚂⚃⚄⚅
実行すると1から6までの数字のどれか1つを返すサイコロのプログラム
表示可能なら以下の文字列を使っても良い
⚀⚁⚂⚃⚄⚅
363デフォルトの名無しさん
2019/06/13(木) 20:39:06.34ID:Kt3d2lSx ⚀ しか出さないものでもいいのけ?w
364デフォルトの名無しさん
2019/06/13(木) 20:40:29.16ID:l9amdy+N >>362 PHP
1
1
365デフォルトの名無しさん
2019/06/13(木) 21:09:03.26ID:UDXJ1rkZ >>362 javascript
'⚀'
'⚀'
366デフォルトの名無しさん
2019/06/13(木) 21:18:28.25ID:Oox4dDUw >>362 Ruby
p$.
p$.
367デフォルトの名無しさん
2019/06/13(木) 21:29:38.97ID:yBwKh2Mt >>362 Ruby
def dice
n = [0, 0, 0, 0, 0, 0]
1000000.times do n[(0...6).to_a.sample] += 1 end
p n
n.rindex(n.max) + 1
end
puts dice
def dice
n = [0, 0, 0, 0, 0, 0]
1000000.times do n[(0...6).to_a.sample] += 1 end
p n
n.rindex(n.max) + 1
end
puts dice
368蟻人間 ◆T6xkBnTXz7B0
2019/06/13(木) 21:38:38.55ID:FGFZkT/Z お題: トランプのハートの1〜mとダイヤの1〜mの合計2m枚(1≦m≦9)を使って神経衰弱ゲームをするプレーヤーを実装し、n人のプレーヤーで神経衰弱ゲームをシミュレーションせよ。
カードは横一列に並べられる。最初は全て裏面でランダムな並びとする。
プレーヤーはカード番号の並びを文字列として読み取ることができる(裏面はゼロと見なす)。
カードは横一列に並べられる。最初は全て裏面でランダムな並びとする。
プレーヤーはカード番号の並びを文字列として読み取ることができる(裏面はゼロと見なす)。
369デフォルトの名無しさん
2019/06/13(木) 21:41:29.88ID:flist1Oo370デフォルトの名無しさん
2019/06/13(木) 21:45:57.30ID:V6nODsfN371デフォルトの名無しさん
2019/06/13(木) 21:47:11.24ID:yBwKh2Mt >>362
puts Time.now.sec % 6 + 1
puts Time.now.sec % 6 + 1
372蟻人間 ◆T6xkBnTXz7B0
2019/06/13(木) 22:27:44.15ID:FGFZkT/Z >>368
出力例。
000000
プレーヤー1が開きました。
100200
不一致。閉じます。
000000
プレーヤー2が開きました。
110000
一致。プレーヤー2は計2枚獲得。
プレーヤー2が開きました。
110202
一致。プレーヤー2は計4枚獲得。
プレーヤー2が開きました。
113232
一致。プレーヤー2は計6枚獲得。
プレーヤー2の勝ち。
出力例。
000000
プレーヤー1が開きました。
100200
不一致。閉じます。
000000
プレーヤー2が開きました。
110000
一致。プレーヤー2は計2枚獲得。
プレーヤー2が開きました。
110202
一致。プレーヤー2は計4枚獲得。
プレーヤー2が開きました。
113232
一致。プレーヤー2は計6枚獲得。
プレーヤー2の勝ち。
373蟻人間 ◆T6xkBnTXz7B0
2019/06/13(木) 22:55:45.20ID:FGFZkT/Z374デフォルトの名無しさん
2019/06/15(土) 12:26:21.79ID:n7CfuAo6 >>362
Kotlin スクリプト
Unicode の DIE FACE-1 〜 6 を使う場合はこれ。
println((0x2680 + kotlin.random.Random.nextInt(6)).toChar())
ASCII の数字(所謂半角の数字)にしたい場合はこれ。
println(('0' + kotlin.random.Random.nextInt(6)).toChar())
漢数字にしたければこれ。(これにサイコロの文字を割り当てても良い)
println("一二三四五六"[kotlin.random.Random.nextInt(6)])
Kotlin スクリプト
Unicode の DIE FACE-1 〜 6 を使う場合はこれ。
println((0x2680 + kotlin.random.Random.nextInt(6)).toChar())
ASCII の数字(所謂半角の数字)にしたい場合はこれ。
println(('0' + kotlin.random.Random.nextInt(6)).toChar())
漢数字にしたければこれ。(これにサイコロの文字を割り当てても良い)
println("一二三四五六"[kotlin.random.Random.nextInt(6)])
375デフォルトの名無しさん
2019/06/15(土) 12:27:27.56ID:n7CfuAo6 あ、ASCII の場合は何も考えずに1足してただ出力すれば良いだけだった。
まあいか。
まあいか。
376デフォルトの名無しさん
2019/06/15(土) 14:29:00.37ID:54Zm/EIO >>362 なんでそんなの出すんだよ。、問題になってないじゃないか。
解答 ⚄
解答 ⚄
377デフォルトの名無しさん
2019/06/15(土) 16:05:02.20ID:BY4KYcRQ ダイスってトライグラフじゃねーか!!
色々変換かけないと出せなくて苦しい。@C++。
ちなみにトライグラフの仕様は削除されました。
色々変換かけないと出せなくて苦しい。@C++。
ちなみにトライグラフの仕様は削除されました。
378デフォルトの名無しさん
2019/06/15(土) 16:38:27.08ID:0Ytlw1xG >>371
イカサマ賽じゃねーか
イカサマ賽じゃねーか
379デフォルトの名無しさん
2019/06/15(土) 16:46:37.42ID:BY4KYcRQ https://ideone.com/HU8OdB
>>362 C++
メモリ上に持つことはできてデバッガでも表示されるが、iostreamが認識なくて数字になる。
wchar_tのように組み込み型になってないみたい。@VC++
にわかにはここまでしかできない。Orz
>>362 C++
メモリ上に持つことはできてデバッガでも表示されるが、iostreamが認識なくて数字になる。
wchar_tのように組み込み型になってないみたい。@VC++
にわかにはここまでしかできない。Orz
380デフォルトの名無しさん
2019/06/16(日) 12:54:26.74ID:yFpqmFPd >>362 R
cat(sample(1:6,1))
cat(sample(1:6,1))
381デフォルトの名無しさん
2019/06/16(日) 14:16:01.82ID:e+LWqLgl >>362 Python
import random
for _ in range(10) : print(random.choice("⚀⚁⚂⚃⚄⚅"), end=' ')
# ⚅ ⚅ ⚁ ⚃ ⚀ ⚃ ⚁ ⚄ ⚂ ⚀
import random
for _ in range(10) : print(random.choice("⚀⚁⚂⚃⚄⚅"), end=' ')
# ⚅ ⚅ ⚁ ⚃ ⚀ ⚃ ⚁ ⚄ ⚂ ⚀
382デフォルトの名無しさん
2019/06/16(日) 14:54:11.08ID:NJ2skO19 もふもふ
383デフォルトの名無しさん
2019/06/16(日) 16:47:25.75ID:NJ2skO19 神経衰弱を作っていたが、VC2019が仮想関数をうまく扱ってくれない感じで大爆死。
384デフォルトの名無しさん
2019/06/16(日) 16:54:34.40ID:NJ2skO19 https://dotup.org/uploda/dotup.org1873815.zip
ここまで作ってデバッグしようとしたらシェアードポインタが継承扱ってくれない感じになった。
ここまで作ってデバッグしようとしたらシェアードポインタが継承扱ってくれない感じになった。
385デフォルトの名無しさん
2019/06/16(日) 17:02:05.88ID:e+LWqLgl >>384 前の方からの VC++ の人かな?
なんでそんなに苦労してるのかが理解できない。
使った事ないから知らないけど。
でも、貼るんだったらzip は辞めようよ。 怖くて開けない。 ソースだけなら動かなくてもideon に張り付ければ良いじゃん。
なんでそんなに苦労してるのかが理解できない。
使った事ないから知らないけど。
でも、貼るんだったらzip は辞めようよ。 怖くて開けない。 ソースだけなら動かなくてもideon に張り付ければ良いじゃん。
386デフォルトの名無しさん
2019/06/16(日) 17:12:16.15ID:NJ2skO19387デフォルトの名無しさん
2019/06/16(日) 17:16:39.10ID:NJ2skO19 https://ideone.com/mqLP90
C++。開発中だが、頓挫したので挙げておく。
面倒なことしてるとは言うけど、プレイヤー分けたほうがそれっぽいかと思って分けてある。
あまり深い意味はないよ。
C++。開発中だが、頓挫したので挙げておく。
面倒なことしてるとは言うけど、プレイヤー分けたほうがそれっぽいかと思って分けてある。
あまり深い意味はないよ。
お題:
a, b, c, d, e, f, g, h, i, j, x は正の整数で
a^3 - b^3 = c^3 - d^3 = e^3 - f^3 = g^3 - h^3 = i^3 - j^3 = x
を満たす.
条件を満たす最小x と対応する a, b, c, d, e, f, g, h, i, j を求めよ
a, b, c, d, e, f, g, h, i, j, x は正の整数で
a^3 - b^3 = c^3 - d^3 = e^3 - f^3 = g^3 - h^3 = i^3 - j^3 = x
を満たす.
条件を満たす最小x と対応する a, b, c, d, e, f, g, h, i, j を求めよ
389デフォルトの名無しさん
2019/06/16(日) 18:10:27.80ID:0YuYzKwS >>387
仮想関数名前違うじゃん
仮想関数名前違うじゃん
390デフォルトの名無しさん
2019/06/16(日) 18:59:11.36ID:NJ2skO19 https://ideone.com/StMJSA
>>神経衰弱。
一応、ランダムプレイヤーで終了まで走ったのでアップ。おしまい。
いい暇つぶしになった。
>>389
あぁ、別スレにも投げたんだが、即反応があって赤っ恥だよ。
直したところ、通ったので適当にデバッグが可能になった。
>>神経衰弱。
一応、ランダムプレイヤーで終了まで走ったのでアップ。おしまい。
いい暇つぶしになった。
>>389
あぁ、別スレにも投げたんだが、即反応があって赤っ恥だよ。
直したところ、通ったので適当にデバッグが可能になった。
391デフォルトの名無しさん
2019/06/16(日) 19:15:07.52ID:SF357sr+ NervousBreakdown って名前はユーモアでそうしてるだけ?
カードゲームの神経衰弱って、(一部の)日本人しか連想できなさそうな名前だけど
カードゲームの神経衰弱って、(一部の)日本人しか連想できなさそうな名前だけど
392デフォルトの名無しさん
2019/06/16(日) 19:15:53.29ID:EJ1uP6fE 俺は英語に詳しいんだ
393デフォルトの名無しさん
2019/06/16(日) 19:17:19.26ID:NJ2skO19394デフォルトの名無しさん
2019/06/16(日) 21:36:03.28ID:0GeuHYqO ゲーム名とかは翻訳に掛けるんじゃなくてwikipediaとかで調べればいいと思うよw
395デフォルトの名無しさん
2019/06/16(日) 21:52:41.52ID:paRCIAHR >>393
concentration または memory ではないかな。
concentration または memory ではないかな。
396デフォルトの名無しさん
2019/06/16(日) 22:00:19.21ID:NJ2skO19398デフォルトの名無しさん
2019/06/16(日) 22:24:36.49ID:81Mc3quK 数学の宿題解いてくださいスレ立てれば
>>398
どうして、あるいはどういう点によって、これは宿題だと思ったのですか?
どうして、あるいはどういう点によって、これは宿題だと思ったのですか?
400蟻人間 ◆T6xkBnTXz7B0
2019/06/16(日) 23:21:46.39ID:QegIZpn+ お題: 入力からC言語の整数リテラルもしくは浮動小数点数リテラルを読み取り、型の種類、実際の値の十進表現、そして型のバイトサイズを出力するプログラム。
入力が不正な場合はERRORと出力せよ。
前後の空白は読み飛ばすこと。
入力が不正な場合はERRORと出力せよ。
前後の空白は読み飛ばすこと。
401デフォルトの名無しさん
2019/06/17(月) 01:22:44.99ID:ikLTlFyV402デフォルトの名無しさん
2019/06/17(月) 01:30:23.22ID:ikLTlFyV >>397
数字が異なるモノであることをチェックするのが面倒だなぁ。字数多くて。
数字が異なるモノであることをチェックするのが面倒だなぁ。字数多くて。
403デフォルトの名無しさん
2019/06/17(月) 03:31:09.45ID:lxC/KfUO >>388,397
俺も適当に回したもので1412774811が出たが、
それが正しいかどうか調べるのは21701までの総当たりで1412774811より小さい条件を満たすものが無けりゃええんよな?
21702^3 - 21701^3が1412865307になって1412774811を超えるけーの
俺も適当に回したもので1412774811が出たが、
それが正しいかどうか調べるのは21701までの総当たりで1412774811より小さい条件を満たすものが無けりゃええんよな?
21702^3 - 21701^3が1412865307になって1412774811を超えるけーの
404デフォルトの名無しさん
2019/06/17(月) 14:19:11.19ID:ikLTlFyV https://ideone.com/yqze0k
>>388 >>397
総当たり(予定)
概算書いてあるから簡単かと思ったら、リリースでも終わらないでござる。
よく考えたら、15ビットの10乗だったので死ぬわ。でござる。
>>388 >>397
総当たり(予定)
概算書いてあるから簡単かと思ったら、リリースでも終わらないでござる。
よく考えたら、15ビットの10乗だったので死ぬわ。でござる。
405デフォルトの名無しさん
2019/06/17(月) 14:44:54.54ID:ikLTlFyV406デフォルトの名無しさん
2019/06/17(月) 17:11:31.48ID:DBfNM9nt >>368 Squeak/Pharo Smalltalk
| m scores turn cards mask print |
m := 3.
scores := #(0 0).
cards := ((1 to: m), (1 to: m)) shuffled.
Transcript open; clear.
(print := [:val | Transcript cr; show: val]) value: cards * (mask := Array new: m*2 withAll: 0).
turn := 1.
[mask includes: 0] whileTrue: [
| player choice prevMask pair |
player := turn - 1 \\ 2 + 1.
choice := (mask negated + 1 * (1 to: m * 2) copyWithout: 0) shuffled first: 2.
prevMask := mask copy.
pair := choice collect: [:pos | mask at: pos put: 1. cards at: pos].
print value: 'プレーヤー', player asString, 'が開きました。'; value: cards * mask.
pair asSet size caseOf: {
[2] -> [print value: '不一致。閉じます。'; value: (mask := prevMask) * cards. turn := turn + 1].
[1] -> [print value: ('一致。プレーヤー{1}は計{2}枚獲得。' format: {player. scores at: player incrementBy: 2})]
}
].
print value: (scores asSet size = 1
ifTrue: ['引き分け。']
ifFalse: ['プレーヤー', (scores indexOf: scores max) asString, 'の勝ち。'])
| m scores turn cards mask print |
m := 3.
scores := #(0 0).
cards := ((1 to: m), (1 to: m)) shuffled.
Transcript open; clear.
(print := [:val | Transcript cr; show: val]) value: cards * (mask := Array new: m*2 withAll: 0).
turn := 1.
[mask includes: 0] whileTrue: [
| player choice prevMask pair |
player := turn - 1 \\ 2 + 1.
choice := (mask negated + 1 * (1 to: m * 2) copyWithout: 0) shuffled first: 2.
prevMask := mask copy.
pair := choice collect: [:pos | mask at: pos put: 1. cards at: pos].
print value: 'プレーヤー', player asString, 'が開きました。'; value: cards * mask.
pair asSet size caseOf: {
[2] -> [print value: '不一致。閉じます。'; value: (mask := prevMask) * cards. turn := turn + 1].
[1] -> [print value: ('一致。プレーヤー{1}は計{2}枚獲得。' format: {player. scores at: player incrementBy: 2})]
}
].
print value: (scores asSet size = 1
ifTrue: ['引き分け。']
ifFalse: ['プレーヤー', (scores indexOf: scores max) asString, 'の勝ち。'])
407デフォルトの名無しさん
2019/06/17(月) 18:07:12.55ID:1OuEx0ms408蟻人間 ◆T6xkBnTXz7B0
2019/06/17(月) 18:27:18.50ID:00OaCjzA お題: あなたは完全予約制の映画館の運営責任者だ。映画館にある10x10席について予約アプリを作ることになった。
仕様:
2桁の座席番号で空いてる席を予約できる。
「おまかせ」ボタンで席を決めてくれる。
席が決まったら、整理券を発券する。
「印刷」ボタンで予約状況を印刷できる。
「売上」ボタンで売上を計算できる。
仕様:
2桁の座席番号で空いてる席を予約できる。
「おまかせ」ボタンで席を決めてくれる。
席が決まったら、整理券を発券する。
「印刷」ボタンで予約状況を印刷できる。
「売上」ボタンで売上を計算できる。
>>409
こちらで書いた試行プログラムにバグが見つかりました
4通りの三乗差で表現できる最小数は
165^3-72^3=162^3-51^3=178^3-115^3=678^3-675^3=4118877
20年ぶりにバグ出ししてしまった…てへぺろ
こちらで書いた試行プログラムにバグが見つかりました
4通りの三乗差で表現できる最小数は
165^3-72^3=162^3-51^3=178^3-115^3=678^3-675^3=4118877
20年ぶりにバグ出ししてしまった…てへぺろ
411デフォルトの名無しさん
2019/06/17(月) 20:39:53.72ID:kwMyLS9e いっっっつも問題修正してるじゃん。
雑なんだよ。センスも能力も無いのでは?
雑なんだよ。センスも能力も無いのでは?
>>411
はい、能力もセンスもありませんので、こちらで胸を借りようかと(宿題スレもあわせて)10年くらい書き続けてこの様だったりするのです…
はい、能力もセンスもありませんので、こちらで胸を借りようかと(宿題スレもあわせて)10年くらい書き続けてこの様だったりするのです…
>>411
あれ?
直前の私のお題は
https://mevius.5ch.net/test/read.cgi/tech/1524570314/795,796
https://mevius.5ch.net/test/read.cgi/tech/1480579110/891
でしたが、「いっつも」と言われるほど問題を修正しまくっていましたっけ?
あれ?
直前の私のお題は
https://mevius.5ch.net/test/read.cgi/tech/1524570314/795,796
https://mevius.5ch.net/test/read.cgi/tech/1480579110/891
でしたが、「いっつも」と言われるほど問題を修正しまくっていましたっけ?
414デフォルトの名無しさん
2019/06/17(月) 23:25:47.26ID:kD34CthS415デフォルトの名無しさん
2019/06/18(火) 01:58:28.56ID:yt8XeQST >>408
なんのアプリ?
なんのアプリ?
416デフォルトの名無しさん
2019/06/18(火) 06:13:34.61ID:3nOE2mBA プログラム板にキチガイ降臨中!botに一晩も反応する異常さ
一般人(学校恩師)に殺害予告をしているのでスレ建て通報してください。
https://mevius.5ch.net/test/read.cgi/tech/1559872586/
142 名前:a4 ◆700L1Efzuv 投稿日:2019/06/18(火) 05:29:55 ID://qVkzO
>>141
名古屋の人な 俺ね、君の問題を大橋先生と混ぜないことにする。つまりね、
片桐孝洋のことをボコろうと思う。普通に顎の骨を折る。これくらいで警察来るか?
一般市民とかさ、普通にさ、俺らの秘密なんだけどさ、日本人なんて復活ねーから。
一般人(学校恩師)に殺害予告をしているのでスレ建て通報してください。
https://mevius.5ch.net/test/read.cgi/tech/1559872586/
142 名前:a4 ◆700L1Efzuv 投稿日:2019/06/18(火) 05:29:55 ID://qVkzO
>>141
名古屋の人な 俺ね、君の問題を大橋先生と混ぜないことにする。つまりね、
片桐孝洋のことをボコろうと思う。普通に顎の骨を折る。これくらいで警察来るか?
一般市民とかさ、普通にさ、俺らの秘密なんだけどさ、日本人なんて復活ねーから。
417デフォルトの名無しさん
2019/06/18(火) 10:36:11.03ID:gPTwn7rm お題:あからさまなループ(再帰、goto等も含む)を使わずに1から100までを表示するコードを書いてください。
参考(ネタバレ注意)
https://www.quora.com/How-can-I-print-1-to-100-in-C%2B%2B-without-a-loop-goto-or-recursion
参考(ネタバレ注意)
https://www.quora.com/How-can-I-print-1-to-100-in-C%2B%2B-without-a-loop-goto-or-recursion
418デフォルトの名無しさん
2019/06/18(火) 14:41:48.42ID:C7xWA/+P >>417 Squeak/Pharo Smalltalk
1000 / 999 squared asScaledDecimal: 300
"=> 0.001002003004005006007008009010
011012013014015016017018019020
<snip>
081082083084085086087088089090
091092093094095096097098099100s300 "
1000 / 999 squared asScaledDecimal: 300
"=> 0.001002003004005006007008009010
011012013014015016017018019020
<snip>
081082083084085086087088089090
091092093094095096097098099100s300 "
419デフォルトの名無しさん
2019/06/18(火) 17:18:04.54ID:yt+j24gZ420デフォルトの名無しさん
2019/06/18(火) 17:25:13.33ID:0ZczZHMk421デフォルトの名無しさん
2019/06/18(火) 17:31:24.32ID:GIiOlD+x422デフォルトの名無しさん
2019/06/18(火) 23:24:46.27ID:iS/QjWZR423デフォルトの名無しさん
2019/06/18(火) 23:31:47.74ID:uzZY1452 パズルとか頓智とかゴルフとかそういう系統でしょ
あなたにはおそらく今後5年間は理解できそうにないからわざわざ首を突っ込まなくていいんじゃない?
それとそのコードだとforを使ってることになるからダメだよ
「なんでダメなの?」と聞かれてもその手の遊びを本当に理解できない物体がいるのでコミュニケーション不可能だから答える必要はない
あなたにはおそらく今後5年間は理解できそうにないからわざわざ首を突っ込まなくていいんじゃない?
それとそのコードだとforを使ってることになるからダメだよ
「なんでダメなの?」と聞かれてもその手の遊びを本当に理解できない物体がいるのでコミュニケーション不可能だから答える必要はない
424デフォルトの名無しさん
2019/06/18(火) 23:38:20.95ID:LmXiKmLw printで1から100まで出力したらダメですかw
425デフォルトの名無しさん
2019/06/19(水) 00:18:45.19ID:SHnWP/2E >>424
別にいいけど、受けないとわかってるギャグを言う時と同じくらい恥ずかしいと感じるんじゃないかな
別にいいけど、受けないとわかってるギャグを言う時と同じくらい恥ずかしいと感じるんじゃないかな
426デフォルトの名無しさん
2019/06/19(水) 00:25:06.13ID:vbzhpePV >>423 ま、いいけどさ、for という言葉が嫌いなら
>>417 Python
print(list(range(1,101)))
結果
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
>>417 Python
print(list(range(1,101)))
結果
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
427デフォルトの名無しさん
2019/06/19(水) 00:26:59.96ID:5w3Qflb9 rangeもダメです
428デフォルトの名無しさん
2019/06/19(水) 00:29:09.75ID:fEpvNKSm >>397
2分46秒で答えが出た。このくらいで答えが出るはいいお題。
2分46秒で答えが出た。このくらいで答えが出るはいいお題。
429デフォルトの名無しさん
2019/06/19(水) 00:29:30.92ID:vbzhpePV >>427 何なら良いんだよ。まさかgoto 文以外はダメだとか言わないだろうな。
もう一度聞くが、for と range 以外なら良いのか?
もう一度聞くが、for と range 以外なら良いのか?
430デフォルトの名無しさん
2019/06/19(水) 00:31:10.59ID:5w3Qflb9 >>429
じゃあrangeは良いです
じゃあrangeは良いです
431デフォルトの名無しさん
2019/06/19(水) 01:07:24.29ID:vbzhpePV432デフォルトの名無しさん
2019/06/19(水) 01:35:17.48ID:mmqopiXL >>417 Perl5
print "@{[1..100]}\n";
実行結果
$ perl 14_417.pl
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
89 90 91 92 93 94 95 96 97 98 99 100
print "@{[1..100]}\n";
実行結果
$ perl 14_417.pl
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
89 90 91 92 93 94 95 96 97 98 99 100
433デフォルトの名無しさん
2019/06/19(水) 01:47:16.78ID:G/RPQnNp434デフォルトの名無しさん
2019/06/19(水) 01:57:49.22ID:G/RPQnNp 言い訳するんやったら、ループじゃなくて、掛け算です。
と、言ってみる。
と、言ってみる。
435デフォルトの名無しさん
2019/06/19(水) 03:30:31.24ID:4D/OEXM7436デフォルトの名無しさん
2019/06/19(水) 05:20:19.54ID:NxDxxkQ7 >>417 R
cat(1:100)
cat(1:100)
437デフォルトの名無しさん
2019/06/19(水) 09:45:26.08ID:gZl/9gTZ クソ問出しといて面白い回答でオレ様を感心させろとか言う厚顔無恥なクズ
438デフォルトの名無しさん
2019/06/19(水) 10:47:05.36ID:WYELJAwQ439デフォルトの名無しさん
2019/06/19(水) 11:28:35.01ID:AE1x6OvS だから言ったじゃん
その手のユーモアを全く理解できない物体がいて、そいつらとはコミュニケーション不可能だ、って
わざわざ首を突っ込んできてクソ呼ばわり、害悪そのものだ
「理解不可能」「出題者の目的」「ルールが分からん」と三拍子揃ってるからコミュニケーション不可能の異質な生物だと思った方がいい
for rangeのを出して来て「ループしてないだろ?」と聞く時点でもはやコミュニケーション不可能、価値感が根本から違う
表面だけは人間の姿形をしてるが中身は全然違う物体で、そいつらとはコミュニケーションや意志疎通は出来ない
絶望的に話が合わないし価値感も全く違うので、人語を解するコミュニケーション不可能な人型生物、程度に見ておいた方がいい
その手のユーモアを全く理解できない物体がいて、そいつらとはコミュニケーション不可能だ、って
わざわざ首を突っ込んできてクソ呼ばわり、害悪そのものだ
「理解不可能」「出題者の目的」「ルールが分からん」と三拍子揃ってるからコミュニケーション不可能の異質な生物だと思った方がいい
for rangeのを出して来て「ループしてないだろ?」と聞く時点でもはやコミュニケーション不可能、価値感が根本から違う
表面だけは人間の姿形をしてるが中身は全然違う物体で、そいつらとはコミュニケーションや意志疎通は出来ない
絶望的に話が合わないし価値感も全く違うので、人語を解するコミュニケーション不可能な人型生物、程度に見ておいた方がいい
440デフォルトの名無しさん
2019/06/19(水) 14:20:18.59ID:obZmDbZo おだいじに
442デフォルトの名無しさん
2019/06/19(水) 16:12:40.53ID:XyjBYhsR443デフォルトの名無しさん
2019/06/19(水) 17:16:09.66ID:ogviAWT/ >>417 javascript
console.log(Array.from({length:100},(_,i)=>i+1).join`\n`)
console.log(Array.from({length:100},(_,i)=>i+1).join`\n`)
444デフォルトの名無しさん
2019/06/19(水) 19:47:06.93ID:OY3s5aed >>408
一席いくら?
一席いくら?
446デフォルトの名無しさん
2019/06/19(水) 21:58:53.08ID:5w3Qflb9447デフォルトの名無しさん
2019/06/19(水) 22:25:22.23ID:n9mQOThz >>388
a^n-b^nの因数分解を眺めていたらnが素数の時はa-bの項しかないようだ。そして項数が素数になっている。
a^n-b^nの因数分解を眺めていたらnが素数の時はa-bの項しかないようだ。そして項数が素数になっている。
448デフォルトの名無しさん
2019/06/19(水) 23:11:59.86ID:1TMSR9rp >>446
再帰…
再帰…
449デフォルトの名無しさん
2019/06/20(木) 02:27:04.40ID:oTe0B3jI Javaって言語は、一体何のために作られたのか…
450デフォルトの名無しさん
2019/06/20(木) 02:37:37.28ID:oTe0B3jI451デフォルトの名無しさん
2019/06/20(木) 02:52:32.60ID:Vo9FXuh9452デフォルトの名無しさん
2019/06/20(木) 03:12:52.52ID:abq7/G7i >>417 phi
print(oneToHundredSeparatedBySpace())
print(oneToHundredSeparatedBySpace())
453デフォルトの名無しさん
2019/06/20(木) 03:22:25.03ID:BE85dc2p >>417 PHP
1
0999999999988888888887777777777666666666655555555554444444444333333333322222222221111111111
0987654321098765432109876543210987654321098765432109876543210987654321098765432109876543210987654354321
縦書きなので右から左へ。
1
0999999999988888888887777777777666666666655555555554444444444333333333322222222221111111111
0987654321098765432109876543210987654321098765432109876543210987654321098765432109876543210987654354321
縦書きなので右から左へ。
454デフォルトの名無しさん
2019/06/20(木) 08:15:15.24ID:eWAtuK2L >>450
何のためにって、お題に対して面白い解き方をするコードを挙げているのだから、コードから仕様を解釈するのが困難だなんて指摘は的外れだろうよ
何のためにって、お題に対して面白い解き方をするコードを挙げているのだから、コードから仕様を解釈するのが困難だなんて指摘は的外れだろうよ
455デフォルトの名無しさん
2019/06/20(木) 08:45:45.25ID:/HnXr8PE >>450
ドカタはお前やwww
ドカタはお前やwww
456デフォルトの名無しさん
2019/06/20(木) 12:35:25.86ID:C9bRCGTz >>417
スクリプトか、それに準ずる文法持ってる言語有利やな。
Haskell
main = print [1..100]
それは1ー100のリストやろ言うなら
main = mapM print [1..100]
とか改行無しなら
main = mapM (putStr.show) [1..100]
“,”で区切れデコ助野郎言うなら
main = (putStrLn.init.concat.map ((++ ",").show)) [1..100]
スクリプトか、それに準ずる文法持ってる言語有利やな。
Haskell
main = print [1..100]
それは1ー100のリストやろ言うなら
main = mapM print [1..100]
とか改行無しなら
main = mapM (putStr.show) [1..100]
“,”で区切れデコ助野郎言うなら
main = (putStrLn.init.concat.map ((++ ",").show)) [1..100]
457デフォルトの名無しさん
2019/06/20(木) 13:40:58.14ID:8QzdDreI mapは実質ループ処理やろ…
458デフォルトの名無しさん
2019/06/20(木) 14:00:32.25ID:yAxi76dJ mapはダメです
459デフォルトの名無しさん
2019/06/20(木) 15:39:33.58ID:lLho4HyI460デフォルトの名無しさん
2019/06/20(木) 16:32:25.26ID:Gh9YFRfh >>417 はループ禁止とか言いながら、プログラムの外でループしてるだけのプログラムじゃないか。
プログラムにループかなくて繰り返しなんてあり得ない事がわからないバカなんだろうな。
プログラムにループかなくて繰り返しなんてあり得ない事がわからないバカなんだろうな。
461デフォルトの名無しさん
2019/06/20(木) 16:35:07.14ID:lLho4HyI 屁理屈の応酬が見たかったんだろうけどね。
462デフォルトの名無しさん
2019/06/20(木) 16:43:22.80ID:xEuEtm2x そういう意味ではソフトから見て最小単位であるアセンブラのブロック転送命令もマイクロコードでループしてるわね。
と言う訳で、解なしが正解かな?
と言う訳で、解なしが正解かな?
463デフォルトの名無しさん
2019/06/20(木) 17:02:57.57ID:UeiaYI4k あからさまなループ禁止でループ完全な禁止じゃないでしょそもそも
464デフォルトの名無しさん
2019/06/20(木) 17:20:12.64ID:Gh9YFRfh こんなドカタの力仕事の訓練しても何にもならない、こんなので楽しめるなんて ドM だろ。
綺麗なプログラムは許さない。できるだけ小汚いプログラムしかダメ。 いかに小汚くプログラム出来るかのコンテストです。
>>463 屁理屈だな。map や range などは明らかなループじゃないだろ。 明らかなループってなんだ?
1行で書かれた綺麗なプログラムは許しませんと言えよ。
綺麗なプログラムは許さない。できるだけ小汚いプログラムしかダメ。 いかに小汚くプログラム出来るかのコンテストです。
>>463 屁理屈だな。map や range などは明らかなループじゃないだろ。 明らかなループってなんだ?
1行で書かれた綺麗なプログラムは許しませんと言えよ。
465デフォルトの名無しさん
2019/06/20(木) 17:24:08.31ID:lLho4HyI 人の持つ適度さっていうのを裁量してるともとれるし。
466デフォルトの名無しさん
2019/06/20(木) 17:25:50.68ID:UeiaYI4k mapだめって言ってるのが出題者どうかもわかんねえじゃん
あと解きたくないなら解きたくないでいいしほっとけばいい
曖昧だと思うなら質問すればいい
あと訓練するためのスレでもない
あと解きたくないなら解きたくないでいいしほっとけばいい
曖昧だと思うなら質問すればいい
あと訓練するためのスレでもない
467デフォルトの名無しさん
2019/06/20(木) 17:49:38.66ID:yAxi76dJ じゃあmapは良いです
468デフォルトの名無しさん
2019/06/20(木) 17:50:26.82ID:yAxi76dJ >>464
ドカタはダメです
ドカタはダメです
469デフォルトの名無しさん
2019/06/20(木) 18:40:11.89ID:7bp91DBM クソ問。
470デフォルトの名無しさん
2019/06/20(木) 18:42:30.38ID:Gh9YFRfh >>466 出題者は聞いたって答えないじゃんか。 ま、クソ問題でしかない。
471デフォルトの名無しさん
2019/06/20(木) 18:43:56.11ID:8yknygrc >>457
あからさまの定義は何?
map内部でループ使ってるからダメってなら、printf内部でループ使ってたらダメって言ってるのと一緒じゃん。
Haskell
main = sequence_ [print x | x <- [1..100]]
あからさまの定義は何?
map内部でループ使ってるからダメってなら、printf内部でループ使ってたらダメって言ってるのと一緒じゃん。
Haskell
main = sequence_ [print x | x <- [1..100]]
472デフォルトの名無しさん
2019/06/20(木) 18:48:20.30ID:PrZKlplW >>471 1行で書けるものは嫌いなんだってさ。
[1..100] なんて大っ嫌いだってさ。 自動生成される数字は全て反則だって。
[1..100] なんて大っ嫌いだってさ。 自動生成される数字は全て反則だって。
473デフォルトの名無しさん
2019/06/20(木) 19:12:37.52ID:lLho4HyI 一応、どの辺がプリミティブかっていうのはあると思うぞ。
オブジェクト指向と手続き型と関数型で均質なプリミティブとはいったい・・・。
ごごご・・・...,,,
オブジェクト指向と手続き型と関数型で均質なプリミティブとはいったい・・・。
ごごご・・・...,,,
474デフォルトの名無しさん
2019/06/20(木) 19:44:30.14ID:dXsduSm6 >>417 Common Lisp
https://ideone.com/s6cgBp
こちらからの移植
http://blog.practical-scheme.net/shiro/20190620-print-100
https://ideone.com/s6cgBp
こちらからの移植
http://blog.practical-scheme.net/shiro/20190620-print-100
475デフォルトの名無しさん
2019/06/20(木) 19:49:49.24ID:Gh9YFRfh >>474 よう解らんけど、それらはループの塊らしいよ。
要はプログラムの中で完結してる解は、全てループが入ってるはず。
要はプログラムの中で完結してる解は、全てループが入ってるはず。
476デフォルトの名無しさん
2019/06/20(木) 19:51:56.16ID:Gh9YFRfh プログラムの外でループさせろという趣旨の問題じゃないのかな?
478デフォルトの名無しさん
2019/06/20(木) 21:16:47.46ID:QhoGDCwl479デフォルトの名無しさん
2019/06/20(木) 22:04:45.76ID:lLho4HyI お題:犬作りましょう。(自由回答)
サンプル:https://ideone.com/jimp7B
人口無能・ドッグを作りましょう。
どこまで作りこむかはあなた次第。
なるべくビジュアライズして見せられるようにすると高得点です。
おひとついかがですか?
サンプル:https://ideone.com/jimp7B
人口無能・ドッグを作りましょう。
どこまで作りこむかはあなた次第。
なるべくビジュアライズして見せられるようにすると高得点です。
おひとついかがですか?
480デフォルトの名無しさん
2019/06/20(木) 22:29:29.17ID:fMa85Kci481デフォルトの名無しさん
2019/06/20(木) 23:38:45.25ID:OLwHtCR1 >>474 がループだとか難癖つけてる土方は
このコードが何やってんのか理解出来てんの?
このコードが何やってんのか理解出来てんの?
482デフォルトの名無しさん
2019/06/20(木) 23:44:11.27ID:Sr/gBML4483デフォルトの名無しさん
2019/06/21(金) 00:14:32.42ID:5YMvPAfL >>481 出題者がループの定義をしていないんだから解らんよ。
format もループといえばループだろ。 繰り返しが入ってるものは全てループ。
format もループといえばループだろ。 繰り返しが入ってるものは全てループ。
484デフォルトの名無しさん
2019/06/21(金) 00:30:08.90ID:smbNU/wq いやいやformatはループじゃないだろ、頭湧いてるのか
485デフォルトの名無しさん
2019/06/21(金) 01:02:14.01ID:Z2iYVQkJ 出題者か外野か知らないけど、ループの定義に拘ってこれはループだとかいうのはほっとけばいいんじゃないか?
そいつらの解釈なんか気にするより、他の誰かが見て感心や納得させられるような物を思い付いたら挙げてみた方が面白い。
そいつらの解釈なんか気にするより、他の誰かが見て感心や納得させられるような物を思い付いたら挙げてみた方が面白い。
486デフォルトの名無しさん
2019/06/21(金) 02:15:56.40ID:8b/72/Ba487デフォルトの名無しさん
2019/06/21(金) 02:51:58.63ID:gD/sRlmt488デフォルトの名無しさん
2019/06/21(金) 07:21:50.48ID:QhChOpgN >>428
制約論理プログラムやデーモン型ソルバー使うと短く書けて面白い。
QR = (CSint **)malloc(STP * sizeof(CSint *));
for(i = 0; i < STP; i++){
QR[i] = cs_createCSint(1, DMIN);
}
xcost = cs_createCSint(1, XMAX);
CSint *sub[STP/2], *add[STP/2], *add1[STP/2];
for(i = 0; i < STP/2; i++) {
sub[i] = cs_Sub(QR[2*i], QR[2*i+1]);
add[i] = cs_Add(QR[2*i], QR[2*i+1]);
add1[i] = cs_Sub(cs_Mul(add[i], add[i]), cs_Mul(QR[2*i], QR[2*i+1]));
cs_Eq(cs_Mul(sub[i], add1[i]), xcost);
cs_GT(sub[i], 0);
}
for(i = 0; i < STP/2 - 1; i++) {
cs_Gt(sub[i], sub[i+1]);
cs_Lt(add1[i], add1[i+1]);
}
cs_AllNeq(&QR[0], STP);
cs_minimize(&QR[0], STP, cs_findFreeVarNbElements, xcost, cost_printSolution);
制約論理プログラムやデーモン型ソルバー使うと短く書けて面白い。
QR = (CSint **)malloc(STP * sizeof(CSint *));
for(i = 0; i < STP; i++){
QR[i] = cs_createCSint(1, DMIN);
}
xcost = cs_createCSint(1, XMAX);
CSint *sub[STP/2], *add[STP/2], *add1[STP/2];
for(i = 0; i < STP/2; i++) {
sub[i] = cs_Sub(QR[2*i], QR[2*i+1]);
add[i] = cs_Add(QR[2*i], QR[2*i+1]);
add1[i] = cs_Sub(cs_Mul(add[i], add[i]), cs_Mul(QR[2*i], QR[2*i+1]));
cs_Eq(cs_Mul(sub[i], add1[i]), xcost);
cs_GT(sub[i], 0);
}
for(i = 0; i < STP/2 - 1; i++) {
cs_Gt(sub[i], sub[i+1]);
cs_Lt(add1[i], add1[i+1]);
}
cs_AllNeq(&QR[0], STP);
cs_minimize(&QR[0], STP, cs_findFreeVarNbElements, xcost, cost_printSolution);
489デフォルトの名無しさん
2019/06/21(金) 07:32:04.38ID:Ocejx0+r490デフォルトの名無しさん
2019/06/21(金) 07:49:55.41ID:i67HMLPS >>417
書き込み制限で途中改行入れたが、もうこれが正解で良いんじゃね?
prinft("1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 "
"51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100");
書き込み制限で途中改行入れたが、もうこれが正解で良いんじゃね?
prinft("1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 "
"51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100");
491デフォルトの名無しさん
2019/06/21(金) 07:56:09.60ID:vf8hmAK4 それも正解でしょ
書くのめんどくさいだけで
書くのめんどくさいだけで
492デフォルトの名無しさん
2019/06/21(金) 08:18:08.17ID:SnH180rX493デフォルトの名無しさん
2019/06/21(金) 08:39:31.90ID:+3mnNN5K >書くのめんどくさい
え?
え?
494デフォルトの名無しさん
2019/06/21(金) 10:11:32.34ID:UUUS7pJl 写経のように一文字一文字手で入力する事が大切なのです。
495デフォルトの名無しさん
2019/06/21(金) 13:49:45.38ID:RHusABfj >>417
再帰、ループ、ループ代わりに使う関数使用禁止だと、
副作用前提なのでファイルやGUI部品(テキストボックスなど)とやり取りするしかない。
Haskell
import System.Exit
import System.Process
-- Windows ver. is String "notloop"(compile source file "notloop.hs)
main = f >> system "./notloop"
f = readFile "count.txt" >>= f'
where
f' "101" = exitWith ExitSuccess
f' n | n == "1\n" = putStr n >> wf n
f' n = putStrLn n >> wf n
wf = writeFile "count.txt".show.(+1).read
ただ、そうなると外と内で相互再帰してるみたいな感覚を覚える。
main = f1 1
f1 101 = return ()
f1 n = print n >> f2 (n + 1)
f2 n = print n >> f1 (n + 1)
再帰、ループ、ループ代わりに使う関数使用禁止だと、
副作用前提なのでファイルやGUI部品(テキストボックスなど)とやり取りするしかない。
Haskell
import System.Exit
import System.Process
-- Windows ver. is String "notloop"(compile source file "notloop.hs)
main = f >> system "./notloop"
f = readFile "count.txt" >>= f'
where
f' "101" = exitWith ExitSuccess
f' n | n == "1\n" = putStr n >> wf n
f' n = putStrLn n >> wf n
wf = writeFile "count.txt".show.(+1).read
ただ、そうなると外と内で相互再帰してるみたいな感覚を覚える。
main = f1 1
f1 101 = return ()
f1 n = print n >> f2 (n + 1)
f2 n = print n >> f1 (n + 1)
496デフォルトの名無しさん
2019/06/21(金) 14:10:09.62ID:aaCZYOrN モナドはダメです
497デフォルトの名無しさん
2019/06/21(金) 17:24:35.02ID:UUUS7pJl #!/bin/sh
echo '1から100まで入力してください。'
read n
echo $n
echo '1から100まで入力してください。'
read n
echo $n
498デフォルトの名無しさん
2019/06/21(金) 17:40:03.54ID:RHusABfj >>417
屁理屈ではあるが、自分自身を呼び出すのでは無く、
別の関数の引数に渡しているので厳密には再帰では無い。
かと言って相互再帰でも無い。
Haskell
main = f 1
f = fa f
fa _ 101 = return ()
fa fb n = print n >> fb (n + 1)
屁理屈ではあるが、自分自身を呼び出すのでは無く、
別の関数の引数に渡しているので厳密には再帰では無い。
かと言って相互再帰でも無い。
Haskell
main = f 1
f = fa f
fa _ 101 = return ()
fa fb n = print n >> fb (n + 1)
499デフォルトの名無しさん
2019/06/21(金) 17:40:30.13ID:8+ftJ9Cm >>492
姑息な!(褒め
姑息な!(褒め
500デフォルトの名無しさん
2019/06/21(金) 17:56:02.69ID:VCA9CZc/501デフォルトの名無しさん
2019/06/21(金) 18:33:41.38ID:edwbENE2 >>500 兄ちゃん、それ言っちゃ終しめーよ。
502デフォルトの名無しさん
2019/06/21(金) 19:58:05.85ID:RHusABfj503デフォルトの名無しさん
2019/06/21(金) 21:26:57.88ID:uBc0RisT 必死だなでも負けは負けだそして何より面白さが皆無なのが致命的
厳密には再帰ではないが実質再帰と同じ効果を狙ってんだろ
それ以前に自身も屁理屈だといっちゃってる時点で、語るに落ちてるよ
厳密には再帰ではないが実質再帰と同じ効果を狙ってんだろ
それ以前に自身も屁理屈だといっちゃってる時点で、語るに落ちてるよ
504デフォルトの名無しさん
2019/06/22(土) 01:32:31.17ID:zj+KJbMh ここでは何か戦いが行われていたのか?
505デフォルトの名無しさん
2019/06/22(土) 01:36:06.87ID:oaC3C1vm 日本語が読めない人との戦いが長らく続いてる
506デフォルトの名無しさん
2019/06/22(土) 04:13:24.85ID:zj+KJbMh507デフォルトの名無しさん
2019/06/22(土) 05:24:28.98ID:lmjByctT >>506 正解
508デフォルトの名無しさん
2019/06/22(土) 06:01:52.56ID:YIP5CpHg やられた
509デフォルトの名無しさん
2019/06/22(土) 10:21:10.77ID:lgEn1aKj くだらない
510デフォルトの名無しさん
2019/06/22(土) 11:45:18.46ID:jiW7+Eee くだらない
511デフォルトの名無しさん
2019/06/22(土) 12:11:38.82ID:lmjByctT 出題からしてくだらない
512デフォルトの名無しさん
2019/06/22(土) 12:27:47.34ID:Tw+E6LX+ お題:プログラミングのお題が与えられるので、それに対する解答を回答するプログラ厶を作りなさい。
513デフォルトの名無しさん
2019/06/22(土) 12:42:30.81ID:jGjp1K63 >>512 Perl5
%h = ('プログラミングのお題' => 'それに対する解答');
while (<>) {
chomp;
$a = $h{$_};
print $a ? "$a\n" : "しらんがな…(´・ω・`)ショボーン\n";
}
実行例
$ echo プログラミングのお題 | perl 14_512.pl
それに対する解答
~ $ echo たわけ | perl 14_512.pl
しらんがな…(´・ω・`)ショボーン
~ $ echo たいがいにせいよ | perl 14_512.pl
しらんがな…(´・ω・`)ショボーン
~ $
%h = ('プログラミングのお題' => 'それに対する解答');
while (<>) {
chomp;
$a = $h{$_};
print $a ? "$a\n" : "しらんがな…(´・ω・`)ショボーン\n";
}
実行例
$ echo プログラミングのお題 | perl 14_512.pl
それに対する解答
~ $ echo たわけ | perl 14_512.pl
しらんがな…(´・ω・`)ショボーン
~ $ echo たいがいにせいよ | perl 14_512.pl
しらんがな…(´・ω・`)ショボーン
~ $
514デフォルトの名無しさん
2019/06/22(土) 13:03:59.60ID:7MEAdJNr (出題者側、回答者側のいずれに問題があるにせよ)
題意が汲み取れずくだらないお題だと思うのなら
回答せずにスルーすればいいやんというのがここのルール
回答した以上は特に題意を汲み取っていない的外れな回答の場合、
相応の批判にさらされることはある程度覚悟しないと
題意が汲み取れずくだらないお題だと思うのなら
回答せずにスルーすればいいやんというのがここのルール
回答した以上は特に題意を汲み取っていない的外れな回答の場合、
相応の批判にさらされることはある程度覚悟しないと
515デフォルトの名無しさん
2019/06/22(土) 13:06:05.30ID:YIP5CpHg しらんがな…(´・ω・`)ショボーン
516蟻人間 ◆T6xkBnTXz7B0
2019/06/22(土) 13:23:12.78ID:+T90VYrY お題: パソコンの中で猫をひげダンスさせよ。
517デフォルトの名無しさん
2019/06/22(土) 14:37:40.61ID:Kdr0peZW >>514 出題者が質問に答えずに、出題の意味も説明できずに罵声を浴びせるだけと言う態度は問題だと思うけどな。
518デフォルトの名無しさん
2019/06/22(土) 15:24:12.28ID:vPRUCWwQ 出題者かどうかわからんのが問題だしトリでもつけとけばいいんちゃう
519デフォルトの名無しさん
2019/06/22(土) 16:06:50.97ID:zj+KJbMh >>516
「ひげダンス」と聞いて調べずすぐにわかる人がここに何人いるかなあ・・・
「ひげダンス」と聞いて調べずすぐにわかる人がここに何人いるかなあ・・・
520デフォルトの名無しさん
2019/06/22(土) 16:19:18.36ID:zj+KJbMh >>507>>508
「このはし渡るべからず」を見た時の一休さんの気持ちが少しわかった。
「このはし渡るべからず」を見た時の一休さんの気持ちが少しわかった。
お題と回答
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259 342 353
>>320 : 321 323 327 330 340
>>322 : 325 328 329 331 332 339 341 358 359
>>362 : 367 369 370 371 374 379 380 382 414
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259 342 353
>>320 : 321 323 327 330 340
>>322 : 325 328 329 331 332 339 341 358 359
>>362 : 367 369 370 371 374 379 380 382 414
523デフォルトの名無しさん
2019/06/22(土) 22:52:07.59ID:tXrMFQcm >>417
#pragma INTERRUPT int00
static int i = 0;
void int00(void)
{
if( i <= 100 ){
printf("%d\n", i++ );
}
}
あとは割り込みのテーブルに登録するだけ
#pragma INTERRUPT int00
static int i = 0;
void int00(void)
{
if( i <= 100 ){
printf("%d\n", i++ );
}
}
あとは割り込みのテーブルに登録するだけ
524デフォルトの名無しさん
2019/06/23(日) 01:15:49.60ID:udYctx9F525デフォルトの名無しさん
2019/06/23(日) 01:37:51.82ID:owW1jJs8 >>524
別にいいやんか
別にいいやんか
526デフォルトの名無しさん
2019/06/23(日) 03:01:37.82ID:okSgJcER >>524
基本的なルールも知らん新参者はしばらくロムってろとw
基本的なルールも知らん新参者はしばらくロムってろとw
527デフォルトの名無しさん
2019/06/23(日) 05:03:48.13ID:kLh2Gk3t part6くらいからこのスレ見てるけどそんな不文律知らんぞ
528デフォルトの名無しさん
2019/06/23(日) 07:40:02.44ID:b081fL0l >>417
数値に(+1)の代わりに次の値を求めるsuccに変えるだけじゃインクリメントと同じになるので、
文字列でインクリメント相当の処理を実現してみた。
(succ 1 = 2, succ 'a' = 'b', succ False = True)
リストが全部'9'か見るのにand関数使った方が行数減らせるが、
and関数も再帰と見做せるので使わなかった。
('9'と同じ数だけ'0'を用意する処理も、リスト内包表記やlength関数が再帰やループに当たる)
Haskell
main = f "1"
f = fa f
― f n = fa f n を部分適用で見掛け上の変数を減らした
fa _ "101" = return ()
fa fb "9" = putStrLn "9" >> fb "10"
fa fb "99" = putStrLn "99" >> fb "100"
fa fb "100" = putStrLn "100" >> fb "101"
fa fb [x,'9'] = putStrLn [x,'9'] >> fb [succ x,'0']
fa fb [x,y] = putStrLn [x,y] >> fb [x,succ y]
fa fb [y] = putStrLn [y] >> fb [succ y]
数値に(+1)の代わりに次の値を求めるsuccに変えるだけじゃインクリメントと同じになるので、
文字列でインクリメント相当の処理を実現してみた。
(succ 1 = 2, succ 'a' = 'b', succ False = True)
リストが全部'9'か見るのにand関数使った方が行数減らせるが、
and関数も再帰と見做せるので使わなかった。
('9'と同じ数だけ'0'を用意する処理も、リスト内包表記やlength関数が再帰やループに当たる)
Haskell
main = f "1"
f = fa f
― f n = fa f n を部分適用で見掛け上の変数を減らした
fa _ "101" = return ()
fa fb "9" = putStrLn "9" >> fb "10"
fa fb "99" = putStrLn "99" >> fb "100"
fa fb "100" = putStrLn "100" >> fb "101"
fa fb [x,'9'] = putStrLn [x,'9'] >> fb [succ x,'0']
fa fb [x,y] = putStrLn [x,y] >> fb [x,succ y]
fa fb [y] = putStrLn [y] >> fb [succ y]
529デフォルトの名無しさん
2019/06/23(日) 09:44:39.54ID:Zok1rHX2 >>527
でまかせ
でまかせ
530デフォルトの名無しさん
2019/06/23(日) 09:54:46.04ID:YCKftoca >>417
bb=1;echo $bb >/tmp/gg; watch -n 0.5 "bb=\`cat /tmp/gg\`; echo \$bb; if [ \$bb -eq 100 ]; then exit; fi; bb=\$((bb+1)); echo \$bb >/tmp/gg; "
bb=1;echo $bb >/tmp/gg; watch -n 0.5 "bb=\`cat /tmp/gg\`; echo \$bb; if [ \$bb -eq 100 ]; then exit; fi; bb=\$((bb+1)); echo \$bb >/tmp/gg; "
531デフォルトの名無しさん
2019/06/23(日) 11:21:05.15ID:PuD19qMM532デフォルトの名無しさん
2019/06/23(日) 11:52:06.27ID:HeOsQws8 >>531 自分で無視しろと言っておいて人の投稿に難癖つけるのも同じだろ。 無視してろよ。
533デフォルトの名無しさん
2019/06/23(日) 11:53:42.86ID:PuD19qMM534デフォルトの名無しさん
2019/06/23(日) 11:59:27.35ID:PuD19qMM 議論を整理しよう
主の意見
・問題がわからなかったら問題が悪いと言うんじゃなくて無視しよう
木偶の坊の回答者の意見
・問題がわからなかったら問題に文句言うんだ <= これがダメ
主の意見
・問題がわからなかったら問題が悪いと言うんじゃなくて無視しよう
木偶の坊の回答者の意見
・問題がわからなかったら問題に文句言うんだ <= これがダメ
535デフォルトの名無しさん
2019/06/23(日) 12:00:12.53ID:xc930vdW >>530
ループやな
ループやな
536デフォルトの名無しさん
2019/06/23(日) 12:03:05.58ID:CwGow/FI >>531
桃白白改めミスターポポ改めピラフ改めピッコロさん、いい加減にしろ
桃白白改めミスターポポ改めピラフ改めピッコロさん、いい加減にしろ
537デフォルトの名無しさん
2019/06/23(日) 12:03:58.87ID:PuD19qMM >>535
あからさまではないからええんやで
あからさまではないからええんやで
538デフォルトの名無しさん
2019/06/23(日) 12:05:40.43ID:xc930vdW いいや、あからさまや
539デフォルトの名無しさん
2019/06/23(日) 12:07:42.20ID:HeOsQws8 >>534 問題が解らなければ出題者に聞くのがまず第一だろ。 そして出題者は質問に答える義務がある。
540デフォルトの名無しさん
2019/06/23(日) 12:25:37.87ID:xc930vdW >>537
じゃあこれはあからさま?
var n=1,t=setInterval(()=>{if(n<=100){console.log(n);n++;}else{clearInterval(t);}},0);
じゃあこれはあからさま?
var n=1,t=setInterval(()=>{if(n<=100){console.log(n);n++;}else{clearInterval(t);}},0);
541デフォルトの名無しさん
2019/06/23(日) 12:31:57.22ID:HeOsQws8 >>540 どうでもいいんじゃない? 自分がこれで良いと思えば良いんだよ。
誰にもあからさまと言う基準は作れない。 プログラムの中のループと言えばそうなるけどな。
ただ、サンプルの中でもイベントを使う方法は載ってたからOK なんじゃないのかな。
もうどうでも良いよ。
誰にもあからさまと言う基準は作れない。 プログラムの中のループと言えばそうなるけどな。
ただ、サンプルの中でもイベントを使う方法は載ってたからOK なんじゃないのかな。
もうどうでも良いよ。
542デフォルトの名無しさん
2019/06/23(日) 12:41:42.98ID:PuD19qMM543デフォルトの名無しさん
2019/06/23(日) 12:42:42.10ID:PuD19qMM544デフォルトの名無しさん
2019/06/23(日) 12:46:10.20ID:HeOsQws8 >>542 何で出題者でもないお前が仕切ってるんだよ。
それともお前が出題者?
それともお前が出題者?
545デフォルトの名無しさん
2019/06/23(日) 12:49:22.24ID:PuD19qMM >>544
我スレの神なり
我スレの神なり
546デフォルトの名無しさん
2019/06/23(日) 12:50:21.23ID:PuD19qMM 議長として議論を執行する
547デフォルトの名無しさん
2019/06/23(日) 12:53:58.33ID:uxmsHz5m548デフォルトの名無しさん
2019/06/23(日) 13:07:52.17ID:xc930vdW549デフォルトの名無しさん
2019/06/23(日) 13:37:18.23ID:CFRhe1LU 全部のコードをいちいち見てないし、二番煎じということを指摘するには十分だろ
550デフォルトの名無しさん
2019/06/23(日) 13:40:05.34ID:MlHMJpT5 >>545
桃白白改めミスターポポ改めピラフ改めピッコロさん、いい加減にしろ
桃白白改めミスターポポ改めピラフ改めピッコロさん、いい加減にしろ
551デフォルトの名無しさん
2019/06/23(日) 14:01:14.90ID:0sdWkE2M ID:PuD19qMM は多分クソみたいな出題してボロカスに叩かれたことがあるんでしょ
叩かれたこと無いって多分レスすると思うけど、きっとあるんでしょ
叩かれたこと無いって多分レスすると思うけど、きっとあるんでしょ
552デフォルトの名無しさん
2019/06/23(日) 14:06:35.85ID:kLh2Gk3t はい、この議論今日まで〜
>>388,397,409
https://mevius.5ch.net/test/read.cgi/tech/1434079972/59
出題者想定の試算プログラムを公開します。
>>487
とっても早いですね…
https://mevius.5ch.net/test/read.cgi/tech/1434079972/59
出題者想定の試算プログラムを公開します。
>>487
とっても早いですね…
554デフォルトの名無しさん
2019/06/23(日) 17:32:48.34ID:JIIa3Mhw555蟻人間 ◆T6xkBnTXz7B0
2019/06/23(日) 17:37:50.61ID:/bRV2XXv お題: サインカーブを描画せよ。
556デフォルトの名無しさん
2019/06/23(日) 20:48:49.59ID:lpZCfMkq お題
1) √2 を小数点以下 1000 桁算出せよ
2) n ∈Z, 1 <= n <= 100 を与えたとき√n を小数点以下1000 桁算出せよ
1) √2 を小数点以下 1000 桁算出せよ
2) n ∈Z, 1 <= n <= 100 を与えたとき√n を小数点以下1000 桁算出せよ
558デフォルトの名無しさん
2019/06/23(日) 21:28:12.22ID:+RY3MuQ7 >>555 Squeak Smalltalk
(PolygonMorph
shapeFromPen: [:pen |
| factor |
factor := Float pi / 100.
pen place: 0@0.
0 to: 200 do: [:x | pen goto: x @ ((x * factor) sin / factor)]]
color: Color transparent
borderWidth: 2
borderColor: Color red) makeOpen; position: Display center; openInWorld
(PolygonMorph
shapeFromPen: [:pen |
| factor |
factor := Float pi / 100.
pen place: 0@0.
0 to: 200 do: [:x | pen goto: x @ ((x * factor) sin / factor)]]
color: Color transparent
borderWidth: 2
borderColor: Color red) makeOpen; position: Display center; openInWorld
559487
2019/06/23(日) 22:07:30.94ID:K2cXmmzo >>388 Java
https://ideone.com/9d18x4
>>553
分割荒くしたらもっと早くなったよ
x=13194120658951(=2097151^3-2097150^3)以下に6通り見つからなかったが
https://ideone.com/9d18x4
>>553
分割荒くしたらもっと早くなったよ
x=13194120658951(=2097151^3-2097150^3)以下に6通り見つからなかったが
560デフォルトの名無しさん
2019/06/23(日) 22:46:35.00ID:+RY3MuQ7 >>557 Pharo/Squeak Smalltalk
| sqrt |
sqrt := [:n :m |
| a b nDigits intDigits str |
a := 5 * n. b := 5.
nDigits := m + (intDigits := (n sqrt log + 1) asInteger )+ 1.
[:exit | [
a >= b ifTrue: [a := a - b. b := b + 10] ifFalse: [
b log > nDigits ifTrue: [exit value] ifFalse: [
a := a * 100. b := b // 10 * 100 + (b \\ 10)
]
]
] repeat] valueWithExit.
((str := b asString) first: intDigits), '.', ((str allButFirst: intDigits) first: m)
].
((1 to: 100) collect: [:n | n -> ((sqrt value: n value: 1000) contractTo: 30)]) asStringWithCr
"=> 1->'1.000000000000...0000000000000'
2->'1.414213562373...8229518488472'
3->'1.732050807568...8363954959381'
4->'2.000000000000...0000000000000'
5->'2.236067977499...0407072278724'
6->'2.449489742783...7009535324726'
7->'2.645751311064...4698120004300'
<snip>
97->'9.848857801796...5854929396030'
98->'9.899494936611...7606629419304'
99->'9.949874371066...6373124778344'
100->'10.00000000000...0000000000000' "
| sqrt |
sqrt := [:n :m |
| a b nDigits intDigits str |
a := 5 * n. b := 5.
nDigits := m + (intDigits := (n sqrt log + 1) asInteger )+ 1.
[:exit | [
a >= b ifTrue: [a := a - b. b := b + 10] ifFalse: [
b log > nDigits ifTrue: [exit value] ifFalse: [
a := a * 100. b := b // 10 * 100 + (b \\ 10)
]
]
] repeat] valueWithExit.
((str := b asString) first: intDigits), '.', ((str allButFirst: intDigits) first: m)
].
((1 to: 100) collect: [:n | n -> ((sqrt value: n value: 1000) contractTo: 30)]) asStringWithCr
"=> 1->'1.000000000000...0000000000000'
2->'1.414213562373...8229518488472'
3->'1.732050807568...8363954959381'
4->'2.000000000000...0000000000000'
5->'2.236067977499...0407072278724'
6->'2.449489742783...7009535324726'
7->'2.645751311064...4698120004300'
<snip>
97->'9.848857801796...5854929396030'
98->'9.899494936611...7606629419304'
99->'9.949874371066...6373124778344'
100->'10.00000000000...0000000000000' "
561デフォルトの名無しさん
2019/06/24(月) 01:26:06.66ID:oP64UM4n >>553 あのさ、何か言いたいのはわかるけど、リンクくらいまともに貼ろうよ、
カンマで区切られたスレなんて俺のブラウザでは辿れないし、リンク先のページもどれがなんなのかわからないし、自分が勝手に思ってても人には伝わらないよ。
よくそんなのでプログラムの世界で生きてるね。 クビにならないことを祈るよ。
カンマで区切られたスレなんて俺のブラウザでは辿れないし、リンク先のページもどれがなんなのかわからないし、自分が勝手に思ってても人には伝わらないよ。
よくそんなのでプログラムの世界で生きてるね。 クビにならないことを祈るよ。
562デフォルトの名無しさん
2019/06/24(月) 01:56:20.12ID:JSF3ka2M563デフォルトの名無しさん
2019/06/24(月) 06:28:51.10ID:PKUWjPMB >>555 Lua
prrint("∿")
prrint("∿")
564デフォルトの名無しさん
2019/06/24(月) 14:09:18.13ID:BXNZhLwW565デフォルトの名無しさん
2019/06/24(月) 14:11:03.35ID:BXNZhLwW >>555 Python numpy , matplotlib
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 10, 100)
y = np.sin(x)
plt.plot(x, y)
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 10, 100)
y = np.sin(x)
plt.plot(x, y)
566デフォルトの名無しさん
2019/06/24(月) 16:09:05.86ID:BXNZhLwW567デフォルトの名無しさん
2019/06/24(月) 16:10:01.37ID:BXNZhLwW こっちの方が良いね
https://i.imgur.com/D5WDUTF.jpg
https://i.imgur.com/D5WDUTF.jpg
568デフォルトの名無しさん
2019/06/24(月) 17:22:50.00ID:y3nBEW/D https://light.dotup.org/uploda/light.dotup.org596741.png
>>555
C++で書いてみたよ。
画像生成は自作コード。
面クラス作ってwindows bitmap 用に書き込みした。
趣味で色キチにしてある。
>>555
C++で書いてみたよ。
画像生成は自作コード。
面クラス作ってwindows bitmap 用に書き込みした。
趣味で色キチにしてある。
569デフォルトの名無しさん
2019/06/24(月) 17:48:28.72ID:DDT4XoH6 >>555
ChromeのURLバーに叩き込む
javascript:document.innerHTML='<svg><path d="M0 50 C 40 10 60 10 100 50 C 140 90 160 90 200 50 Z">'
スクショ
https://i.imgur.com/4jf1NdV.png
ChromeのURLバーに叩き込む
javascript:document.innerHTML='<svg><path d="M0 50 C 40 10 60 10 100 50 C 140 90 160 90 200 50 Z">'
スクショ
https://i.imgur.com/4jf1NdV.png
570蟻人間 ◆T6xkBnTXz7B0
2019/06/24(月) 17:52:22.52ID:eqHVB1zL だんだん難しくなるよ。
お題: 8の字曲線を描画せよ。
お題: 8の字曲線を描画せよ。
571デフォルトの名無しさん
2019/06/24(月) 18:22:01.03ID:lp2pR5Nh >>570 そんな似たような問題飽きるよ。
572デフォルトの名無しさん
2019/06/24(月) 18:24:31.37ID:DDT4XoH6 console.log('8')
573蟻人間 ◆T6xkBnTXz7B0
2019/06/24(月) 18:33:31.05ID:oK/rIQPy お題: ベルトコンベヤで左から右へチーズケーキが不定期に断続的に供給される。Aさん、Bさん、Cさんは右から順番にチーズケーキを食べる。
ただし、AさんはBさんより食べる速度が早い。BさんはCさんより食べる速度が早い。お腹一杯になるとしばらく食べられない。
これをマルチスレッドで再現せよ。
ただし、AさんはBさんより食べる速度が早い。BさんはCさんより食べる速度が早い。お腹一杯になるとしばらく食べられない。
これをマルチスレッドで再現せよ。
574デフォルトの名無しさん
2019/06/24(月) 18:40:26.97ID:7jtxfSjt >>570 Squeak Smalltalk
(PolygonMorph
shapeFromPen: [:pen |
| lemniscate factor |
lemniscate := [:θ | θ cos / (1 + θ sin squared) @ (θ sin * θ cos / (1 + θ sin squared))].
factor := 100.
pen up.
0 to: 360 do: [:deg | pen goto: (lemniscate value: deg degreesToRadians) * factor; down]]
color: Color transparent
borderWidth: 2
borderColor: Color red) position: Display center; openInWorld
"=> https://i.imgur.com/CiUeI8I.png "
(PolygonMorph
shapeFromPen: [:pen |
| lemniscate factor |
lemniscate := [:θ | θ cos / (1 + θ sin squared) @ (θ sin * θ cos / (1 + θ sin squared))].
factor := 100.
pen up.
0 to: 360 do: [:deg | pen goto: (lemniscate value: deg degreesToRadians) * factor; down]]
color: Color transparent
borderWidth: 2
borderColor: Color red) position: Display center; openInWorld
"=> https://i.imgur.com/CiUeI8I.png "
575蟻人間 ◆T6xkBnTXz7B0
2019/06/24(月) 19:18:23.37ID:oK/rIQPy お題: あなたは宇宙時代の靴屋さんだ。宇宙人の足底の形状データが二次元多角形ベクトルデータとして与えられる。多角形が円に収まるように円形の靴の底を設計せよ。
>>561
>自分が勝手に思ってても人には伝わらないよ。
ほう、私の記述が不十分というわけですか?
しかし、
>カンマで区切られたスレなんて俺のブラウザでは辿れないし
これは特に「アンカー」というのですよ。「アンカー」、この単語をご存知なかったのですか?
>カンマで区切られたスレなんて俺のブラウザでは辿れないし
私の専用ブラウザでは十分にたどれますよ、おま環でしょう、おま環、おま環(爆笑)
>リンク先のページもどれがなんなのかわからないし、
QZ 専用スレのことですか
そもそも専用スレを持っているということ自体が特筆に値するでしょう
あなたも専用スレを作ってみたらいい、一発で削除されますよ
それに、そこでは私は、私が何を目的に何を書いたのか一目瞭然ですね
必要にして十分とはまさにこのことでしょう
過去ログはお布施をすれば自由に取り込めます、おま環、おま環(爆笑)
>よくそんなのでプログラムの世界で生きてるね。 クビにならないことを祈るよ。
あなたが5ch で不自由な制約のもとにあるのはよくわかりました、ひとことでいってお布施が足りない、まずはお布施をすることですね
私は職業プログラマでないので、すでにプログラムの世界ではクビになっています、ついでに現在の職業もクビになりそうです…いや、ラプラス変換の部分分数展開の計算が合わなくて苦労しているのですよ
部分分数展開については、近いうちにこのスレのお題にしますよ、乞うご期待!
>自分が勝手に思ってても人には伝わらないよ。
ほう、私の記述が不十分というわけですか?
しかし、
>カンマで区切られたスレなんて俺のブラウザでは辿れないし
これは特に「アンカー」というのですよ。「アンカー」、この単語をご存知なかったのですか?
>カンマで区切られたスレなんて俺のブラウザでは辿れないし
私の専用ブラウザでは十分にたどれますよ、おま環でしょう、おま環、おま環(爆笑)
>リンク先のページもどれがなんなのかわからないし、
QZ 専用スレのことですか
そもそも専用スレを持っているということ自体が特筆に値するでしょう
あなたも専用スレを作ってみたらいい、一発で削除されますよ
それに、そこでは私は、私が何を目的に何を書いたのか一目瞭然ですね
必要にして十分とはまさにこのことでしょう
過去ログはお布施をすれば自由に取り込めます、おま環、おま環(爆笑)
>よくそんなのでプログラムの世界で生きてるね。 クビにならないことを祈るよ。
あなたが5ch で不自由な制約のもとにあるのはよくわかりました、ひとことでいってお布施が足りない、まずはお布施をすることですね
私は職業プログラマでないので、すでにプログラムの世界ではクビになっています、ついでに現在の職業もクビになりそうです…いや、ラプラス変換の部分分数展開の計算が合わなくて苦労しているのですよ
部分分数展開については、近いうちにこのスレのお題にしますよ、乞うご期待!
577デフォルトの名無しさん
2019/06/24(月) 19:35:12.92ID:XuRZTEew >>570 Python sympy
from sympy import symbols , sin
from sympy.plotting import plot_parametric
t = symbols('t')
x=sin(t); y=sin(2*t)
p = plot_parametric(x, y, autoscale=True, title='8 Graph', show=False)
p.show()
https://i.imgur.com/ACefMnx.jpg
from sympy import symbols , sin
from sympy.plotting import plot_parametric
t = symbols('t')
x=sin(t); y=sin(2*t)
p = plot_parametric(x, y, autoscale=True, title='8 Graph', show=False)
p.show()
https://i.imgur.com/ACefMnx.jpg
578蟻人間 ◆T6xkBnTXz7B0
2019/06/24(月) 19:35:53.46ID:oK/rIQPy ヒント: まずはど真ん中を求めよう。
579蟻人間 ◆T6xkBnTXz7B0
2019/06/24(月) 19:53:04.45ID:oK/rIQPy お題: 辞書のように頭文字を何文字か入力すると該当する単語の意味を調べられるようなシステムのことを「辞書型エキスパートシステム」と言います。
あなたの得意分野に関する辞書型エキスパートシステムを作りなさい。
例) HTML辞書システム
あなたの得意分野に関する辞書型エキスパートシステムを作りなさい。
例) HTML辞書システム
580デフォルトの名無しさん
2019/06/24(月) 19:55:50.31ID:y3nBEW/D し、式がわからねー。算数の限界。。。 グフッ。
581デフォルトの名無しさん
2019/06/24(月) 20:04:50.44ID:rEOVCAEx >>577
お?リサージュ使ったのか、やるなお主。
お?リサージュ使ったのか、やるなお主。
582蟻人間 ◆T6xkBnTXz7B0
2019/06/24(月) 20:10:50.04ID:eqHVB1zL 面白いシューティングゲーム作るなら、数式とグラフの知識は必須だからな。
x→yという対応によるx-yグラフがあれば、
時刻t→(x, y)という対応によるグラフもある。多分高校で習うから安心しろ。
x→yという対応によるx-yグラフがあれば、
時刻t→(x, y)という対応によるグラフもある。多分高校で習うから安心しろ。
583デフォルトの名無しさん
2019/06/24(月) 20:13:33.00ID:BXNZhLwW >>576 やはり思った通りの人物像だったな。 自分の勝手な思い込みで人に伝わると思ってる。
そりゃどんな所に勤めても長続きしないだろうな。 相手の事を思いながら会話しないとダメなんだよ。
自分は何も悪くない、悪いのは相手だと言うのが最大の欠点。 多分病気だと思うから一度病院に行ってみたら?
ラプラス変換なんて持ち出せば相手は黙るだろうとか思ってる馬鹿さ加減。
あんな簡単な物で躓いてるのは多分高校の数学で落ちこぼれてたんだろうな。 いや中学の算数が解っていないのかも。
計算を楽にするためにラプラス変換があるのに。
そりゃどんな所に勤めても長続きしないだろうな。 相手の事を思いながら会話しないとダメなんだよ。
自分は何も悪くない、悪いのは相手だと言うのが最大の欠点。 多分病気だと思うから一度病院に行ってみたら?
ラプラス変換なんて持ち出せば相手は黙るだろうとか思ってる馬鹿さ加減。
あんな簡単な物で躓いてるのは多分高校の数学で落ちこぼれてたんだろうな。 いや中学の算数が解っていないのかも。
計算を楽にするためにラプラス変換があるのに。
584デフォルトの名無しさん
2019/06/24(月) 20:19:29.47ID:fImqzI0I トリップ付けてる人にまともな人なんているわけがないじゃないか
>>583
>多分病気だと思うから一度病院に行ってみたら?
すでにして飲んでるお薬は
https://en.wikipedia.org/wiki/Chlorpromazine#/media/File:Thorazine_advert.jpg
>計算を楽にするためにラプラス変換があるのに。
浅はかな理解ですね、計算のためにラプラス変換?
馬鹿もここまでくると気の毒に思えてきます
そんな人のために次のページが構築されつつあります、誰が書いてるのかは私はしらないけど
https://ja.wikibooks.org/wiki/%E5%88%B6%E5%BE%A1%E3%81%A8%E6%8C%AF%E5%8B%95%E3%81%AE%E6%95%B0%E5%AD%A6/%E7%AC%AC%E4%B8%80%E9%A1%9E
>多分病気だと思うから一度病院に行ってみたら?
すでにして飲んでるお薬は
https://en.wikipedia.org/wiki/Chlorpromazine#/media/File:Thorazine_advert.jpg
>計算を楽にするためにラプラス変換があるのに。
浅はかな理解ですね、計算のためにラプラス変換?
馬鹿もここまでくると気の毒に思えてきます
そんな人のために次のページが構築されつつあります、誰が書いてるのかは私はしらないけど
https://ja.wikibooks.org/wiki/%E5%88%B6%E5%BE%A1%E3%81%A8%E6%8C%AF%E5%8B%95%E3%81%AE%E6%95%B0%E5%AD%A6/%E7%AC%AC%E4%B8%80%E9%A1%9E
586デフォルトの名無しさん
2019/06/24(月) 20:40:31.12ID:y3nBEW/D https://light.dotup.org/uploda/light.dotup.org596781.png
ギリギリ8?これ、屁理屈だわー。
ギリギリ8?これ、屁理屈だわー。
588デフォルトの名無しさん
2019/06/24(月) 20:55:10.85ID:y3nBEW/D うえーい。
589デフォルトの名無しさん
2019/06/24(月) 21:01:05.67ID:y3nBEW/D あ、どっとうp死んだ。。。
590デフォルトの名無しさん
2019/06/24(月) 21:57:47.94ID:BXNZhLwW >>590
浅はかな理解ですね、そもそもここに出入りしている時点で重大な問題を孕んでいることに気がつかないとでもいうのですか?
浅はかな理解ですね、そもそもここに出入りしている時点で重大な問題を孕んでいることに気がつかないとでもいうのですか?
592デフォルトの名無しさん
2019/06/24(月) 22:30:59.92ID:xRw0rPof あーQZはまともに相手しないで放置すればいいよ
こいつ複素解析も知らない癖に留数定理がどうのこうのとか騙ってて
突っ込まれると「全然知りません」と開き直るような奴だからな
それに日本人じゃないらしい
こいつ複素解析も知らない癖に留数定理がどうのこうのとか騙ってて
突っ込まれると「全然知りません」と開き直るような奴だからな
それに日本人じゃないらしい
593デフォルトの名無しさん
2019/06/24(月) 22:32:09.63ID:xRw0rPof おそらくこいつはラプラス変換も知らない馬鹿だ
594デフォルトの名無しさん
2019/06/24(月) 22:53:08.06ID:gDOJvwaR596デフォルトの名無しさん
2019/06/24(月) 23:29:01.25ID:gDOJvwaR >>596
数学板でまともに質問したのは「頂を踏む」の一節
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13170327928
だけですよ、数学板に書かないわけではありませんけれどもね
数学板でまともに質問したのは「頂を踏む」の一節
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q13170327928
だけですよ、数学板に書かないわけではありませんけれどもね
598デフォルトの名無しさん
2019/06/24(月) 23:54:27.14ID:gDOJvwaR 知恵袋やってて草
後で通報しとくわ
後で通報しとくわ
599デフォルトの名無しさん
2019/06/25(火) 00:17:49.29ID:q9Zf4joS >>555
echo '〜'
echo '〜'
600デフォルトの名無しさん
2019/06/25(火) 12:16:33.88ID:/8kFlQVi お題
7月中の、3人の空いている日のリストがあります。
3人の内、2人以上が空いている日と、名前を求めよ
A
2019/07/05
2019/07/10
2019/07/15
2019/07/20
B
2019/07/08
2019/07/10
2019/07/20
C
2019/07/15
2019/07/20
2019/07/25
7月中の、3人の空いている日のリストがあります。
3人の内、2人以上が空いている日と、名前を求めよ
A
2019/07/05
2019/07/10
2019/07/15
2019/07/20
B
2019/07/08
2019/07/10
2019/07/20
C
2019/07/15
2019/07/20
2019/07/25
601デフォルトの名無しさん
2019/06/25(火) 12:21:21.76ID:cOq4SW0C 日付と名前の区別ってどうすんの?
602600
2019/06/25(火) 13:41:11.08ID:/8kFlQVi 書式は、どうでも良い。
こんな感じで
2019/07/10 A B
2019/07/10, A, B
こんな感じで
2019/07/10 A B
2019/07/10, A, B
603デフォルトの名無しさん
2019/06/25(火) 15:28:07.62ID:AwR7wU0d Hash使うとすごく簡単にできると思うが、Hashへの値のセットをプログラム中に書こうとすると、それがそのまま答えになってしまいそうな予感w
604デフォルトの名無しさん
2019/06/25(火) 16:12:29.73ID:i92jGjxO >>573 Python3.6 ideonのpython は3.5で動かないが、下の方に出力サンプルを張り付けてあるからそれを見てください。
https://ideone.com/JqcYMA
出力サンプルを少しだけここに張り付け
開店時間= 0.0
Aの取皿開始 speed=0.7 kosu=0 時刻は 0.0
Bの取皿開始 speed=1.0 kosu=0 時刻は 0.01
Cの取皿開始 speed=1.4 kosu=0 時刻は 0.02
★★マグロ が出来た時刻=0.03 作成間隔 t=0.30
Cがマグロを食った 作成時刻=0.03
★★カッパ が出来た時刻=0.33 作成間隔 t=0.10
Aがカッパを食った 作成時刻=0.33
★★ウニ が出来た時刻=0.43 作成間隔 t=0.10
★★上トロ が出来た時刻=0.53 作成間隔 t=0.10
Cがウニを食った 作成時刻=0.43
Cが満腹 休むよ 時刻=0.63
Aが上トロを食った 作成時刻=0.53
★★エンガワ が出来た時刻=0.64 作成間隔 t=0.10
★★マグロ が出来た時刻=0.74 作成間隔 t=0.10
Bがエンガワを食った 作成時刻=0.64
Bがマグロを食った 作成時刻=0.74
★★マグロ が出来た時刻=0.74 作成間隔 t=0.10
Bがエンガワを食った 作成時刻=0.64Bがマグロを食った 作成時刻=0.74
★★カッパ が出来た時刻=0.84 作成間隔 t=0.10
★★ウニ が出来た時刻=0.94 作成間隔 t=0.10
★★上トロ が出来た時刻=1.04 作成間隔 t=0.10
Aの取皿開始 speed=0.7 kosu=1 時刻は 1.11
Aがカッパを食った 作成時刻=0.84
★★エンガワ
https://ideone.com/JqcYMA
出力サンプルを少しだけここに張り付け
開店時間= 0.0
Aの取皿開始 speed=0.7 kosu=0 時刻は 0.0
Bの取皿開始 speed=1.0 kosu=0 時刻は 0.01
Cの取皿開始 speed=1.4 kosu=0 時刻は 0.02
★★マグロ が出来た時刻=0.03 作成間隔 t=0.30
Cがマグロを食った 作成時刻=0.03
★★カッパ が出来た時刻=0.33 作成間隔 t=0.10
Aがカッパを食った 作成時刻=0.33
★★ウニ が出来た時刻=0.43 作成間隔 t=0.10
★★上トロ が出来た時刻=0.53 作成間隔 t=0.10
Cがウニを食った 作成時刻=0.43
Cが満腹 休むよ 時刻=0.63
Aが上トロを食った 作成時刻=0.53
★★エンガワ が出来た時刻=0.64 作成間隔 t=0.10
★★マグロ が出来た時刻=0.74 作成間隔 t=0.10
Bがエンガワを食った 作成時刻=0.64
Bがマグロを食った 作成時刻=0.74
★★マグロ が出来た時刻=0.74 作成間隔 t=0.10
Bがエンガワを食った 作成時刻=0.64Bがマグロを食った 作成時刻=0.74
★★カッパ が出来た時刻=0.84 作成間隔 t=0.10
★★ウニ が出来た時刻=0.94 作成間隔 t=0.10
★★上トロ が出来た時刻=1.04 作成間隔 t=0.10
Aの取皿開始 speed=0.7 kosu=1 時刻は 1.11
Aがカッパを食った 作成時刻=0.84
★★エンガワ
605デフォルトの名無しさん
2019/06/25(火) 16:57:19.63ID:/YrhpcLJ >>600 Pharo/Squeak Smalltalk
| data dic |
data := {
#A -> #('2019/07/05' '2019/07/10' '2019/07/15' '2019/07/20').
#B -> #('2019/07/08' '2019/07/10' '2019/07/20').
#C -> #('2019/07/15' '2019/07/20' '2019/07/25')
}.
dic := Dictionary new.
data do: [:assoc |
assoc value do: [:date | (dic at: date ifAbsentPut: [OrderedCollection new]) add: assoc key].
].
dic associations sort
select: [:assoc | assoc value size >= 2]
thenCollect: [:assoc | assoc value: assoc value asArray]
"=> {'2019/07/10'->#(#A #B) . '2019/07/15'->#(#A #C) . '2019/07/20'->#(#A #B #C)} "
| data dic |
data := {
#A -> #('2019/07/05' '2019/07/10' '2019/07/15' '2019/07/20').
#B -> #('2019/07/08' '2019/07/10' '2019/07/20').
#C -> #('2019/07/15' '2019/07/20' '2019/07/25')
}.
dic := Dictionary new.
data do: [:assoc |
assoc value do: [:date | (dic at: date ifAbsentPut: [OrderedCollection new]) add: assoc key].
].
dic associations sort
select: [:assoc | assoc value size >= 2]
thenCollect: [:assoc | assoc value: assoc value asArray]
"=> {'2019/07/10'->#(#A #B) . '2019/07/15'->#(#A #C) . '2019/07/20'->#(#A #B #C)} "
607デフォルトの名無しさん
2019/06/25(火) 17:27:11.68ID:Y04/VZ6Y #!/usr/bin/env perl
use List::MoreUtils;
@A = qw( 2019/07/05 2019/07/10 2019/07/15 2019/07/20);
%A = map {$_, 1} @A;
@B = qw( 2019/07/08 2019/07/10 2019/07/20);
%B = map {$_, 1} @B;
@C = qw( 2019/07/15 2019/07/20 2019/07/25);
%C = map {$_, 1} @C;
SEARCH:
for ( List::MoreUtils::uniq (@A, @B, @C) ){
if ($A{$_} && $B{$_} && $C{$_}){
print "everyone is free at $_\n";
next SEARCH;
}
if ($A{$_} && $B{$_} ){
print "A and B is free at $_\n";
}
if ($B{$_} && $C{$_}){
print "B and C is free at $_\n";
}
if ($A{$_} && $C{$_}){
print "A and C is free at $_\n";
}
}
use List::MoreUtils;
@A = qw( 2019/07/05 2019/07/10 2019/07/15 2019/07/20);
%A = map {$_, 1} @A;
@B = qw( 2019/07/08 2019/07/10 2019/07/20);
%B = map {$_, 1} @B;
@C = qw( 2019/07/15 2019/07/20 2019/07/25);
%C = map {$_, 1} @C;
SEARCH:
for ( List::MoreUtils::uniq (@A, @B, @C) ){
if ($A{$_} && $B{$_} && $C{$_}){
print "everyone is free at $_\n";
next SEARCH;
}
if ($A{$_} && $B{$_} ){
print "A and B is free at $_\n";
}
if ($B{$_} && $C{$_}){
print "B and C is free at $_\n";
}
if ($A{$_} && $C{$_}){
print "A and C is free at $_\n";
}
}
608デフォルトの名無しさん
2019/06/25(火) 17:29:23.86ID:Y04/VZ6Y609デフォルトの名無しさん
2019/06/25(火) 17:30:16.52ID:cOq4SW0C ハート型って多角形だったのかー
こらノーベル賞ものの発見だな!
こらノーベル賞ものの発見だな!
610デフォルトの名無しさん
2019/06/25(火) 17:30:27.94ID:Y04/VZ6Y タイポ
辞書型ではなく 集合型だ
辞書型ではなく 集合型だ
611デフォルトの名無しさん
2019/06/25(火) 18:13:23.94ID:Y04/VZ6Y >>600
>607はあまりにも酷かったので、修正
#!/usr/bin/env perl
use List::MoreUtils;
@A = qw( 2019/07/05 2019/07/10 2019/07/15 2019/07/20 );
%A = map {$_, A} @A;
@B = qw( 2019/07/08 2019/07/10 2019/07/20 );
%B = map {$_, B} @B;
@C = qw( 2019/07/15 2019/07/20 2019/07/25 );
%C = map {$_, C} @C;
for $date ( List::MoreUtils::uniq (@A, @B, @C) ){
for $someone_is_free_at (\%A, \%B, \%C){
push(@free_men, $$someone_is_free_at{$date}) if $$someone_is_free_at{$date};
}
print "@free_men are free at $date\n" if (@free_men > 1);
@free_men = ();
}
出力
A B are free at 2019/07/10
A C are free at 2019/07/15
A B C are free at 2019/07/20
>607はあまりにも酷かったので、修正
#!/usr/bin/env perl
use List::MoreUtils;
@A = qw( 2019/07/05 2019/07/10 2019/07/15 2019/07/20 );
%A = map {$_, A} @A;
@B = qw( 2019/07/08 2019/07/10 2019/07/20 );
%B = map {$_, B} @B;
@C = qw( 2019/07/15 2019/07/20 2019/07/25 );
%C = map {$_, C} @C;
for $date ( List::MoreUtils::uniq (@A, @B, @C) ){
for $someone_is_free_at (\%A, \%B, \%C){
push(@free_men, $$someone_is_free_at{$date}) if $$someone_is_free_at{$date};
}
print "@free_men are free at $date\n" if (@free_men > 1);
@free_men = ();
}
出力
A B are free at 2019/07/10
A C are free at 2019/07/15
A B C are free at 2019/07/20
612蟻人間 ◆T6xkBnTXz7B0
2019/06/25(火) 18:43:25.69ID:CrMrKXln ユーチューブのおかげで誰でも動画を投稿してお金を稼げる時代になった。
自分のアイデアをvisualizeし、面白い動画にして投稿すれば、収益化できる。
プログラミングをマルチメディアやGUIに対応させることは当たり前。
あなたもテック系ユーチューバーになろう。
動画は変化する静止画の連続であり、スクリーンショットで一枚一枚画像を撮ってテキトーなツールでつなげれば動画に出来る。
自分のアイデアをvisualizeし、面白い動画にして投稿すれば、収益化できる。
プログラミングをマルチメディアやGUIに対応させることは当たり前。
あなたもテック系ユーチューバーになろう。
動画は変化する静止画の連続であり、スクリーンショットで一枚一枚画像を撮ってテキトーなツールでつなげれば動画に出来る。
613デフォルトの名無しさん
2019/06/25(火) 18:48:37.74ID:UDO8hU+H614デフォルトの名無しさん
2019/06/25(火) 18:50:16.61ID:UDO8hU+H615蟻人間 ◆T6xkBnTXz7B0
2019/06/25(火) 18:52:08.76ID:CrMrKXln お題: あみだくじを解け。n本の縦線を上下に平行に引き、上から順番に二つの縦線を結ぶ形でいくつかm本の横線を引く。下側の縦線の端の一つにゴールを設定するとき、あみだくじの
ルールに従ってゴールに到達する縦線の端のスタート地点を求めよ。
ルールに従ってゴールに到達する縦線の端のスタート地点を求めよ。
617デフォルトの名無しさん
2019/06/25(火) 19:02:19.01ID:UDO8hU+H >>616
そうなるか。ふむふむ。
そうなるか。ふむふむ。
618デフォルトの名無しさん
2019/06/25(火) 19:17:59.99ID:4Msitu63 >>616 おいこら、出題ペースが早すぎるぞ。解答もほとんど出ていない状態で次のなんて出すなよ。
619デフォルトの名無しさん
2019/06/25(火) 19:51:46.12ID:/33lsov2 >>611
日付に対する前置詞はonだぞ
日付に対する前置詞はonだぞ
620デフォルトの名無しさん
2019/06/25(火) 19:56:07.32ID:Y04/VZ6Y >>619
thanks
thanks
621蟻人間 ◆T6xkBnTXz7B0
2019/06/25(火) 20:43:10.45ID:ayyd1Kg3 面白い動画たーくさん作って早く労働者階級を卒業しよっぜ。
622デフォルトの名無しさん
2019/06/25(火) 23:32:34.03ID:hlLFLgMF623蟻人間 ◆T6xkBnTXz7B0
2019/06/25(火) 23:47:01.47ID:ayyd1Kg3 多角形の問題は、最小包含円問題というらしい。
624デフォルトの名無しさん
2019/06/26(水) 01:05:18.27ID:fhfivptN625デフォルトの名無しさん
2019/06/26(水) 01:11:38.67ID:QUl0UMlC >>600 Perl5
@a = map{sprintf"2019/07/%02d",$_} 1..31;
$h{$_}{A}=1 for qw{2019/07/05 2019/07/10 2019/07/15 2019/07/20};
$h{$_}{B}=1 for qw{2019/07/08 2019/07/10 2019/07/20};
$h{$_}{C}=1 for qw{2019/07/15 2019/07/20 2019/07/25};
@b = grep{1<keys %{$h{$_}}} @a;
print "$_ @{[keys %h{$_}]}\n" for @b;
実行結果
~ $ perl 14_600.pl
keys on reference is experimental at 14_600.pl line 6.
2019/07/10 B A
2019/07/15 C A
2019/07/20 B A C
@a = map{sprintf"2019/07/%02d",$_} 1..31;
$h{$_}{A}=1 for qw{2019/07/05 2019/07/10 2019/07/15 2019/07/20};
$h{$_}{B}=1 for qw{2019/07/08 2019/07/10 2019/07/20};
$h{$_}{C}=1 for qw{2019/07/15 2019/07/20 2019/07/25};
@b = grep{1<keys %{$h{$_}}} @a;
print "$_ @{[keys %h{$_}]}\n" for @b;
実行結果
~ $ perl 14_600.pl
keys on reference is experimental at 14_600.pl line 6.
2019/07/10 B A
2019/07/15 C A
2019/07/20 B A C
626蟻人間 ◆T6xkBnTXz7B0
2019/06/26(水) 01:12:45.72ID:FZmH/DTQ627デフォルトの名無しさん
2019/06/26(水) 01:16:52.13ID:QUl0UMlC >>625 スマソ「keys on reference is experimental at 14_600.pl line 6.」が出ちゃってた…orz
>>600 Perl5 チョット修正
@a = map{sprintf"2019/07/%02d",$_} 1..31;
$h{$_}{A}=1 for qw{2019/07/05 2019/07/10 2019/07/15 2019/07/20};
$h{$_}{B}=1 for qw{2019/07/08 2019/07/10 2019/07/20};
$h{$_}{C}=1 for qw{2019/07/15 2019/07/20 2019/07/25};
@b = grep{1<keys %{$h{$_}}} @a;
print "$_ @{[keys %{$h{$_}}]}\n" for @b;
実行結果
~ $ perl 14_600.pl
2019/07/10 B A
2019/07/15 A C
2019/07/20 B C A
>>600 Perl5 チョット修正
@a = map{sprintf"2019/07/%02d",$_} 1..31;
$h{$_}{A}=1 for qw{2019/07/05 2019/07/10 2019/07/15 2019/07/20};
$h{$_}{B}=1 for qw{2019/07/08 2019/07/10 2019/07/20};
$h{$_}{C}=1 for qw{2019/07/15 2019/07/20 2019/07/25};
@b = grep{1<keys %{$h{$_}}} @a;
print "$_ @{[keys %{$h{$_}}]}\n" for @b;
実行結果
~ $ perl 14_600.pl
2019/07/10 B A
2019/07/15 A C
2019/07/20 B C A
628蟻人間 ◆T6xkBnTXz7B0
2019/06/26(水) 04:24:04.79ID:FZmH/DTQ 日本とゐう国は労使から朽ちていつたんだなあ。
629デフォルトの名無しさん
2019/06/26(水) 04:36:53.79ID:wPd2Gy/W >>628
旧仮名なら「日本と云(い)ふ」だろボケカス
旧仮名なら「日本と云(い)ふ」だろボケカス
630デフォルトの名無しさん
2019/06/26(水) 08:13:01.09ID:Qt7BED0r >>555 Lua
prrint("ん")
prrint("ん")
631デフォルトの名無しさん
2019/06/26(水) 09:27:43.17ID:4ftm39hn632デフォルトの名無しさん
2019/06/26(水) 10:05:25.43ID:I0iq5RkX 整数が複数与えられて、そのうちの5つの積が最大になるものってどうやって選べばいいの?
絶対数でソートしても、負数が奇数個だとマイナスだし頭がこんがらがる
絶対数でソートしても、負数が奇数個だとマイナスだし頭がこんがらがる
633デフォルトの名無しさん
2019/06/26(水) 10:27:17.99ID:qQlb55ju 正数の大きい方から5個
正数の大きい方から3個と負数の絶対数の大きい方から2個
正数の大きい方から1個と負数の絶対数の大きい方から4個
で比較すれば?
正数の大きい方から3個と負数の絶対数の大きい方から2個
正数の大きい方から1個と負数の絶対数の大きい方から4個
で比較すれば?
634デフォルトの名無しさん
2019/06/26(水) 10:35:24.88ID:qQlb55ju 別に正数とか負数とか気にしないでも良いか
ソートして、上から5個 上から3個と下から2個 上から1個と下から4個 の中で最大のものを選べば
ソートして、上から5個 上から3個と下から2個 上から1個と下から4個 の中で最大のものを選べば
635デフォルトの名無しさん
2019/06/26(水) 12:11:39.42ID:4ftm39hn636デフォルトの名無しさん
2019/06/26(水) 12:18:02.87ID:Hr9hv0Xe 古典的スタートレックゲーム
言語はなんでもよし
言語はなんでもよし
637デフォルトの名無しさん
2019/06/26(水) 12:52:21.84ID:4t4MRNDi >>632
思考停止して全パターン出して最大値を取る。
あえて5個以下だとエラー。
対策するなら関数fで長さが5個以下か判定すれば良い。
昔、似た様な問題でリスト内包表記と再帰を組み合わせて、
スマートな方法を誰か書いてたの見たけど忘れた。
Haskell
main = f [(-1),4,(-2),1,3,2]
f xs = maximum [product [a,b,c,d,e]|
a <- xs, b <- xs, c <- xs, d <- xs, e <- xs,
a /= b, a /= c, a /= d, a /= e, b /= c, b/= d, b /= e, c /= d, c /= e, d /= e]
思考停止して全パターン出して最大値を取る。
あえて5個以下だとエラー。
対策するなら関数fで長さが5個以下か判定すれば良い。
昔、似た様な問題でリスト内包表記と再帰を組み合わせて、
スマートな方法を誰か書いてたの見たけど忘れた。
Haskell
main = f [(-1),4,(-2),1,3,2]
f xs = maximum [product [a,b,c,d,e]|
a <- xs, b <- xs, c <- xs, d <- xs, e <- xs,
a /= b, a /= c, a /= d, a /= e, b /= c, b/= d, b /= e, c /= d, c /= e, d /= e]
638デフォルトの名無しさん
2019/06/26(水) 15:36:37.02ID:GwE3QISY >>637 おいおい、いくつの中から5個取り出すかわからないんだぞ。 100000個の中から5個取り出すと結構な時間がかかるだろ。
どんだけの組み合わせになるんだよ。
どんだけの組み合わせになるんだよ。
639デフォルトの名無しさん
2019/06/26(水) 15:53:36.43ID:4t4MRNDi >>638
だから思考停止っって書いてるんよ^^;
だから思考停止っって書いてるんよ^^;
640デフォルトの名無しさん
2019/06/26(水) 16:01:02.80ID:4t4MRNDi >>632
Listモジュールに関数あった。。。
Haskell
import Data.List
main = print $ f [(-1),4,(-2),1,3,2]
f = maximum.map product.permutations
Listモジュールに関数あった。。。
Haskell
import Data.List
main = print $ f [(-1),4,(-2),1,3,2]
f = maximum.map product.permutations
641デフォルトの名無しさん
2019/06/26(水) 18:21:48.58ID:D6IEM3tk 全部負なら、必ず答えも負になるんだから選ぶのは上から5個で良くないか
つまり634で合ってると思う
0も問題無いな、どこにあっても網羅されてる
つまり634で合ってると思う
0も問題無いな、どこにあっても網羅されてる
642デフォルトの名無しさん
2019/06/27(木) 01:55:36.37ID:sxRhjDp7 >>600
perl5 ワンライナー
perl -ne 'if(/^(.*?),(.*)$/){$d{$2}{$1}=1}END{for(sort keys%d){if(keys%{$d{$_}}>=2){print"$_ ".join(",",sort keys%{$d{$_}})."\n"}}}'
入力
A,2019/07/05
A,2019/07/10
A,2019/07/15
A,2019/07/20
B,2019/07/08
B,2019/07/10
B,2019/07/20
C,2019/07/15
C,2019/07/20
C,2019/07/25
出力
2019/07/10 A,B
2019/07/15 A,C
2019/07/20 A,B,C
perl5 ワンライナー
perl -ne 'if(/^(.*?),(.*)$/){$d{$2}{$1}=1}END{for(sort keys%d){if(keys%{$d{$_}}>=2){print"$_ ".join(",",sort keys%{$d{$_}})."\n"}}}'
入力
A,2019/07/05
A,2019/07/10
A,2019/07/15
A,2019/07/20
B,2019/07/08
B,2019/07/10
B,2019/07/20
C,2019/07/15
C,2019/07/20
C,2019/07/25
出力
2019/07/10 A,B
2019/07/15 A,C
2019/07/20 A,B,C
643デフォルトの名無しさん
2019/06/27(木) 07:16:25.32ID:ken8tLFo >>635
oh...全て負の場合は数値が大きい方(絶対値が小さい方)から5個だな
oh...全て負の場合は数値が大きい方(絶対値が小さい方)から5個だな
644デフォルトの名無しさん
2019/06/27(木) 07:17:36.65ID:ken8tLFo と、それは上から5個か…寝起き死んでるww
645デフォルトの名無しさん
2019/06/27(木) 10:12:29.88ID:kVdr/MgG >>637
試した限りじゃ上手く動いてる。
もっとスマートな書き方出来ないものか。。。
Haskell
import Data.List
main = (print.f) [9,(-5),3,2,1,8,(-4)]
f xs |(odd.length) b && (length.filter (<0)) xs > 1 =
promax
((map snd.f') a ++ (map snd.take (5 - (length.f') a)) b')
((map snd.take 5.abslst) xs)
where
a = (filter ((>=0).snd).take 5.abslst) xs
a' = (filter ((>=0).snd).abslst) xs
b = (filter ((< 0).snd).take 5.abslst) xs
b' = (filter ((< 0).snd).abslst) xs
f' xs |length a > length b = init xs
f' _ = (take (5 - (length.init) b)) a'
f xs = promax ((take 5.reverse.sort) xs) ((map snd.take 5.abslst) xs)
promax xs ys |product xs > product ys = xs
promax _ ys = ys
abslst xs = reverse.sort $ zip (map abs xs) xs
試した限りじゃ上手く動いてる。
もっとスマートな書き方出来ないものか。。。
Haskell
import Data.List
main = (print.f) [9,(-5),3,2,1,8,(-4)]
f xs |(odd.length) b && (length.filter (<0)) xs > 1 =
promax
((map snd.f') a ++ (map snd.take (5 - (length.f') a)) b')
((map snd.take 5.abslst) xs)
where
a = (filter ((>=0).snd).take 5.abslst) xs
a' = (filter ((>=0).snd).abslst) xs
b = (filter ((< 0).snd).take 5.abslst) xs
b' = (filter ((< 0).snd).abslst) xs
f' xs |length a > length b = init xs
f' _ = (take (5 - (length.init) b)) a'
f xs = promax ((take 5.reverse.sort) xs) ((map snd.take 5.abslst) xs)
promax xs ys |product xs > product ys = xs
promax _ ys = ys
abslst xs = reverse.sort $ zip (map abs xs) xs
646デフォルトの名無しさん
2019/06/27(木) 10:13:36.13ID:kVdr/MgG promax xs ys |product xs > product ys = xs
promax _ ys = ys
abslst xs = reverse.sort $ zip (map abs xs) xs
promax _ ys = ys
abslst xs = reverse.sort $ zip (map abs xs) xs
647蟻人間 ◆T6xkBnTXz7B0
2019/06/27(木) 16:22:58.68ID:nAZ+iPIM だれかあみだくじ解けない?
648デフォルトの名無しさん
2019/06/27(木) 16:37:32.78ID:cEwto4HN I can, but I won't.
649デフォルトの名無しさん
2019/06/27(木) 17:17:24.80ID:fA/gCr42 >>632 Sqeueak Smalltalk
| data stream selection set numNegs |
data := #(9 -5 -3 2 1 8 -4).
stream := ((data copyWithout: 0) sortBy: #abs descending) readStream.
set := Set with: (selection := (stream next: 5) asArray).
numNegs := selection count: #negative.
(numNegs > 0 and: [numNegs odd]) ifTrue: [
| nextNeg nextPos lastPosIdx lastNegIdx |
nextNeg := nextPos := nil.
lastPosIdx := selection findLast: #positive.
lastNegIdx := selection findLast: #negative.
[(nextNeg isNil or: [nextPos isNil]) and: [stream atEnd not]] whileTrue: [
| next |
next := stream next.
(lastPosIdx > 0 and: [nextNeg isNil] and: [next negative])
ifTrue: [set add: (selection copyWithoutIndex: lastPosIdx), {nextNeg := next}].
(lastNegIdx > 0 and: [nextPos isNil] and: [next positive])
ifTrue: [set add: (selection copyWithoutIndex: lastNegIdx), {nextPos :=next}]
].
].
set detectMax: [:xs | xs reduce: #*]
"=> #(9 8 -5 -4 2) "
Pharo Smalltalk版 → http://ws.stfx.eu/OK6PHG96QEY8
| data stream selection set numNegs |
data := #(9 -5 -3 2 1 8 -4).
stream := ((data copyWithout: 0) sortBy: #abs descending) readStream.
set := Set with: (selection := (stream next: 5) asArray).
numNegs := selection count: #negative.
(numNegs > 0 and: [numNegs odd]) ifTrue: [
| nextNeg nextPos lastPosIdx lastNegIdx |
nextNeg := nextPos := nil.
lastPosIdx := selection findLast: #positive.
lastNegIdx := selection findLast: #negative.
[(nextNeg isNil or: [nextPos isNil]) and: [stream atEnd not]] whileTrue: [
| next |
next := stream next.
(lastPosIdx > 0 and: [nextNeg isNil] and: [next negative])
ifTrue: [set add: (selection copyWithoutIndex: lastPosIdx), {nextNeg := next}].
(lastNegIdx > 0 and: [nextPos isNil] and: [next positive])
ifTrue: [set add: (selection copyWithoutIndex: lastNegIdx), {nextPos :=next}]
].
].
set detectMax: [:xs | xs reduce: #*]
"=> #(9 8 -5 -4 2) "
Pharo Smalltalk版 → http://ws.stfx.eu/OK6PHG96QEY8
650デフォルトの名無しさん
2019/06/28(金) 01:49:16.31ID:Vk0oU0Nl >>632 haskell
import Data.List
f xs = if length xs < 5 then undefined else (maximumBy(\ x y ->compare(product x)(product y))$zipWith(++)(reverse.inits.(take 5).reverse.sort$xs)(inits.(take 5).sort$xs))
f [9,-5,-3,2,1,8,-4]
-- > [9,8,2,-5,-4]
import Data.List
f xs = if length xs < 5 then undefined else (maximumBy(\ x y ->compare(product x)(product y))$zipWith(++)(reverse.inits.(take 5).reverse.sort$xs)(inits.(take 5).sort$xs))
f [9,-5,-3,2,1,8,-4]
-- > [9,8,2,-5,-4]
651デフォルトの名無しさん
2019/06/29(土) 05:03:25.69ID:BpIUWIWl お題: Hello, World!が入力されるのでHelloとWorldを入れ替えて表示せよ
652デフォルトの名無しさん
2019/06/29(土) 07:48:16.22ID:FqBWYLWj あまりにも簡単すぎる問題は控えて欲しいな、たまになら休憩として良いけど。
653デフォルトの名無しさん
2019/06/29(土) 11:18:10.70ID:HRfvRfYw printed("World, Hello!");
654デフォルトの名無しさん
2019/06/29(土) 11:36:54.32ID:t9YicpKG >>651 Perl5 簡単だけれども、解いてみた
<>=~/(\w+)(\W+)(\w+)(\W+)/;
print "$3$2$1$4\n";
実行結果
~ $ echo 'Hello, World!' | perl 14_651.pl
World, Hello!
※英単語部は任意です
<>=~/(\w+)(\W+)(\w+)(\W+)/;
print "$3$2$1$4\n";
実行結果
~ $ echo 'Hello, World!' | perl 14_651.pl
World, Hello!
※英単語部は任意です
655デフォルトの名無しさん
2019/06/29(土) 13:00:42.80ID:Rvf+oTMW お題:全単射を満足する最小桁数を求める
任意の整数域(-10000..10000とか)を引数とする単調増加/減少関数f(x)に対して、
その計算結果を有効数字n桁で丸めたものをy=round(f(x), n)とする。
xとyの関係が全単射になる(異なるxに対して、同じyにならない事)
最小のnを求めよ。
ttps://ja.wikipedia.org/wiki/%E5%85%A8%E5%8D%98%E5%B0%84
xの値域及びf(x)は回答者が適切と思われるものでよい。
任意の整数域(-10000..10000とか)を引数とする単調増加/減少関数f(x)に対して、
その計算結果を有効数字n桁で丸めたものをy=round(f(x), n)とする。
xとyの関係が全単射になる(異なるxに対して、同じyにならない事)
最小のnを求めよ。
ttps://ja.wikipedia.org/wiki/%E5%85%A8%E5%8D%98%E5%B0%84
xの値域及びf(x)は回答者が適切と思われるものでよい。
656デフォルトの名無しさん
2019/06/29(土) 13:27:37.67ID:HRfvRfYw fは2^N → Rでいいの?
2^Nは自然数の冪集合ね
てか括弧内で全射が無視されてんのが謎
2^Nは自然数の冪集合ね
てか括弧内で全射が無視されてんのが謎
657デフォルトの名無しさん
2019/06/29(土) 14:03:41.17ID:YzN8MsSb echo Hello, World! | perl -pe 's/ (\w+) , \N{SPACE} (\w+) ! /$2, $1!/x'
World, Hello!
World, Hello!
658デフォルトの名無しさん
2019/06/29(土) 14:38:46.06ID:LAXJlpSi イプシロン間際。
659655
2019/06/29(土) 14:50:05.50ID:Rvf+oTMW >>656
f(x)=x/1e4+42 但し xは整数で x∈[-10000, 10000]
とかの、もっと単純なヤツです(この例だとn=6)。
f(x)=10^x
とかだと、n=1なのは自明だし、
f(x)=c 但し cは任意の実定数
とかだと解は存在しないので、これらは除外して下さい。
f(x)=x/1e4+42 但し xは整数で x∈[-10000, 10000]
とかの、もっと単純なヤツです(この例だとn=6)。
f(x)=10^x
とかだと、n=1なのは自明だし、
f(x)=c 但し cは任意の実定数
とかだと解は存在しないので、これらは除外して下さい。
660デフォルトの名無しさん
2019/06/29(土) 14:51:20.55ID:HRfvRfYw >>659
任意の整数域を定義域とする関数に、なんで整数渡してんの?
任意の整数域を定義域とする関数に、なんで整数渡してんの?
661デフォルトの名無しさん
2019/06/29(土) 15:37:47.69ID:mF/+Te8R お題
与えられた画像ファイルを
適当なサイズに縮小・拡大
しモノクローム画像に変換
しアスキーアートに変換す
る
与えられた画像ファイルを
適当なサイズに縮小・拡大
しモノクローム画像に変換
しアスキーアートに変換す
る
662デフォルトの名無しさん
2019/06/29(土) 16:00:34.20ID:S1v50lfX ss = "Hello, World!".split(', ')
print( f'{ss[1]}, {ss[0]}' )
# World!, Hello
print( f'{ss[1]}, {ss[0]}' )
# World!, Hello
663デフォルトの名無しさん
2019/06/29(土) 16:06:20.54ID:YzN8MsSb split のたぐいだと ! の位置がおかしなことになるんだよな
664デフォルトの名無しさん
2019/06/29(土) 16:25:44.25ID:S1v50lfX >>663 おかしいかどうか知らんよ。 問題が細かな事を言っていないんだから。
665デフォルトの名無しさん
2019/06/29(土) 16:30:35.89ID:S1v50lfX >>664 悪い悪い、問題を読み直したら、単語の入れ替えだけで記号の位置はそのままというような感じだな。
666デフォルトの名無しさん
2019/06/29(土) 16:31:18.75ID:/qzOxQgj お題と回答
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11=>>575 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259 342 353
>>320 : 321 323 327 330 340
>>322 : 325 328 329 331 332 339 341 358 359
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11=>>575 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259 342 353
>>320 : 321 323 327 330 340
>>322 : 325 328 329 331 332 339 341 358 359
>>362 : 367 369 370 371 374 379 380 382 414
>>368 : 390
>>388 : 487 (488) 553 559
>>400 : 401
>>408 :
>>417 : 418 419 421 426 432 433 436 438 442 446 451 452 456 471 474 480 482 489 492 495 498 528 530 540
>>479 :
>>555 : 556 558 564 565
>>557 : 560 562 568 569
>>570 : 574 577
>>573 : 604 622
>>600 : 605 607 611 613 627
>>615,626 :
>>632 : 637 640 645 649 650
>>368 : 390
>>388 : 487 (488) 553 559
>>400 : 401
>>408 :
>>417 : 418 419 421 426 432 433 436 438 442 446 451 452 456 471 474 480 482 489 492 495 498 528 530 540
>>479 :
>>555 : 556 558 564 565
>>557 : 560 562 568 569
>>570 : 574 577
>>573 : 604 622
>>600 : 605 607 611 613 627
>>615,626 :
>>632 : 637 640 645 649 650
670デフォルトの名無しさん
2019/06/29(土) 16:41:45.64ID:dLka8n6Z >>669
ごめん迷惑だからそれやめて
ごめん迷惑だからそれやめて
671デフォルトの名無しさん
2019/06/29(土) 16:59:14.03ID:S1v50lfX >>669 安静にしてた方が良いと思うよ。 反発のない世界で触れ合うのは良いと思うけど、2ch/5ch みたいなところに出てくると、傷つくのは目に見えてる。
みるのが楽しければ、みるだけにとどめるとか。
みるのが楽しければ、みるだけにとどめるとか。
672デフォルトの名無しさん
2019/06/29(土) 20:21:36.23ID:YzN8MsSb w3m https://mevius.5ch.net/test/read.cgi/tech/1558168409/ \
|perl -ne 'if (/^1/m){++$body};if (/^ ? \d+コメント$/m){$body=0} ; print if ($body)'\
| ./select_word_and_ancher.pl お題 \
| less
perl はこれ
https://paste.fedoraproject.org/paste/6R~aAhHAd3dYBSH0R8Dfhw
出力はこんなかんじだ
お題のレスが見れて、それにアンカしたレスが続くのを1フィールドとして
全部のお題に大してループする
https://i.imgur.com/WVCFus7.jpg
|perl -ne 'if (/^1/m){++$body};if (/^ ? \d+コメント$/m){$body=0} ; print if ($body)'\
| ./select_word_and_ancher.pl お題 \
| less
perl はこれ
https://paste.fedoraproject.org/paste/6R~aAhHAd3dYBSH0R8Dfhw
出力はこんなかんじだ
お題のレスが見れて、それにアンカしたレスが続くのを1フィールドとして
全部のお題に大してループする
https://i.imgur.com/WVCFus7.jpg
673デフォルトの名無しさん
2019/06/29(土) 20:24:28.47ID:YzN8MsSb 1 のテンプレを順守してればこのコードの漏れはなくなる
674デフォルトの名無しさん
2019/06/29(土) 22:27:44.56ID:SeYudeXv >>667
お前個人の備忘録なんてホントにチラシの裏にでも書いとけよ
お前個人の備忘録なんてホントにチラシの裏にでも書いとけよ
675デフォルトの名無しさん
2019/06/29(土) 22:43:35.91ID:XRcaFM4Y >>651のお題は
> お題: Hello, World!が入力されるのでHelloとWorldを入れ替えて表示せよ
なので、Hello, World!以外が入力されたら無視するかエラーを出すのが正しいのでは?w
> お題: Hello, World!が入力されるのでHelloとWorldを入れ替えて表示せよ
なので、Hello, World!以外が入力されたら無視するかエラーを出すのが正しいのでは?w
677デフォルトの名無しさん
2019/06/29(土) 22:56:34.59ID:SeYudeXv678デフォルトの名無しさん
2019/06/29(土) 23:05:06.71ID:/qzOxQgj679デフォルトの名無しさん
2019/06/30(日) 01:26:45.54ID:V7r21EI6681デフォルトの名無しさん
2019/06/30(日) 01:59:36.72ID:3kywsUGB682デフォルトの名無しさん
2019/06/30(日) 02:25:30.30ID:8mJPxIjl683デフォルトの名無しさん
2019/06/30(日) 08:04:20.61ID:uuDJgtvu お題
#1234→◆gdyb21LQTc
#abcd→◆4vxxTEcn7p
#あいうえお→◆rXz1zlMT-L
左のトリップキーから右のトリップを返すアルゴリズムを探せ
#1234→◆gdyb21LQTc
#abcd→◆4vxxTEcn7p
#あいうえお→◆rXz1zlMT-L
左のトリップキーから右のトリップを返すアルゴリズムを探せ
684デフォルトの名無しさん
2019/06/30(日) 08:39:27.77ID:XM+o4kuM >>683
$ head text hash.sedscr
==> text <==
#1234→◆gdyb21LQTc
#abcd→◆4vxxTEcn7p
#あいうえお→◆rXz1zlMT-L
左のトリップキーから右のトリップを返すアルゴリズムを探せ
==> hash.sedscr <==
s/#1234/◆gdyb21LQTc/
s/#abcd/◆4vxxTEcn7p/
s/#あいうえお/◆rXz1zlMT-L/
$ cat text | sed -f hash.sedscr
◆gdyb21LQTc→◆gdyb21LQTc
◆4vxxTEcn7p→◆4vxxTEcn7p
◆rXz1zlMT-L→◆rXz1zlMT-L
左のトリップキーから右のトリップを返すアルゴリズムを探せ
$ head text hash.sedscr
==> text <==
#1234→◆gdyb21LQTc
#abcd→◆4vxxTEcn7p
#あいうえお→◆rXz1zlMT-L
左のトリップキーから右のトリップを返すアルゴリズムを探せ
==> hash.sedscr <==
s/#1234/◆gdyb21LQTc/
s/#abcd/◆4vxxTEcn7p/
s/#あいうえお/◆rXz1zlMT-L/
$ cat text | sed -f hash.sedscr
◆gdyb21LQTc→◆gdyb21LQTc
◆4vxxTEcn7p→◆4vxxTEcn7p
◆rXz1zlMT-L→◆rXz1zlMT-L
左のトリップキーから右のトリップを返すアルゴリズムを探せ
685デフォルトの名無しさん
2019/06/30(日) 09:03:57.63ID:AuhBLaKB686デフォルトの名無しさん
2019/06/30(日) 09:33:15.89ID:uuDJgtvu >>685
Magnificent !!
Magnificent !!
687デフォルトの名無しさん
2019/06/30(日) 18:48:21.28ID:TQbu+/Q+ >>678 Perl5(組合せ計算のモジュールはCPANにあるが言語処理系に標準で含まれるCOREモジュールではないので使わずに実装した)
@a=sort{$b<=>$a} qw{9 -5 -3 2 1 8 0 -4 -1 4 -2 1 3 2};
@b=splice @a,0,5;
splice @a,0,-4;
@c=(@b, @a); # 大きい方から5個と小さい方から4個,計最長9個
sub combi { # 組合せ
my @s;
if (my $n = shift) {
while ($n <= @_) {
my $t = shift;
push @s, map{[$t, @$_]} combi($n - 1, @_);
}
} else {
@s = ([]);
}
@s
}
@d = combi(5, @c); # 126個
use List::Util 'product';
@e = sort{$$b[0]<=>$$a[0]} map{[product(@$_), $_]} @d;
print "@{$e[0][1]} => $e[0][0]\n";
実行結果
~ $ perl 14_632.pl
9 8 4 -4 -5 => 5760
@a=sort{$b<=>$a} qw{9 -5 -3 2 1 8 0 -4 -1 4 -2 1 3 2};
@b=splice @a,0,5;
splice @a,0,-4;
@c=(@b, @a); # 大きい方から5個と小さい方から4個,計最長9個
sub combi { # 組合せ
my @s;
if (my $n = shift) {
while ($n <= @_) {
my $t = shift;
push @s, map{[$t, @$_]} combi($n - 1, @_);
}
} else {
@s = ([]);
}
@s
}
@d = combi(5, @c); # 126個
use List::Util 'product';
@e = sort{$$b[0]<=>$$a[0]} map{[product(@$_), $_]} @d;
print "@{$e[0][1]} => $e[0][0]\n";
実行結果
~ $ perl 14_632.pl
9 8 4 -4 -5 => 5760
688デフォルトの名無しさん
2019/06/30(日) 18:49:06.96ID:TQbu+/Q+689デフォルトの名無しさん
2019/07/01(月) 01:03:55.45ID:2xJWXsNl >>632 Perl5 (CPANのMath::Combinatoricsモジュール使用)
use Math::Combinatorics;
use List::Util 'product';
@a=sort{$b<=>$a} qw{9 -5 -3 2 1 8 0 -4 -1 4 -2 1 3 2};
@b=splice @a,0,5;
splice @a,0,-4;
@c=(@b, @a);
@d=combine 5, @c;
@e=sort{$$b[0]<=>$$a[0]} map{[product(@$_), $_]} @d;
実行結果
~ $ perl 14_632_2.pl
9 4 8 -5 -4 => 5760
use Math::Combinatorics;
use List::Util 'product';
@a=sort{$b<=>$a} qw{9 -5 -3 2 1 8 0 -4 -1 4 -2 1 3 2};
@b=splice @a,0,5;
splice @a,0,-4;
@c=(@b, @a);
@d=combine 5, @c;
@e=sort{$$b[0]<=>$$a[0]} map{[product(@$_), $_]} @d;
実行結果
~ $ perl 14_632_2.pl
9 4 8 -5 -4 => 5760
690デフォルトの名無しさん
2019/07/01(月) 01:17:22.86ID:2xJWXsNl691600
2019/07/01(月) 12:51:23.31ID:O1pDJEnN >>600
Ruby で、
require 'date'
ary_A = %w(2019/07/05 2019/07/10 2019/07/15 2019/07/20)
ary_B = %w(2019/07/08 2019/07/10 2019/07/20)
ary_C = %w(2019/07/15 2019/07/20 2019/07/25)
# 文字列の配列から、ハッシュを作る。Date#jd は、ユリウス日。整数型
def make_hash( ary, name )
ary.each_with_object( { } ) {
| str, h | h[ Date.parse( str ).jd ] = [ str, name ] }
end
# ハッシュをマージする。h_1 を上書きする。slice で、位置1 から、1つだけ
def merge_hash( h_1, h_2 )
h_1.merge!( h_2 ) { |key, v_1, v_2| v_1 + v_2.slice( 1, 1 ) }
end
hash_A = make_hash( ary_A, "A" )
hash_B = make_hash( ary_B, "B" )
hash_C = make_hash( ary_C, "C" )
merge_hash( hash_A, hash_B )
merge_hash( hash_A, hash_C )
hash_A.select { |k, v| v.length >= 3 }.sort.each { |elem|
puts elem.last.join( ", " ) }
Ruby で、
require 'date'
ary_A = %w(2019/07/05 2019/07/10 2019/07/15 2019/07/20)
ary_B = %w(2019/07/08 2019/07/10 2019/07/20)
ary_C = %w(2019/07/15 2019/07/20 2019/07/25)
# 文字列の配列から、ハッシュを作る。Date#jd は、ユリウス日。整数型
def make_hash( ary, name )
ary.each_with_object( { } ) {
| str, h | h[ Date.parse( str ).jd ] = [ str, name ] }
end
# ハッシュをマージする。h_1 を上書きする。slice で、位置1 から、1つだけ
def merge_hash( h_1, h_2 )
h_1.merge!( h_2 ) { |key, v_1, v_2| v_1 + v_2.slice( 1, 1 ) }
end
hash_A = make_hash( ary_A, "A" )
hash_B = make_hash( ary_B, "B" )
hash_C = make_hash( ary_C, "C" )
merge_hash( hash_A, hash_B )
merge_hash( hash_A, hash_C )
hash_A.select { |k, v| v.length >= 3 }.sort.each { |elem|
puts elem.last.join( ", " ) }
692デフォルトの名無しさん
2019/07/02(火) 00:55:09.45ID:l8Ho6rg6 乙
693デフォルトの名無しさん
2019/07/03(水) 05:29:13.40ID:/Fyb2XSg >>570 Lua
prrint("(X)")
prrint("(X)")
694デフォルトの名無しさん
2019/07/03(水) 13:00:21.17ID:0rGzsSa9 >>570
exho 八
exho 八
695デフォルトの名無しさん
2019/07/03(水) 23:21:16.00ID:S/aBv8fE お題
直線状の(配列を使った)ライフゲームがある。ルールは、
1. 両隣が生きていれば、暑苦しいので死ぬ
2. 両隣が死んでいれば、寂しいので死ぬ
3. 両隣の内、片方だけが生きていれば、生きる
4. 両端の2つについては、隣が生きていれば生きるし、隣が死んでいれば死ぬ
5. すべてのマスの状態の変更は、同時にすること
下の初期値(1 ターン目)から初めて、状態が変わらなくなるのは、何ターン目か?
nターン目と、( n + 1 )ターン目が同じなら、nターン目を答える
ただし、漏れは検証していないので、100ターンを超えたら、終了してくださいw
* は生、. は死を表す
.*...**.*.***..
直線状の(配列を使った)ライフゲームがある。ルールは、
1. 両隣が生きていれば、暑苦しいので死ぬ
2. 両隣が死んでいれば、寂しいので死ぬ
3. 両隣の内、片方だけが生きていれば、生きる
4. 両端の2つについては、隣が生きていれば生きるし、隣が死んでいれば死ぬ
5. すべてのマスの状態の変更は、同時にすること
下の初期値(1 ターン目)から初めて、状態が変わらなくなるのは、何ターン目か?
nターン目と、( n + 1 )ターン目が同じなら、nターン目を答える
ただし、漏れは検証していないので、100ターンを超えたら、終了してくださいw
* は生、. は死を表す
.*...**.*.***..
696デフォルトの名無しさん
2019/07/04(木) 00:54:11.99ID:j53oJnyj >>695 Pharo/Squeak Smalltalk
| map next turn |
map := '.*...**.*.***..' asArray collect: [:x | (x = $*) asBit].
next := [map allButFirst, {0} + ({0}, map allButLast) collect: [:x | (x = 1) asBit]].
turn := 1.
[map = (map := next value) or: [(turn := turn + 1) >= 100]] whileFalse.
^turn "=> 13 "
| map next turn |
map := '.*...**.*.***..' asArray collect: [:x | (x = $*) asBit].
next := [map allButFirst, {0} + ({0}, map allButLast) collect: [:x | (x = 1) asBit]].
turn := 1.
[map = (map := next value) or: [(turn := turn + 1) >= 100]] whileFalse.
^turn "=> 13 "
697デフォルトの名無しさん
2019/07/04(木) 01:48:41.98ID:3GgPlSpw698デフォルトの名無しさん
2019/07/04(木) 02:56:15.33ID:GH7xphp0 プログラムしてないけど、そういう結果になると思う。
699デフォルトの名無しさん
2019/07/04(木) 07:37:27.36ID:Ic4+qAXv 増える条件ナインかこれ
700デフォルトの名無しさん
2019/07/04(木) 08:19:44.93ID:k4YTb8Ao LifeGameなら生まれる条件つけないと。
701デフォルトの名無しさん
2019/07/04(木) 08:35:23.83ID:11vlC8ZO >>695 ruby 13ターンで全滅
life = ' .*...**.*.***.. '
puts "%4d %s" % [1, life]
100.times{|gene|
life2 = ' ' * life.size
(life.size-2).times{|i| life2[i+1] = ((life[i] == '*') ^ (life[i+2] == '*'))? '*' : '.' } # rule 1, 2, 3, 4
break if life == life2
puts "%4d %s" % [gene+2, life2]
life = life2 # rule 5
}
life = ' .*...**.*.***.. '
puts "%4d %s" % [1, life]
100.times{|gene|
life2 = ' ' * life.size
(life.size-2).times{|i| life2[i+1] = ((life[i] == '*') ^ (life[i+2] == '*'))? '*' : '.' } # rule 1, 2, 3, 4
break if life == life2
puts "%4d %s" % [gene+2, life2]
life = life2 # rule 5
}
702デフォルトの名無しさん
2019/07/04(木) 09:15:04.08ID:49DxGPOe プログラム組むまでもなく3ターンで終わりなんだけど解釈間違ってんのかな
703デフォルトの名無しさん
2019/07/04(木) 11:47:20.51ID:oZa6FYcv >>695 Java
https://ideone.com/8cforf
生きるってのが誕生も含める場合13ターン >>696 >>701
生きるってのが生存のみの場合3ターン >>697
ってことだな
https://ideone.com/8cforf
生きるってのが誕生も含める場合13ターン >>696 >>701
生きるってのが生存のみの場合3ターン >>697
ってことだな
704695
2019/07/04(木) 16:13:36.89ID:vGw4d28b 生きるとは、新たに誕生する場合も、含めてください!
705デフォルトの名無しさん
2019/07/04(木) 16:51:48.26ID:NOiQUdad ジョジョくさいセリフ
706デフォルトの名無しさん
2019/07/04(木) 17:41:32.68ID:UVclwvu+ 居ないときは両隣が生きていれば生まれる
(生きているときは 1. に従い死ぬ)
とかの方がいいんじゃない?
(生きているときは 1. に従い死ぬ)
とかの方がいいんじゃない?
707デフォルトの名無しさん
2019/07/04(木) 17:59:22.42ID:oZa6FYcv >>695,704
つまりルール90の1次元セルオートマトンってことでいいのかの? (誕生無しの場合ルール18になる)
セル・オートマトン#1次元セル・オートマトン
https://ja.wikipedia.org/wiki/%E3%82%BB%E3%83%AB%E3%83%BB%E3%82%AA%E3%83%BC%E3%83%88%E3%83%9E%E3%83%88%E3%83%B3#1%E6%AC%A1%E5%85%83%E3%82%BB%E3%83%AB%E3%83%BB%E3%82%AA%E3%83%BC%E3%83%88%E3%83%9E%E3%83%88%E3%83%B3
つまりルール90の1次元セルオートマトンってことでいいのかの? (誕生無しの場合ルール18になる)
セル・オートマトン#1次元セル・オートマトン
https://ja.wikipedia.org/wiki/%E3%82%BB%E3%83%AB%E3%83%BB%E3%82%AA%E3%83%BC%E3%83%88%E3%83%9E%E3%83%88%E3%83%B3#1%E6%AC%A1%E5%85%83%E3%82%BB%E3%83%AB%E3%83%BB%E3%82%AA%E3%83%BC%E3%83%88%E3%83%9E%E3%83%88%E3%83%B3
708デフォルトの名無しさん
2019/07/04(木) 22:15:57.84ID:Otr1Y9/T お題: コマンド「stack」を実装しなさい
stackの仕様
$ stack push hoge
で文字列hogeをスタックにプッシュする
$ stack pop
hoge
でスタックに積んだ文字列をポップする
スタックが空の場合は何も表示しない
stackの仕様
$ stack push hoge
で文字列hogeをスタックにプッシュする
$ stack pop
hoge
でスタックに積んだ文字列をポップする
スタックが空の場合は何も表示しない
709デフォルトの名無しさん
2019/07/04(木) 23:07:41.19ID:3GgPlSpw ライフゲームだけど、生まれる話は聞いてないなぁ。
主が生まれる条件書いてねー気がする。
主が生まれる条件書いてねー気がする。
710デフォルトの名無しさん
2019/07/05(金) 00:22:45.10ID:cLn1h7ts >>702
手計算したら同じく3手だった
手計算したら同じく3手だった
711デフォルトの名無しさん
2019/07/05(金) 00:31:50.12ID:4z1quspY >>695,704 Perl5
sub f {
@a = map{'*' eq $_} split '', '.*...**.*.***..';
for ($t = 2; $t <= 100; $t++) {
@b = $_[0]->();
$t--, last if "@b" eq "@a";
@a = @b;
}
@a = map{$_ ? '*' : '.'} @b;
}
f(sub{$a[1], (map{$a[$_] and ($a[$_-1] xor $a[$_+1])} 1..$#a-1), $a[$#a-1]});
print "生存のみ $t: ", @a, "\n";
f(sub{$a[1], (map{$a[$_-1] xor $a[$_+1]} 1..$#a-1), $a[$#a-1]});
print "誕生あり $t: ", @a, "\n";
実行結果
~ $ perl 14_695.pl
生存のみ 3: .....**........
誕生含む 13: ...............
sub f {
@a = map{'*' eq $_} split '', '.*...**.*.***..';
for ($t = 2; $t <= 100; $t++) {
@b = $_[0]->();
$t--, last if "@b" eq "@a";
@a = @b;
}
@a = map{$_ ? '*' : '.'} @b;
}
f(sub{$a[1], (map{$a[$_] and ($a[$_-1] xor $a[$_+1])} 1..$#a-1), $a[$#a-1]});
print "生存のみ $t: ", @a, "\n";
f(sub{$a[1], (map{$a[$_-1] xor $a[$_+1]} 1..$#a-1), $a[$#a-1]});
print "誕生あり $t: ", @a, "\n";
実行結果
~ $ perl 14_695.pl
生存のみ 3: .....**........
誕生含む 13: ...............
712デフォルトの名無しさん
2019/07/05(金) 00:33:12.20ID:4z1quspY713デフォルトの名無しさん
2019/07/05(金) 00:41:15.13ID:4z1quspY >>711 たびたびゴメン、微妙に間違えていた、この入力の場合答えは変わらないけど
sub f {
@a = map{'*' eq $_} split '', '.*...**.*.***..';
for ($t = 2; $t <= 100; $t++) {
@b = $_[0]->();
$t--, last if "@b" eq "@a";
@a = @b;
}
@a = map{$_ ? '*' : '.'} @b;
}
f(sub{map{$a[$_] and ($a[$_-1] xor $a[$_+1])} 0..$#a});
print "生存のみ $t: ", @a, "\n";
f(sub{$a[1], (map{$a[$_-1] xor $a[$_+1]} 1..$#a-1), $a[$#a-1]});
print "誕生あり $t: ", @a, "\n";
~ $ perl 14_695.pl
生存のみ 3: .....**........
誕生あり 13: ...............
sub f {
@a = map{'*' eq $_} split '', '.*...**.*.***..';
for ($t = 2; $t <= 100; $t++) {
@b = $_[0]->();
$t--, last if "@b" eq "@a";
@a = @b;
}
@a = map{$_ ? '*' : '.'} @b;
}
f(sub{map{$a[$_] and ($a[$_-1] xor $a[$_+1])} 0..$#a});
print "生存のみ $t: ", @a, "\n";
f(sub{$a[1], (map{$a[$_-1] xor $a[$_+1]} 1..$#a-1), $a[$#a-1]});
print "誕生あり $t: ", @a, "\n";
~ $ perl 14_695.pl
生存のみ 3: .....**........
誕生あり 13: ...............
714デフォルトの名無しさん
2019/07/05(金) 07:06:17.78ID:8ZiX2Qqp715701
2019/07/05(金) 07:27:15.34ID:FwZHoBTZ >>695 ruby 13ターンで全滅 (>>701 bit演算化)
life = '.*...**.*.***..'
bord = life.tr('.*','01').to_i(2)
mask = 2 ** life.size - 1
fmt = "%%0%db" % life.size
100.times{|gene|
puts "%5d %s" % [gene+1, (fmt % bord).tr('01','.*')]
bord2 = ((bord<<1)^(bord>>1)) & mask # rule 1, 2, 3, 4
break if bord == bord2
bord = bord2
}
life = '.*...**.*.***..'
bord = life.tr('.*','01').to_i(2)
mask = 2 ** life.size - 1
fmt = "%%0%db" % life.size
100.times{|gene|
puts "%5d %s" % [gene+1, (fmt % bord).tr('01','.*')]
bord2 = ((bord<<1)^(bord>>1)) & mask # rule 1, 2, 3, 4
break if bord == bord2
bord = bord2
}
716695
2019/07/05(金) 12:37:23.14ID:imex3OYJ >>706
>1. 両隣が生きていれば、暑苦しいので死ぬ
これを変形して、
1a. 自マスが生きている場合、両隣が生きていれば、暑苦しいので死ぬ
1b. 自マスが死んでいる場合、両隣が生きていれば、生きる(新たに誕生する)
1c. ただし、両端の2つのマスについては、1a, 1b を適用せず、ルール4 で良い。
4. 両端の2つについては、隣が生きていれば生きるし、隣が死んでいれば死ぬ
つまり、両端の2つについては、そのマスの両隣の内、
存在しないマスを死んでいるものとして扱うと、常に、1a, 1bには該当しない
興味があれば、この変形ルールでも、やってみてください!
ただし、漏れは、どうなるのか知りませんがw
>>707
確かに、ルール90 と同じです
>1. 両隣が生きていれば、暑苦しいので死ぬ
これを変形して、
1a. 自マスが生きている場合、両隣が生きていれば、暑苦しいので死ぬ
1b. 自マスが死んでいる場合、両隣が生きていれば、生きる(新たに誕生する)
1c. ただし、両端の2つのマスについては、1a, 1b を適用せず、ルール4 で良い。
4. 両端の2つについては、隣が生きていれば生きるし、隣が死んでいれば死ぬ
つまり、両端の2つについては、そのマスの両隣の内、
存在しないマスを死んでいるものとして扱うと、常に、1a, 1bには該当しない
興味があれば、この変形ルールでも、やってみてください!
ただし、漏れは、どうなるのか知りませんがw
>>707
確かに、ルール90 と同じです
717デフォルトの名無しさん
2019/07/05(金) 15:42:56.85ID:RqW7c8ei 【7ピンN枚の河内塔の最短手順問題】
初期状態では帽子はピン0
にあり、ピン6にすべて移す
までの最小手順の回数を求める
例:
N=3 5回
0->4
0->5
0->6
5->6
4->6
初期状態では帽子はピン0
にあり、ピン6にすべて移す
までの最小手順の回数を求める
例:
N=3 5回
0->4
0->5
0->6
5->6
4->6
718デフォルトの名無しさん
2019/07/05(金) 16:33:02.65ID:FwZHoBTZ >>716 ruby 63ターン以降2周期ループ(62,63,62,63,,,)
life = '.*...**.*.***..'
bord = life.tr('.*','01').to_i(2)
mask = 2 ** life.size - 1
fmt = "%%0%db" % life.size
bords = {bord=>true}
100.times{|gene|
puts "%5d %s" % [gene+1, (fmt % bord).tr('01','.*')]
bord2 = (bord<<1 ^ bord>>1 | bord<<1 & bord>>1 & ~bord) & mask # rule >>706, >>716
break if bords[bord2]
bord = bord2
bords[bord] = true
}
life = '.*...**.*.***..'
bord = life.tr('.*','01').to_i(2)
mask = 2 ** life.size - 1
fmt = "%%0%db" % life.size
bords = {bord=>true}
100.times{|gene|
puts "%5d %s" % [gene+1, (fmt % bord).tr('01','.*')]
bord2 = (bord<<1 ^ bord>>1 | bord<<1 & bord>>1 & ~bord) & mask # rule >>706, >>716
break if bords[bord2]
bord = bord2
bords[bord] = true
}
720デフォルトの名無しさん
2019/07/05(金) 18:27:24.81ID:XEA++p8t >>716
3a、3b は?
3a、3b は?
721695
2019/07/05(金) 19:42:34.54ID:imex3OYJ722デフォルトの名無しさん
2019/07/05(金) 22:52:47.49ID:aEAVP96+723デフォルトの名無しさん
2019/07/05(金) 23:55:57.51ID:FwZHoBTZ #>>716 ruby # Rule を配列化。 (L C R) 3bit 0..7 の状態 >>659なら [0,1,0,1,1,0,1,0]
Rule = [0,1,0,1,1,1,1,0] # rule >>706, >>716
life = '.*...**.*.***..'
lifeBit = life.size
bord = life.tr('.*','01').to_i(2)
fmt = "%%0%db" % lifeBit
bords = {bord=>true}
100.times{|gene|
puts "%5d %s" % [gene+1, (fmt % bord).tr('01','.*')]
bord <<= 1
bord2 = 0
lifeBit.times{|bit|
bord2 |= Rule[bord & 7] << bit
bord >>= 1
}
bord = bord2
break if bords[bord]
bords[bord] = true
}
Rule = [0,1,0,1,1,1,1,0] # rule >>706, >>716
life = '.*...**.*.***..'
lifeBit = life.size
bord = life.tr('.*','01').to_i(2)
fmt = "%%0%db" % lifeBit
bords = {bord=>true}
100.times{|gene|
puts "%5d %s" % [gene+1, (fmt % bord).tr('01','.*')]
bord <<= 1
bord2 = 0
lifeBit.times{|bit|
bord2 |= Rule[bord & 7] << bit
bord >>= 1
}
bord = bord2
break if bords[bord]
bords[bord] = true
}
724デフォルトの名無しさん
2019/07/05(金) 23:56:51.12ID:aY14jca4 >>716 Pharo/Squeak Smalltalk
| map next seq start |
map := '.*...**.*.***..' asArray collect: [:x | (x = $*) asBit].
seq := OrderedCollection with: map.
next := [ | acc |
acc := map + (map allButFirst, {0}) + ({0}, map allButLast).
((#(1 2) collect: [:x | acc collect: [:elem | (elem = x) asBit]]) * {map negated + 1. 1}) sum
].
[(start := seq indexOf: (map := next value)) > 0 or: [seq size >= 100]] whileFalse: [seq add: map].
(start = 0 or: [start = seq size]) ifTrue: [seq size] ifFalse: [start to: seq size]
"=> (62 to: 63) "
| map next seq start |
map := '.*...**.*.***..' asArray collect: [:x | (x = $*) asBit].
seq := OrderedCollection with: map.
next := [ | acc |
acc := map + (map allButFirst, {0}) + ({0}, map allButLast).
((#(1 2) collect: [:x | acc collect: [:elem | (elem = x) asBit]]) * {map negated + 1. 1}) sum
].
[(start := seq indexOf: (map := next value)) > 0 or: [seq size >= 100]] whileFalse: [seq add: map].
(start = 0 or: [start = seq size]) ifTrue: [seq size] ifFalse: [start to: seq size]
"=> (62 to: 63) "
725デフォルトの名無しさん
2019/07/05(金) 23:58:19.78ID:FwZHoBTZ726デフォルトの名無しさん
2019/07/06(土) 15:06:03.47ID:LdZDcwTE >>722だけど間違ってたら、教えて。
今みんな何やってるのか把握してない。
今みんな何やってるのか把握してない。
727デフォルトの名無しさん
2019/07/06(土) 15:56:23.82ID:xBT7e3zK >>716 Perl5、5で止まる。>>720>>721の解釈違い?それともオレのBug?
%s = qw(. 0 * 1);
@a = map{$s{$_}} split '', '.*...**.*.***..';
$t = 1;
%h = ("@a" => $t);
printf "%2d: @a\n", $t;
for ($t = 2; $t <= 100; $t++) {
@b=($a[1] ? $a[0] : 0,
(map{
($a[$_-1] xor $a[$_+1]) ? $a[$_] :
(($a[$_-1] and $a[$_+1]) ? ($a[$_]?0:1) : 0)
} 1..$#a-1),
$a[-2] ? $a[-1] : 0
);
printf "%2d: @b\n", $t;
@a = @b;
$t--, last if exists $h{"@a"};
$h{"@a"} = $t;
}
@c = map{$_ ? '*' : '.'} @a;
printf "%d => @c\n", $t;
実行結果
~ $ perl 14_716.pl
1: 0 1 0 0 0 1 1 0 1 0 1 1 1 0 0
2: 0 0 0 0 0 1 1 1 0 1 1 0 1 0 0
3: 0 0 0 0 0 1 0 1 1 1 1 1 0 0 0
4: 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0
5: 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0
6: 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0
5 => . . . . . . * * . . . . . . .
%s = qw(. 0 * 1);
@a = map{$s{$_}} split '', '.*...**.*.***..';
$t = 1;
%h = ("@a" => $t);
printf "%2d: @a\n", $t;
for ($t = 2; $t <= 100; $t++) {
@b=($a[1] ? $a[0] : 0,
(map{
($a[$_-1] xor $a[$_+1]) ? $a[$_] :
(($a[$_-1] and $a[$_+1]) ? ($a[$_]?0:1) : 0)
} 1..$#a-1),
$a[-2] ? $a[-1] : 0
);
printf "%2d: @b\n", $t;
@a = @b;
$t--, last if exists $h{"@a"};
$h{"@a"} = $t;
}
@c = map{$_ ? '*' : '.'} @a;
printf "%d => @c\n", $t;
実行結果
~ $ perl 14_716.pl
1: 0 1 0 0 0 1 1 0 1 0 1 1 1 0 0
2: 0 0 0 0 0 1 1 1 0 1 1 0 1 0 0
3: 0 0 0 0 0 1 0 1 1 1 1 1 0 0 0
4: 0 0 0 0 0 0 1 1 0 0 0 1 0 0 0
5: 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0
6: 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0
5 => . . . . . . * * . . . . . . .
728デフォルトの名無しさん
2019/07/06(土) 16:00:21.54ID:LdZDcwTE >>727
おぉ、同志。(一方通行
おぉ、同志。(一方通行
729デフォルトの名無しさん
2019/07/06(土) 16:25:41.58ID:ZIRVHkTq730デフォルトの名無しさん
2019/07/06(土) 16:28:50.79ID:GxnR+B/l もしかしてハノイの塔かな
731デフォルトの名無しさん
2019/07/06(土) 16:38:33.50ID:Qorx3cLN (- (expt 2 n) 1) ぐらいの手数増加がやばいやつか
たった64枚で移し終えると世界が滅びるらしいぞw
たった64枚で移し終えると世界が滅びるらしいぞw
732デフォルトの名無しさん
2019/07/06(土) 16:51:49.60ID:ZIRVHkTq >>730
色々ググっている内に中国語で書かれたサイトで「河内塔」が見つかった。
中国語がよくわからないので何とも言えないがどうやらハノイの塔のようだ。
「河内塔(Tower of Hanoi)」と書いてある個所があり下の方にある画像は正にその説明になっている。
https://blog.csdn.net/jon_me/article/details/41986461
色々ググっている内に中国語で書かれたサイトで「河内塔」が見つかった。
中国語がよくわからないので何とも言えないがどうやらハノイの塔のようだ。
「河内塔(Tower of Hanoi)」と書いてある個所があり下の方にある画像は正にその説明になっている。
https://blog.csdn.net/jon_me/article/details/41986461
733デフォルトの名無しさん
2019/07/06(土) 17:04:45.14ID:Zeej7B2I734デフォルトの名無しさん
2019/07/06(土) 17:10:17.77ID:ZIRVHkTq ベトナム語で「河内」って書いて「ハノイ」と読むんだな。ベトナムでは今は漢字使ってないけど。
https://ja.wikipedia.org/wiki/%E3%83%8F%E3%83%8E%E3%82%A4
https://ja.wikipedia.org/wiki/%E3%83%8F%E3%83%8E%E3%82%A4
735デフォルトの名無しさん
2019/07/06(土) 17:31:45.90ID:LdZDcwTE >>733
えーっと、そのこーどだけど、死んでるセルの隣に生きてるセルがいたら生まれてるんだけどあってる?
えーっと、そのこーどだけど、死んでるセルの隣に生きてるセルがいたら生まれてるんだけどあってる?
736デフォルトの名無しさん
2019/07/06(土) 17:52:15.78ID:LdZDcwTE >>733
示唆してくれてありがとう。言い忘れてた。
示唆してくれてありがとう。言い忘れてた。
737デフォルトの名無しさん
2019/07/06(土) 18:01:01.33ID:8vjCWSQ+738デフォルトの名無しさん
2019/07/06(土) 18:16:30.66ID:LdZDcwTE うん。リンクあったら一発で書けないこともなかった。というわがまま言ってみる。
まぁ、>>733に書いてあるから、俺のタスクはないなぁ。
https://ja.wikipedia.org/wiki/%E3%82%BB%E3%83%AB%E3%83%BB%E3%82%AA%E3%83%BC%E3%83%88%E3%83%9E%E3%83%88%E3%83%B3#ルール90
まぁ、>>733に書いてあるから、俺のタスクはないなぁ。
https://ja.wikipedia.org/wiki/%E3%82%BB%E3%83%AB%E3%83%BB%E3%82%AA%E3%83%BC%E3%83%88%E3%83%9E%E3%83%88%E3%83%B3#ルール90
739デフォルトの名無しさん
2019/07/06(土) 18:21:51.90ID:xBT7e3zK >>733 ご指摘ありがとう。 >>721 の
> 3. 両隣の内、片方だけが生きていれば、生きる
> 元々、生きるには、誕生する事も含むから、3a, 3b は、必要ない
を、「3.自マスが死んでいる場合、両隣の何れかでも生きていれば、生まれる。」
と言う意味と捕らえなおして、>>713を書き換えたら、63でloopしたよ。
>>716 に
>1b. 自マスが死んでいる場合、両隣が生きていれば、生きる(新たに誕生する)
と誕生条件が書いてあったので、3の条件は「生まれる」条件も含むとは考えず、
「3.両隣の内、片方だけが生きていれば、自マスが生きていれば生きる(し、死んでいれば死んだまま)。」
と解釈して >>713 を作ったのが63でloopしなかった原因だと分かった。
> 3. 両隣の内、片方だけが生きていれば、生きる
> 元々、生きるには、誕生する事も含むから、3a, 3b は、必要ない
を、「3.自マスが死んでいる場合、両隣の何れかでも生きていれば、生まれる。」
と言う意味と捕らえなおして、>>713を書き換えたら、63でloopしたよ。
>>716 に
>1b. 自マスが死んでいる場合、両隣が生きていれば、生きる(新たに誕生する)
と誕生条件が書いてあったので、3の条件は「生まれる」条件も含むとは考えず、
「3.両隣の内、片方だけが生きていれば、自マスが生きていれば生きる(し、死んでいれば死んだまま)。」
と解釈して >>713 を作ったのが63でloopしなかった原因だと分かった。
740デフォルトの名無しさん
2019/07/06(土) 18:25:42.01ID:xBT7e3zK >>716,721 Perl5
%s = qw(. 0 * 1);
@a = @a = map{$s{$_}} split '', '.*...**.*.***..';
$t = 1;
%h = ("@a" => $t);
@h = ("@a");
for ($t = 2; $t <= 100; $t++) {
@b=($a[1] ? 1 : 0,
(map{
($a[$_-1] xor $a[$_+1]) ? 1 :
(($a[$_-1] and $a[$_+1]) ? ($a[$_]?0:1) : 0)
} 1..$#a-1),
$a[-2] ? 1 : 0
);
@a = @b;
push @h, "@a";
$t--, last if exists $h{"@a"};
$h{"@a"} = $t;
}
$i = $h{"@a"};
print $_ - 1, ": $h[$_-1]\n" for $i..@h;
実行結果
~ $ perl 14_716_721.pl
61: 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
62: 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
63: 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
%s = qw(. 0 * 1);
@a = @a = map{$s{$_}} split '', '.*...**.*.***..';
$t = 1;
%h = ("@a" => $t);
@h = ("@a");
for ($t = 2; $t <= 100; $t++) {
@b=($a[1] ? 1 : 0,
(map{
($a[$_-1] xor $a[$_+1]) ? 1 :
(($a[$_-1] and $a[$_+1]) ? ($a[$_]?0:1) : 0)
} 1..$#a-1),
$a[-2] ? 1 : 0
);
@a = @b;
push @h, "@a";
$t--, last if exists $h{"@a"};
$h{"@a"} = $t;
}
$i = $h{"@a"};
print $_ - 1, ": $h[$_-1]\n" for $i..@h;
実行結果
~ $ perl 14_716_721.pl
61: 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
62: 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
63: 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
741デフォルトの名無しさん
2019/07/06(土) 18:44:26.01ID:xBT7e3zK >>716,721 Perl5、ゴメン、結果は0 1じゃなくて.*のstringで表示すべきだったので修正させていただきます
@a = split '', '.*...**.*.***..';
@h = ("@a");
@a = map{'*' eq $_ ? 1 : 0} @a;
$t = 1;
%h = ("@a" => $t);
for ($t = 2; $t <= 100; $t++) {
@b=($a[1] ? 1 : 0,
(map{
($a[$_-1] xor $a[$_+1]) ? 1 :
(($a[$_-1] and $a[$_+1]) ? ($a[$_]?0:1) : 0)
} 1..$#a-1),
$a[-2] ? 1 : 0
);
push @h, join'',map {$_ ? '*' : '.'} @b;
@a = @b;
$t--, last if exists $h{"@a"};
$h{"@a"} = $t;
}
$i = $h{"@a"};
print $_ - 1, ": $h[$_-1]\n" for $i..@h;
実行結果
~ $ perl 14_716_721.pl
61: *.*.*.*.*.*.*.*
62: .*.*.*.*.*.*.*.
63: *.*.*.*.*.*.*.*
@a = split '', '.*...**.*.***..';
@h = ("@a");
@a = map{'*' eq $_ ? 1 : 0} @a;
$t = 1;
%h = ("@a" => $t);
for ($t = 2; $t <= 100; $t++) {
@b=($a[1] ? 1 : 0,
(map{
($a[$_-1] xor $a[$_+1]) ? 1 :
(($a[$_-1] and $a[$_+1]) ? ($a[$_]?0:1) : 0)
} 1..$#a-1),
$a[-2] ? 1 : 0
);
push @h, join'',map {$_ ? '*' : '.'} @b;
@a = @b;
$t--, last if exists $h{"@a"};
$h{"@a"} = $t;
}
$i = $h{"@a"};
print $_ - 1, ": $h[$_-1]\n" for $i..@h;
実行結果
~ $ perl 14_716_721.pl
61: *.*.*.*.*.*.*.*
62: .*.*.*.*.*.*.*.
63: *.*.*.*.*.*.*.*
お題と回答
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11=>>575 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259 342 353
>>320 : 321 323 327 330 340
>>322 : 325 328 329 331 332 339 341 358 359
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11=>>575 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259 342 353
>>320 : 321 323 327 330 340
>>322 : 325 328 329 331 332 339 341 358 359
>>362 : 367 369 370 371 374 379 380 382 414
>>368 : 390
>>388 : 487 (488) 553 559
>>400 : 401
>>408 :
>>417 : 418 419 421 426 432 433 436 438 442 446 451 452 456 471 474 480 482 489 492 495 498 528 530 540
>>479 :
>>555 : 556 558 564 565
>>557 : 560 562 568 569
>>570 : 574 577
>>573 : 604 622
>>600 : 605 607 611 613 627 691
>>615,626 :
>>632 : 637 640 645 649 650 687 689-690
>>368 : 390
>>388 : 487 (488) 553 559
>>400 : 401
>>408 :
>>417 : 418 419 421 426 432 433 436 438 442 446 451 452 456 471 474 480 482 489 492 495 498 528 530 540
>>479 :
>>555 : 556 558 564 565
>>557 : 560 562 568 569
>>570 : 574 577
>>573 : 604 622
>>600 : 605 607 611 613 627 691
>>615,626 :
>>632 : 637 640 645 649 650 687 689-690
745デフォルトの名無しさん
2019/07/06(土) 19:37:09.81ID:HtNG6e5Z 消えろ
746デフォルトの名無しさん
2019/07/06(土) 21:17:45.94ID:Qorx3cLN ログ汚染が酷い
747695
2019/07/07(日) 08:03:43.59ID:Ts5uCd7M だから、誕生という概念を作ると、説明が難しいから、「生死」の状態だけにした。
生死だけなら、前の状態に関係ない、前の状態と切れているから
誕生という概念を使うと、
a. 前の状態が死んでいる時と、
b. 前の状態が生きている時で、
処理が変わってくるから複雑になって、勘違いする人も出てくるから
生死だけなら、前の状態に関係ない、前の状態と切れているから
誕生という概念を使うと、
a. 前の状態が死んでいる時と、
b. 前の状態が生きている時で、
処理が変わってくるから複雑になって、勘違いする人も出てくるから
748デフォルトの名無しさん
2019/07/07(日) 12:00:48.06ID:K8IqcFVG >>747
その「だから」は何につながってるのか読めない。
その「だから」は何につながってるのか読めない。
749デフォルトの名無しさん
2019/07/07(日) 17:48:05.53ID:Sb2el8tu >>747
状態が関係ないと実装の工夫のしどころが失われて面白みが半減すると思うよ
最初の何ターンかを例として示せば済むはなしだし
手元で実装を試していればなおさら何の苦もないことかと
細かい事を言うと、本当に実装を試さずに出題しているのならそれはルール違反なんだよね
(チューリングの泥沼問題回避や宿題の丸投げ防止)
状態が関係ないと実装の工夫のしどころが失われて面白みが半減すると思うよ
最初の何ターンかを例として示せば済むはなしだし
手元で実装を試していればなおさら何の苦もないことかと
細かい事を言うと、本当に実装を試さずに出題しているのならそれはルール違反なんだよね
(チューリングの泥沼問題回避や宿題の丸投げ防止)
751デフォルトの名無しさん
2019/07/07(日) 19:55:58.86ID:MQV9uu2h たしかにくだらないクソ問ばかりだね。
752蟻人間 ◆T6xkBnTXz7B0
2019/07/07(日) 21:06:25.36ID:JhpdhjN9 お題: 生徒の氏名、身長、体重の3つからなる複数のレコードが与えられる。氏名とBMIを左揃えのテキストの表にせよ。
単位はMKS単位系、テキストはASCIIおよび等幅フォントが使われると仮定してよい。
Tanaka Naoki 15kg 2m
Inoue Ken 280g 32cm
Akai Ryusei 1mg 3km
単位はMKS単位系、テキストはASCIIおよび等幅フォントが使われると仮定してよい。
Tanaka Naoki 15kg 2m
Inoue Ken 280g 32cm
Akai Ryusei 1mg 3km
753蟻人間 ◆T6xkBnTXz7B0
2019/07/07(日) 21:26:21.37ID:JhpdhjN9 お題: MKS単位系の単位を変換する関数またはクラスを作れ。
1kg:g
→1000g
2m:cm
→200cm
1kg:g
→1000g
2m:cm
→200cm
754蟻人間 ◆T6xkBnTXz7B0
2019/07/07(日) 21:28:22.26ID:JhpdhjN9 名前はテキトーに思いついたのを書いただけです。
755デフォルトの名無しさん
2019/07/07(日) 21:28:35.00ID:K8IqcFVG >>753
C++なら、ユーザー定義リテラルで横着できるんだけど、入力解析が嫌な感じだ。
C++なら、ユーザー定義リテラルで横着できるんだけど、入力解析が嫌な感じだ。
756蟻人間 ◆T6xkBnTXz7B0
2019/07/07(日) 21:44:56.12ID:JhpdhjN9 物理シミュレーションが人間の手から離れて自由自在にならなければ、火星への仮想移住もできない。MKS単位系の計算術は重要だ。
757デフォルトの名無しさん
2019/07/07(日) 21:50:29.52ID:ngB3G+2v トリップ付きは大学の教養課程の知識すらない阿呆しかいないのかね
758蟻人間 ◆T6xkBnTXz7B0
2019/07/07(日) 22:23:37.11ID:0lH1eUtN 常識など切り刻むのみ。
759デフォルトの名無しさん
2019/07/07(日) 22:41:27.22ID:+dwSkgWp 死ねや糞コテ
760デフォルトの名無しさん
2019/07/07(日) 23:10:54.31ID:K8IqcFVG761蟻人間 ◆T6xkBnTXz7B0
2019/07/07(日) 23:19:20.77ID:0lH1eUtN 長さの単位、質量の単位、そして時間の単位の3つがある。これにキロ、ミリ、マイクロなどが前に付く。
変換方法は複数あり、何から何への変換方法はデータとして与えられ、それらは追加可能でなければ不便。
変換方法は複数あり、何から何への変換方法はデータとして与えられ、それらは追加可能でなければ不便。
先生!質問です!
重さの規準は kg ですか?それとも g ですか?え?kg?おっかしーなー?kg の kって単なる接頭辞 prefix なのでは?
重さの規準は kg ですか?それとも g ですか?え?kg?おっかしーなー?kg の kって単なる接頭辞 prefix なのでは?
763デフォルトの名無しさん
2019/07/07(日) 23:28:12.83ID:6uzWSrE8 全部Jで統一しろハゲ共
764デフォルトの名無しさん
2019/07/08(月) 00:24:27.94ID:YBWHLZTU 長さ1センチの鼻毛を鉛直方向に1ニュートンの力で引っ張り、抜いたときに感じる痛みは1ハナゲ
>>763
質量は J に等価交換できても長さや時間は無理なのでは?
質量は J に等価交換できても長さや時間は無理なのでは?
766デフォルトの名無しさん
2019/07/08(月) 00:58:34.40ID:ktC9cNPU >>765
natural unitも知らねえのか
natural unitも知らねえのか
767デフォルトの名無しさん
2019/07/08(月) 08:05:28.83ID:ATr0dgzt タブ区切りの文字列の置換リストがあって、そのとおりにテキストファイルファイルを置換したい
そういうソフトありますか?
見つからないので自作しようとおもったけどここへ書いてみた
置換リスト例
ああああ うううう
aaaaa QQQQQ
そういうソフトありますか?
見つからないので自作しようとおもったけどここへ書いてみた
置換リスト例
ああああ うううう
aaaaa QQQQQ
768デフォルトの名無しさん
2019/07/08(月) 08:09:30.46ID:ATr0dgzt コマンドラインでGREPと置換できるソフトはあるんだけど。
DOSの文字制限と、正規表現の制限で、
置換したい文字の設定がややこしい。あと複数同時にできない。
文字を加工せずできれば便利だなと。
DOSの文字制限と、正規表現の制限で、
置換したい文字の設定がややこしい。あと複数同時にできない。
文字を加工せずできれば便利だなと。
769デフォルトの名無しさん
2019/07/08(月) 08:10:59.60ID:cS5GyvAA >>767
スレ違い
スレ違い
770デフォルトの名無しさん
2019/07/08(月) 11:02:56.96ID:tzeJFuHl >>767
Perlでも使えば?文字列置換楽だよ。
Perlでも使えば?文字列置換楽だよ。
771デフォルトの名無しさん
2019/07/08(月) 11:50:01.31ID:8XvlSCIJ >>766
時間や長さを J で統一することは自然単位系でもできませんね…
時間や長さを J で統一することは自然単位系でもできませんね…
>>767
仕様を正確に記述してください
仕様を正確に記述してください
774デフォルトの名無しさん
2019/07/08(月) 19:25:39.25ID:uJPizAN5 宿題に餌を与えないでください
775デフォルトの名無しさん
2019/07/08(月) 22:57:02.15ID:G1DtFXg8 Ruby では変換表を使って、置換できる
hash = { 'ab' => 'あ', 'xy' => 'ん' }
p re = Regexp.union( hash.keys ) #=> /ab|xy/
p "9xy9ab9xyx".gsub( re, hash )
#=> 9ん9あ9んx
gsub(pattern, hash) -> String
文字列中の pattern にマッチした部分をキーにして、hash を引いた値で置き換える
hash = {'b'=>'B', 'c'=>'C'}
p "abcabc".gsub(/[bc]/){hash[$&]} #=> "aBCaBC"
p "abcabc".gsub(/[bc]/, hash) #=> "aBCaBC"
hash = { 'ab' => 'あ', 'xy' => 'ん' }
p re = Regexp.union( hash.keys ) #=> /ab|xy/
p "9xy9ab9xyx".gsub( re, hash )
#=> 9ん9あ9んx
gsub(pattern, hash) -> String
文字列中の pattern にマッチした部分をキーにして、hash を引いた値で置き換える
hash = {'b'=>'B', 'c'=>'C'}
p "abcabc".gsub(/[bc]/){hash[$&]} #=> "aBCaBC"
p "abcabc".gsub(/[bc]/, hash) #=> "aBCaBC"
776デフォルトの名無しさん
2019/07/09(火) 00:46:29.33ID:b1/VU+FF rubyの宣伝とはいえ、宿題に餌やるなら、問われている事柄に応えてやったらどうかと思う。
宣伝意識が前面に出すぎて目的を忘れるなかれ、って感じ。
宣伝意識が前面に出すぎて目的を忘れるなかれ、って感じ。
777デフォルトの名無しさん
2019/07/09(火) 00:48:43.11ID:b1/VU+FF | \
| ('A`) ギシギシ
/ ̄ノ( ヘヘ ̄ ̄ アンアン/
| ('A`) ギシギシ
/ ̄ノ( ヘヘ ̄ ̄ アンアン/
778デフォルトの名無しさん
2019/07/09(火) 04:09:17.17ID:0VeokVre [ 弘前大 ]
和が406 で、最小公倍数が2,660 である、2つの整数を求めよ
答え
14 * 10 = 140
14 * 19 = 266
和が406 で、最小公倍数が2,660 である、2つの整数を求めよ
答え
14 * 10 = 140
14 * 19 = 266
779デフォルトの名無しさん
2019/07/09(火) 08:28:09.19ID:chrBBqpb 整数問題は脳死でこう叩く
(loop for x from 1 to 1000 do (loop for y from 1 to 1000 when (and (eq (+ x y) 406) (eq (lcm x y) 2660)) do (format t "~a ~a~%" x y)))
140 266
266 140
(loop for x from 1 to 1000 do (loop for y from 1 to 1000 when (and (eq (+ x y) 406) (eq (lcm x y) 2660)) do (format t "~a ~a~%" x y)))
140 266
266 140
780778
2019/07/09(火) 08:48:05.20ID:0VeokVre 和が406 ですよ
1〜405 を確認すれば十分!
1〜405 を確認すれば十分!
781デフォルトの名無しさん
2019/07/09(火) 08:52:39.17ID:chrBBqpb 大学の入試問題の大半 8割ぐらいは1000までローラーすればいい
だから経験上1000やっちゃうんだよね
最適化してくなら for y from x
とかも効かすけど
3乗算決めるぐらいまでは問題ない速度が出てる(loop x(loop y(loop z
だから経験上1000やっちゃうんだよね
最適化してくなら for y from x
とかも効かすけど
3乗算決めるぐらいまでは問題ない速度が出てる(loop x(loop y(loop z
782デフォルトの名無しさん
2019/07/09(火) 09:28:56.09ID:4nn6D6BQ >>772
完全にアホ
完全にアホ
783デフォルトの名無しさん
2019/07/09(火) 11:02:44.61ID:lxeGachM >>781
和なんだから最適化利かすならyは406からx引けよw
和なんだから最適化利かすならyは406からx引けよw
784デフォルトの名無しさん
2019/07/09(火) 11:18:51.73ID:chrBBqpb >>782
煽るだけではねえ…時間や長さを J に統一するために自然単位系がどう使えるのか書けるのですか?
煽るだけではねえ…時間や長さを J に統一するために自然単位系がどう使えるのか書けるのですか?
786デフォルトの名無しさん
2019/07/09(火) 19:43:25.84ID:ggPtzp0W 壮大な話やなぁ。
その時間系に所属する人の仕事量を全部計算するんかいな??
アホだからこんなこと思うわ。
その時間系に所属する人の仕事量を全部計算するんかいな??
アホだからこんなこと思うわ。
787デフォルトの名無しさん
2019/07/09(火) 21:57:24.41ID:gdYXIa6p 私は頭は良いのだが知識がないため君らが何を言っているのかがよくわからない。
788778
2019/07/12(金) 14:53:22.97ID:uwyqXnfJ >>778
Ruby で、
require 'prime'
sum = 406 # 和
lcm = 2_660 # 最小公倍数。least common multiple
# 最大公約数。greatest common divisor
gcd = sum.gcd( lcm ) # 14
# 最大公約数で割ったもの
sum_2 = sum / gcd # 29
lcm_2 = lcm / gcd # 190
# 半分(1〜15)まで、ループする。ary は、10
ary = ( 1..( sum_2 + 1 ) / 2 ).each.select {
|num| num * ( sum_2 - num ) == lcm_2 }
# 14 * 10 = 140, 14 * 19 = 266
p gcd * ary.first, gcd * ( sum_2 - ary.first )
Ruby で、
require 'prime'
sum = 406 # 和
lcm = 2_660 # 最小公倍数。least common multiple
# 最大公約数。greatest common divisor
gcd = sum.gcd( lcm ) # 14
# 最大公約数で割ったもの
sum_2 = sum / gcd # 29
lcm_2 = lcm / gcd # 190
# 半分(1〜15)まで、ループする。ary は、10
ary = ( 1..( sum_2 + 1 ) / 2 ).each.select {
|num| num * ( sum_2 - num ) == lcm_2 }
# 14 * 10 = 140, 14 * 19 = 266
p gcd * ary.first, gcd * ( sum_2 - ary.first )
789デフォルトの名無しさん
2019/07/12(金) 17:09:23.04ID:uwyqXnfJ お題、聖光学院中学校入試問題
1〜10 の10枚のカードの内、4枚を取り出して、a〜d に入れて、
下の式を満たす置き方は、何通りあるか?
( a + b ) * ( c + d ) = 100
答え、48通り
1〜10 の10枚のカードの内、4枚を取り出して、a〜d に入れて、
下の式を満たす置き方は、何通りあるか?
( a + b ) * ( c + d ) = 100
答え、48通り
790デフォルトの名無しさん
2019/07/12(金) 17:26:31.50ID:B1Jsh2gD791デフォルトの名無しさん
2019/07/12(金) 17:31:38.31ID:B1Jsh2gD やってから気づいたけど、forで回したほうが早いな。
それと、ネクストコンビネーションがほしいのじゃー。
それと、ネクストコンビネーションがほしいのじゃー。
792デフォルトの名無しさん
2019/07/12(金) 17:38:32.51ID:N+Dr1mVf >>778
sum := 406, lcm := 2660
c := gcd(sum, lcm)
(c * t_-, c * t_+) = (140, 266) where t_± = (sum ± √(sum^2 -4c * lcm)) / 2c = (29 ± 9) / 2
sum := 406, lcm := 2660
c := gcd(sum, lcm)
(c * t_-, c * t_+) = (140, 266) where t_± = (sum ± √(sum^2 -4c * lcm)) / 2c = (29 ± 9) / 2
793デフォルトの名無しさん
2019/07/12(金) 17:45:09.77ID:N+Dr1mVf794デフォルトの名無しさん
2019/07/12(金) 17:56:38.95ID:B1Jsh2gD795デフォルトの名無しさん
2019/07/12(金) 19:41:17.85ID:Rp3XUaKp >>793
なるほど
なるほど
796デフォルトの名無しさん
2019/07/12(金) 20:06:13.56ID:OtxPhCkg >>789
4P4 = 12 がなかったので暗算埋め込みしてしまった
(loop with i = 0 for a from 1 to 10 do (loop for b from (1+ a) to 10 do (loop for c from (1+ b) to 10 do (loop for d from (1+ c) to 10 when (eq 100 (+ (* a b) (* c d))) do (incf i)))) finally (print (* 12 i)))
48
4P4 = 12 がなかったので暗算埋め込みしてしまった
(loop with i = 0 for a from 1 to 10 do (loop for b from (1+ a) to 10 do (loop for c from (1+ b) to 10 do (loop for d from (1+ c) to 10 when (eq 100 (+ (* a b) (* c d))) do (incf i)))) finally (print (* 12 i)))
48
797デフォルトの名無しさん
2019/07/13(土) 02:35:29.76ID:P33eZqk8 >>9 : 15 34 35 79
>>11=>>575 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259 342 353
>>320 : 321 323 327 330 340
>>322 : 325 328 329 331 332 339 341 358 359
>>11=>>575 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259 342 353
>>320 : 321 323 327 330 340
>>322 : 325 328 329 331 332 339 341 358 359
>>362 : 367 369 370 371 374 379 380 382 414
>>368 : 390
>>388 : 487 (488) 553 559
>>400 : 401
>>408 :
>>417 : 418 419 421 426 432 433 436 438 442 446 451 452 456 471 474 480 482 489 492 495 498 528 530 540
>>479 :
>>555 : 556 558 564 565
>>557 : 560 562 568 569
>>570 : 574 577
>>573 : 604 622
>>600 : 605 607 611 613 627 691
>>615,626 :
>>632 : 637 640 645 649 650 687 689-690
>>368 : 390
>>388 : 487 (488) 553 559
>>400 : 401
>>408 :
>>417 : 418 419 421 426 432 433 436 438 442 446 451 452 456 471 474 480 482 489 492 495 498 528 530 540
>>479 :
>>555 : 556 558 564 565
>>557 : 560 562 568 569
>>570 : 574 577
>>573 : 604 622
>>600 : 605 607 611 613 627 691
>>615,626 :
>>632 : 637 640 645 649 650 687 689-690
801デフォルトの名無しさん
2019/07/13(土) 17:08:18.94ID:006l8Xk5 まただよ(笑)
802デフォルトの名無しさん
2019/07/13(土) 18:59:07.37ID:/5VqfFnz 回答は容易に手繰れるのではっきり言って無用だし迷惑です
どうしてもまとめたいなら
例えば、どんな言語でどのお題に回答しているか整理したものとか付加価値を付けるべきでしょう
どうしてもまとめたいなら
例えば、どんな言語でどのお題に回答しているか整理したものとか付加価値を付けるべきでしょう
>>802
ご意見ありがとうございます、参考にいたします
ご意見ありがとうございます、参考にいたします
804デフォルトの名無しさん
2019/07/13(土) 20:04:23.90ID:azuEfQ5t >>803
前に何度も不要だ、邪魔だと指摘されたはずだが一向に改めなかったのはなぜ?
前に何度も不要だ、邪魔だと指摘されたはずだが一向に改めなかったのはなぜ?
805デフォルトの名無しさん
2019/07/13(土) 22:03:31.87ID:+XrRzYc0 コテハンだからだろ
806デフォルトの名無しさん
2019/07/13(土) 22:53:32.95ID:0DH1k/wL 本当にクズだよな。出す問題もゴミばかり。まるで使用済みティッシュ
807デフォルトの名無しさん
2019/07/14(日) 08:46:45.28ID:7ouziBbN お題
ミニミニなパスカルの三角形を表示する
1
11
121
1331
14641
ミニミニなパスカルの三角形を表示する
1
11
121
1331
14641
808デフォルトの名無しさん
2019/07/14(日) 08:56:51.66ID:hrWXJ2sa 11^0
11^1
11^2
11^3
11^1
11^2
11^3
809デフォルトの名無しさん
2019/07/14(日) 10:31:51.37ID:I+Q1ZQVX >>807 Ruby
pascal = -> n {n > 0 ? [0, *pascal(n-1), 0].each_cons(2).map(&:sum) : [1]}
(0..9).map{|i| puts pascal[i].join(?\ )} # =>
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
pascal = -> n {n > 0 ? [0, *pascal(n-1), 0].each_cons(2).map(&:sum) : [1]}
(0..9).map{|i| puts pascal[i].join(?\ )} # =>
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
810デフォルトの名無しさん
2019/07/14(日) 10:33:20.18ID:I+Q1ZQVX typo
pascal = -> n {n > 0 ? [0, *pascal[n - 1], 0].each_cons(2).map(&:sum) : [1]}
pascal = -> n {n > 0 ? [0, *pascal[n - 1], 0].each_cons(2).map(&:sum) : [1]}
811デフォルトの名無しさん
2019/07/14(日) 22:14:12.29ID:xwqPe1DN >>807 Perl5
for (1..5) {
@a = (1, map{$a[$_] + $a[$_+1]} 0..$#a);
print @a,"\n";
}
実行結果
$ perl 14_807.pl
1
11
121
1331
14641
for (1..5) {
@a = (1, map{$a[$_] + $a[$_+1]} 0..$#a);
print @a,"\n";
}
実行結果
$ perl 14_807.pl
1
11
121
1331
14641
812デフォルトの名無しさん
2019/07/14(日) 22:28:38.27ID:niuQOGKU >>807 python3
#!/usr/bin/python3
fractal_width = 19
xs = [1]
for i in range(1, fractal_width +1):
for x in xs:
print(x, "", end="") #xs sequence
print("")
xs.insert(0, 0)
xs.append(0)
xs = [ (xs[i] + xs[i +1]) for i in range(len(xs) -1)]
#!/usr/bin/python3
fractal_width = 19
xs = [1]
for i in range(1, fractal_width +1):
for x in xs:
print(x, "", end="") #xs sequence
print("")
xs.insert(0, 0)
xs.append(0)
xs = [ (xs[i] + xs[i +1]) for i in range(len(xs) -1)]
813デフォルトの名無しさん
2019/07/14(日) 22:30:14.85ID:niuQOGKU 1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
結果はいいけどコードのほうが酷い
print(x, "", end... あたりが最悪
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
結果はいいけどコードのほうが酷い
print(x, "", end... あたりが最悪
814デフォルトの名無しさん
2019/07/14(日) 23:26:39.88ID:xwqPe1DN >>807 Perl5, 無名関数のtail recursion版
use feature qw'say current_sub';
sub {
say @_;
__SUB__->(1, (map{$_[$_-1] + $_[$_]} 1..$#_), 1) if 5 > @_;
}->(1);
実行結果
$ perl 14_807.pl
1
11
121
1331
14641
※ Y-combinator版はマンドクせーので(ry
use feature qw'say current_sub';
sub {
say @_;
__SUB__->(1, (map{$_[$_-1] + $_[$_]} 1..$#_), 1) if 5 > @_;
}->(1);
実行結果
$ perl 14_807.pl
1
11
121
1331
14641
※ Y-combinator版はマンドクせーので(ry
815デフォルトの名無しさん
2019/07/14(日) 23:34:52.64ID:K5rloPX/ >>807 Squeak Smalltalk
| pascal grow |
pascal := OrderedCollection with: #(1).
grow := [pascal add: {1}, (pascal last overlappingPairsCollect: #+), {1}].
7 timesRepeat: grow.
(pascal collect: [:each | each joinSeparatedBy: ' ']) asStringWithCr
"=>'1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1' "
| pascal grow |
pascal := OrderedCollection with: #(1).
grow := [pascal add: {1}, (pascal last overlappingPairsCollect: #+), {1}].
7 timesRepeat: grow.
(pascal collect: [:each | each joinSeparatedBy: ' ']) asStringWithCr
"=>'1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1' "
816デフォルトの名無しさん
2019/07/15(月) 00:44:46.16ID:ZsG0DnWy817デフォルトの名無しさん
2019/07/15(月) 02:14:22.17ID:C2jHumZF 時事通信は中立的でもっとも正確。朝日新聞は若干、旧民主党寄りの予想を出した。産経新聞は若干、自民党寄りの予想を出した。
それでもこの3つの分析には大差がない。東京選挙区はほぼ確定した。
当選者は自民党現職の丸川(台本がないと何を言うかわからないぶっとび女)、
自民党現職の武見(いつものハゲじじいもう5回シコシコ)、
公明党現職の山口公明党代表(誰もやりたがらない創価学会内の仕事を押し付けられているかわいそうな人)、
立憲民主党の塩村(東京で人気のいまでもオカズになるヌける熟女)、
共産党の吉良(共産党の女性アイドル、もう年だがまだまだエロオヤジに人気)、
立憲民主党の山岸(元朝日新聞政治部のメガネ、前頭ハゲ進行中)。
与党側3人当選、野党側3人当選で東京選挙区は与野党引き分け。
落選者で得票数第1位は維新の会の音喜多(東京都北区の区長選で落ちたのは悪口が書かれたせいだとして裁判で争っている最中のクズ、小池百合子都知事の元小間づかい、寄生できそうな政党につく虫)。
以上
それでもこの3つの分析には大差がない。東京選挙区はほぼ確定した。
当選者は自民党現職の丸川(台本がないと何を言うかわからないぶっとび女)、
自民党現職の武見(いつものハゲじじいもう5回シコシコ)、
公明党現職の山口公明党代表(誰もやりたがらない創価学会内の仕事を押し付けられているかわいそうな人)、
立憲民主党の塩村(東京で人気のいまでもオカズになるヌける熟女)、
共産党の吉良(共産党の女性アイドル、もう年だがまだまだエロオヤジに人気)、
立憲民主党の山岸(元朝日新聞政治部のメガネ、前頭ハゲ進行中)。
与党側3人当選、野党側3人当選で東京選挙区は与野党引き分け。
落選者で得票数第1位は維新の会の音喜多(東京都北区の区長選で落ちたのは悪口が書かれたせいだとして裁判で争っている最中のクズ、小池百合子都知事の元小間づかい、寄生できそうな政党につく虫)。
以上
818デフォルトの名無しさん
2019/07/15(月) 09:18:43.09ID:lV5+33Om お題
年金AI化をする
設計を考えよ
どの部分を人間にしてどの部分を機械にするか
っていうだけだと思うけど
すごい初級プログラマーでも作れちゃうほど簡単じゃねと気になった
あまりにかんたんで民間年金ですでにありそうだが
年金AI化をする
設計を考えよ
どの部分を人間にしてどの部分を機械にするか
っていうだけだと思うけど
すごい初級プログラマーでも作れちゃうほど簡単じゃねと気になった
あまりにかんたんで民間年金ですでにありそうだが
819デフォルトの名無しさん
2019/07/15(月) 10:34:42.46ID:m4zcTbyh >>818 Ruby
nenkin = 'A PENSION'
puts nenkin.split.tap{|o| o.last.replace(o.last[x.size >> o.first.size])}.join
# => AI
nenkin = 'A PENSION'
puts nenkin.split.tap{|o| o.last.replace(o.last[x.size >> o.first.size])}.join
# => AI
820デフォルトの名無しさん
2019/07/15(月) 10:43:37.19ID:lV5+33Om 入金
銀行データ紹介
入金人数と金額確認 ←入力 新規入力者の確認 人力目視
↓
出金人数と出勤額
みたいなかんじ
銀行データ紹介
入金人数と金額確認 ←入力 新規入力者の確認 人力目視
↓
出金人数と出勤額
みたいなかんじ
821デフォルトの名無しさん
2019/07/16(火) 02:32:24.14ID:awioItM7 >>807
Kotlin
https://paiza.io/projects/ed7oOf_rIHOgekOlUxGYSQ
うっかり普通にフォーマットして3角に出るようにしてしまった。もっと簡単に出しても良かったんだな。
Kotlin
https://paiza.io/projects/ed7oOf_rIHOgekOlUxGYSQ
うっかり普通にフォーマットして3角に出るようにしてしまった。もっと簡単に出しても良かったんだな。
822デフォルトの名無しさん
2019/07/17(水) 18:49:01.14ID:rBzTe21k >>807 R
cat(11^(0:4),sep="\n")
cat(11^(0:4),sep="\n")
823デフォルトの名無しさん
2019/07/17(水) 19:12:50.17ID:O6R1hJD8824蟻人間 ◆T6xkBnTXz7B0
2019/07/17(水) 21:08:34.80ID:zgAvRboO お題:y=(1-x)(1+x)のx=-1〜1の区間を数値積分せよ。
825蟻人間 ◆T6xkBnTXz7B0
2019/07/17(水) 21:47:30.35ID:zgAvRboO ε=0.01くらいの台形公式でいいや。
826デフォルトの名無しさん
2019/07/17(水) 21:48:18.54ID:RL7WDafS827デフォルトの名無しさん
2019/07/17(水) 22:23:45.10ID:FVhP9md/ >>824 Ruby
require 'polynomial'
require 'polynomial/calculus'
expr = Polynomial.new(1, -1) * Polynomial(1, 1)
puts expr.integrate(-1..1)
# => (4/3)
require 'polynomial'
require 'polynomial/calculus'
expr = Polynomial.new(1, -1) * Polynomial(1, 1)
puts expr.integrate(-1..1)
# => (4/3)
828デフォルトの名無しさん
2019/07/17(水) 23:18:48.71ID:FVhP9md/ typo
> expr = Polynomial.new(1, -1) * Polynomial.new(1, 1)
> expr = Polynomial.new(1, -1) * Polynomial.new(1, 1)
829デフォルトの名無しさん
2019/07/17(水) 23:37:40.20ID:t/SxdWuN >>824 Squeak Smalltalk
(#(1 -1) collect: [:x | {0. 1. 0. -1/3} polynomialEval: x]) reduce: #-
"=> (4/3) "
(#(1 -1) collect: [:x | {0. 1. 0. -1/3} polynomialEval: x]) reduce: #-
"=> (4/3) "
830デフォルトの名無しさん
2019/07/18(木) 00:59:06.64ID:A0LALR8k831デフォルトの名無しさん
2019/07/18(木) 01:42:36.36ID:4Fot9DWw832デフォルトの名無しさん
2019/07/18(木) 07:25:42.17ID:r8faaY2+833蟻人間 ◆T6xkBnTXz7B0
2019/07/18(木) 12:47:19.12ID:OgRfjymX お題: マルバツゲームを作れ。
_1_2_3
1O|_|_
_ー+ー+ー
2_|X|_
_ー+ー+ー
3_|_|_
_1_2_3
1O|_|_
_ー+ー+ー
2_|X|_
_ー+ー+ー
3_|_|_
834蟻人間 ◆T6xkBnTXz7B0
2019/07/18(木) 12:58:43.13ID:OgRfjymX (出力例)
プレーヤー1が先攻です。
プレーヤー1は何番に置きますか? 1
プレーヤー2は何番に置きますか? 5
...
プレーヤー2の勝ち。
O|2|3
ー+ー+ー
4|X|6
ー+ー+ー
7|8|9
プレーヤー1が先攻です。
プレーヤー1は何番に置きますか? 1
プレーヤー2は何番に置きますか? 5
...
プレーヤー2の勝ち。
O|2|3
ー+ー+ー
4|X|6
ー+ー+ー
7|8|9
835デフォルトの名無しさん
2019/07/18(木) 22:59:22.13ID:e7HmHit7 マルバツゲームに便乗して…
お題:
3×3のマルバツゲームで両者がランダムな手を打つとき
先手の勝率、後手の勝率をそれぞれ求めよ。
お題:
3×3のマルバツゲームで両者がランダムな手を打つとき
先手の勝率、後手の勝率をそれぞれ求めよ。
836デフォルトの名無しさん
2019/07/18(木) 23:07:20.49ID:xdHI+pcE 今、こういうお題を考えています
Ruby などの遅い言語でも解けるように、
盤面の大きさを、9*9 〜 13*13 ぐらいで考えていますが、どうでしょうか?
1. 開始点S(座標、0行0列)から終了点E までの、最小コストを求める。
2. S, E 双方から、E, S へ目指す場合に、最小コストで出会う座標と、その時のコストを求める
1ターンで、縦横1つ隣へ移動できる。
同じマスは、1回しか通らない。
数字が各マスへの移動コストで、_ は、単なる目印で無関係です
S2953_9413
71546_7988
83411_2946
23716_5426
47385_736E
Ruby などの遅い言語でも解けるように、
盤面の大きさを、9*9 〜 13*13 ぐらいで考えていますが、どうでしょうか?
1. 開始点S(座標、0行0列)から終了点E までの、最小コストを求める。
2. S, E 双方から、E, S へ目指す場合に、最小コストで出会う座標と、その時のコストを求める
1ターンで、縦横1つ隣へ移動できる。
同じマスは、1回しか通らない。
数字が各マスへの移動コストで、_ は、単なる目印で無関係です
S2953_9413
71546_7988
83411_2946
23716_5426
47385_736E
837デフォルトの名無しさん
2019/07/19(金) 00:02:13.17ID:52u6jutr 問題側が手加減してあげないと解けないポンコツ言語なんて放っとけば?
838836
2019/07/19(金) 00:20:37.85ID:hngv4enD >>836
ルールを修正
1. 開始点S(座標、0行0列)から終了点E までの、最小コストを求める。
2. S, E 双方から、双方が出会うように移動する時、最小コストで出会う座標と、その時のコストを求める。
この時の最小コストは、双方のコストを足したものです
1ターンで、縦横1つ隣のマスへ、必ず移動する。
自分が通ったマスは、1回しか通らないが、相手が通ったマスは、通れます
数字が各マスへの移動コストで、_ は、単なる目印で無関係です
この2は、かなり難しいのかな?
最小コストが求まるのかな?
漏れにも、わからない
ルールを修正
1. 開始点S(座標、0行0列)から終了点E までの、最小コストを求める。
2. S, E 双方から、双方が出会うように移動する時、最小コストで出会う座標と、その時のコストを求める。
この時の最小コストは、双方のコストを足したものです
1ターンで、縦横1つ隣のマスへ、必ず移動する。
自分が通ったマスは、1回しか通らないが、相手が通ったマスは、通れます
数字が各マスへの移動コストで、_ は、単なる目印で無関係です
この2は、かなり難しいのかな?
最小コストが求まるのかな?
漏れにも、わからない
839デフォルトの名無しさん
2019/07/19(金) 00:31:00.88ID:uE+iP71G >>838
迷惑だからちゃんと整理して解ける問題か確認してから書き込め。説明も下手すぎるからちゃんと推敲しろ。
迷惑だからちゃんと整理して解ける問題か確認してから書き込め。説明も下手すぎるからちゃんと推敲しろ。
840デフォルトの名無しさん
2019/07/19(金) 00:57:57.34ID:KQ8wFSu5 だから自分で一度書いて動くのを確認してから出題しろと何度言えば…
841デフォルトの名無しさん
2019/07/19(金) 02:15:25.70ID:ApXEphk2 >>834
common lisp
https://pastebin.com/TjpFVgBk
> (OX-game)
123/456/789 to write OX
|789|
|456|
|123|
| |
| |
| |
player-1 writing O to ...
1
| |
| |
|O |
player-2 writing X to ...
...
|XX |
| O |
|O |
player-1 writing O to ...
9
player-1 win
|XXO|
| O |
|O |
common lisp
https://pastebin.com/TjpFVgBk
> (OX-game)
123/456/789 to write OX
|789|
|456|
|123|
| |
| |
| |
player-1 writing O to ...
1
| |
| |
|O |
player-2 writing X to ...
...
|XX |
| O |
|O |
player-1 writing O to ...
9
player-1 win
|XXO|
| O |
|O |
842デフォルトの名無しさん
2019/07/19(金) 02:16:34.42ID:ApXEphk2 続き
player-2 writing X to ...
2
|X O|
|OOX|
|XXO|
player-1 writing O to ...
8
it's draw! finish a game without either one winning
player-2 writing X to ...
2
|X O|
|OOX|
|XXO|
player-1 writing O to ...
8
it's draw! finish a game without either one winning
843デフォルトの名無しさん
2019/07/19(金) 02:19:09.79ID:ApXEphk2844デフォルトの名無しさん
2019/07/19(金) 02:28:05.00ID:ApXEphk2845デフォルトの名無しさん
2019/07/19(金) 08:59:52.92ID:MqWaI42B 「忘れてた」
「ミスってた」
「深夜だから」
「ミスってた」
「深夜だから」
846デフォルトの名無しさん
2019/07/20(土) 00:17:01.47ID:fiB1nngo847デフォルトの名無しさん
2019/07/20(土) 02:47:49.06ID:fiB1nngo お題と回答
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11=>>575 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259 342 353
>>320 : 321 323 327 330 340
>>322 : 325 328 329 331 332 339 341 358 359
>>5 : 6 10 32 36 44
>>9 : 15 34 35 79
>>11=>>575 : 48 (78) 138-139 (140) 142 146 151 154
>>19 :
>>50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == >>164 : 59 61 167 169 189 192 201 202
>>90 : 95 96
>>99 :
>>200 : 214 219
>>215 : 227
>>220 : 232 240 248 256 268
>>235 : 236 237 238 239 247 249 259 342 353
>>320 : 321 323 327 330 340
>>322 : 325 328 329 331 332 339 341 358 359
>>362 : 367 369 370 371 374 379 380 382 414
>>368 : 390
>>388 : 487 (488) 553 559
>>400 : 401
>>408 :
>>417 : 418 419 421 426 432 433 436 438 442 446 451 452 456 471 474 480 482 489 492 495 498 528 530 540
>>479 :
>>555 : 556 558 564 565
>>557 : 560 562 568 569
>>570 : 574 577
>>573 : 604 622
>>600 : 605 607 611 613 627 691
>>615,626 :
>>632 : 637 640 645 649 650 687 689-690
>>368 : 390
>>388 : 487 (488) 553 559
>>400 : 401
>>408 :
>>417 : 418 419 421 426 432 433 436 438 442 446 451 452 456 471 474 480 482 489 492 495 498 528 530 540
>>479 :
>>555 : 556 558 564 565
>>557 : 560 562 568 569
>>570 : 574 577
>>573 : 604 622
>>600 : 605 607 611 613 627 691
>>615,626 :
>>632 : 637 640 645 649 650 687 689-690
>>651 : 654 657 662 679 682
>>655 :
>>661 :
>>683 : 685
>>695,704,716,721 : 696 697 701 703 711 713 714 715 718 722 723 724 727 740-741
>>708 : 714
>>717 :
>>752 :
>>753 : (760)
>>767 : 775
>>778 : 779 788 (792) 794
>>789 : 790 (793)
>>807 : 810 811 812 814 815 816 821 823
>>824 : 826 827-828 829 831
>>655 :
>>661 :
>>683 : 685
>>695,704,716,721 : 696 697 701 703 711 713 714 715 718 722 723 724 727 740-741
>>708 : 714
>>717 :
>>752 :
>>753 : (760)
>>767 : 775
>>778 : 779 788 (792) 794
>>789 : 790 (793)
>>807 : 810 811 812 814 815 816 821 823
>>824 : 826 827-828 829 831
852デフォルトの名無しさん
2019/07/20(土) 10:54:30.31ID:ilSI1heG 迷惑だからやめろ
やるなら言語別集計とか少しでも付加価値を入れろ
やるなら言語別集計とか少しでも付加価値を入れろ
853デフォルトの名無しさん
2019/07/20(土) 11:03:01.50ID:eNhk7IpQ 留数定理も知らないくせにしゃしゃりでてんじゃねえぞクソコテ白痴クロッチロット野郎が
855デフォルトの名無しさん
2019/07/20(土) 14:50:09.53ID:OIy5RkDH >>854
本当に申し訳ないんですがここに貼るないでもらっていいですか
本当に申し訳ないんですがここに貼るないでもらっていいですか
856デフォルトの名無しさん
2019/07/20(土) 14:51:10.98ID:OIy5RkDH 認識したいのならご自由にでも迷惑だからここには貼らないで
857デフォルトの名無しさん
2019/07/20(土) 15:04:46.84ID:UpWxMySu858デフォルトの名無しさん
2019/07/20(土) 15:23:47.14ID:QHhW8HGw >>854
自分のPC上で好きなだけやれよ
自分のPC上で好きなだけやれよ
859デフォルトの名無しさん
2019/07/20(土) 18:06:54.10ID:k4+mr7b7 お題: できるだけ少ない回数で1から1000の数を判定しろ
例
入力: 775
出力 n==755
入力: 2,4, ...., 1000
出力 n%2
入力: 3,4,5,6, 10
出力 : n-3<=3 ||n==10
例
入力: 775
出力 n==755
入力: 2,4, ...., 1000
出力 n%2
入力: 3,4,5,6, 10
出力 : n-3<=3 ||n==10
860デフォルトの名無しさん
2019/07/20(土) 18:27:26.16ID:fiB1nngo あっ。あっ。頭が!爆発!!しちゃうーーーーーーーー!!!
861デフォルトの名無しさん
2019/07/20(土) 19:19:03.53ID:eeWyC8j7862デフォルトの名無しさん
2019/07/20(土) 19:25:23.08ID:c0ewdrdO 桃白白改めミスターポポ改めピラフ改めピッコロさんは毎回適当に出題してるからね
863デフォルトの名無しさん
2019/07/20(土) 19:58:58.98ID:k4+mr7b7 >>861
うん
うん
864デフォルトの名無しさん
2019/07/20(土) 21:47:04.48ID:riEgRod9865デフォルトの名無しさん
2019/07/20(土) 23:23:39.84ID:ge7gFbNK お題
正の整数nと、正の整数のリスト2つ
a_1, ..., a_k
b_1, ..., b_k
が与えられる。
これに対して以下の操作を繰り返す。
操作: n*a_i/b_iが整数になる最初のa_i/b_iをnに掛ける
この操作ができなくなる時が来るかどうか判定してください。
正の整数nと、正の整数のリスト2つ
a_1, ..., a_k
b_1, ..., b_k
が与えられる。
これに対して以下の操作を繰り返す。
操作: n*a_i/b_iが整数になる最初のa_i/b_iをnに掛ける
この操作ができなくなる時が来るかどうか判定してください。
866デフォルトの名無しさん
2019/07/20(土) 23:44:40.61ID:riEgRod9 >>865
lisp
(loop for a in '(1 4 3 4 5 6) for b in '(7 8 9 10 11 12) with n = 14 when (integerp (* (/ a b) n)) do (return (format t "a:~a b:~a" a b)) finally (princ "not found"))
a:1 b:7
(loop for a in '(1 4 3 4 5 6) for b in '(7 8 9 10 11 12) with n = 13 when (integerp (* (/ a b) n)) do (return (format t "a:~a b:~a" a b)) finally (princ "not found"))
not found
lisp
(loop for a in '(1 4 3 4 5 6) for b in '(7 8 9 10 11 12) with n = 14 when (integerp (* (/ a b) n)) do (return (format t "a:~a b:~a" a b)) finally (princ "not found"))
a:1 b:7
(loop for a in '(1 4 3 4 5 6) for b in '(7 8 9 10 11 12) with n = 13 when (integerp (* (/ a b) n)) do (return (format t "a:~a b:~a" a b)) finally (princ "not found"))
not found
867デフォルトの名無しさん
2019/07/21(日) 00:23:35.41ID:Bd+iRrer868デフォルトの名無しさん
2019/07/21(日) 00:27:00.70ID:RHDfdbdw869デフォルトの名無しさん
2019/07/21(日) 02:19:32.68ID:m/GaQUZU870デフォルトの名無しさん
2019/07/21(日) 03:17:35.19ID:okP8VzSh871デフォルトの名無しさん
2019/07/21(日) 08:20:50.09ID:o8Rw7GgG ◆QZaw55cn4c のまとめ(と称した自己満足)は本当に迷惑だからやめてほしい
872デフォルトの名無しさん
2019/07/21(日) 09:52:12.84ID:z5eK/QET >>867
コテハン付け忘れてんぞw
コテハン付け忘れてんぞw
>>870
その専用ブラウザはアンカーのほかにスレッドURLにも対応していますか?
https://mevius.5ch.net/test/read.cgi/tech/1558168409/833 : 841
https://mevius.5ch.net/test/read.cgi/tech/1558168409/835
https://mevius.5ch.net/test/read.cgi/tech/1558168409/836 : 847
こういう形式であってもピックアップする機能があるのですか?
その専用ブラウザはアンカーのほかにスレッドURLにも対応していますか?
https://mevius.5ch.net/test/read.cgi/tech/1558168409/833 : 841
https://mevius.5ch.net/test/read.cgi/tech/1558168409/835
https://mevius.5ch.net/test/read.cgi/tech/1558168409/836 : 847
こういう形式であってもピックアップする機能があるのですか?
874デフォルトの名無しさん
2019/07/21(日) 12:22:59.36ID:JSHlhL4U とにかく迷惑だからやめろ
875デフォルトの名無しさん
2019/07/21(日) 12:37:24.29ID:m/GaQUZU877デフォルトの名無しさん
2019/07/21(日) 13:14:57.26ID:6reBljd1 >>876
回避策も何も、お前が書き込みをやめればすむだけの話だ
回避策も何も、お前が書き込みをやめればすむだけの話だ
878デフォルトの名無しさん
2019/07/21(日) 14:00:38.73ID:LwmwcwKU なんで手間暇かけて他人の嫌がる余計なことするのかね
ろくな回答書けないなら黙ってROMってろって思うわ
ろくな回答書けないなら黙ってROMってろって思うわ
879デフォルトの名無しさん
2019/07/21(日) 14:03:18.32ID:DBsZJ8x+ これだから朝鮮人は嫌われるんだよ
880デフォルトの名無しさん
2019/07/21(日) 14:51:20.84ID:5KK3hTpc881デフォルトの名無しさん
2019/07/21(日) 15:57:20.08ID:5KK3hTpc https://ideone.com/lOmm7w
>>836
C++。できた。終了位置がレンジ外だったりした。
ただ、いじりすぎてロックインしてないか心配だ。
概要としては、最小重み経路問題の非再帰関数バージョン。のはず。
>>836
C++。できた。終了位置がレンジ外だったりした。
ただ、いじりすぎてロックインしてないか心配だ。
概要としては、最小重み経路問題の非再帰関数バージョン。のはず。
882デフォルトの名無しさん
2019/07/21(日) 16:07:33.87ID:5KK3hTpc なんか降ってきたわ。ありがたやー。
883デフォルトの名無しさん
2019/07/21(日) 21:50:34.29ID:WILkXhL9 >>865
問題かよくわからない。a_i/b_iをnに掛けた結果をどうするのか?何かに代入するのか?
問題かよくわからない。a_i/b_iをnに掛けた結果をどうするのか?何かに代入するのか?
884デフォルトの名無しさん
2019/07/21(日) 22:55:45.10ID:tHXql6vE n*a_i/b_iが整数になったらnにそれを代入して、もう一度頭から繰り返すんじゃろ
で、無限にその操作を繰り返せるのか途中で終わるのかを判定する
で、無限にその操作を繰り返せるのか途中で終わるのかを判定する
885デフォルトの名無しさん
2019/07/22(月) 04:31:58.44ID:Q+N+yzYS >>873
スレッドURLにも対応してる、しつこいよあんた
スレッドURLにも対応してる、しつこいよあんた
886デフォルトの名無しさん
2019/07/22(月) 04:43:22.10ID:wriJoSF9 >>873は百害あって一理なし
887デフォルトの名無しさん
2019/07/22(月) 05:57:37.39ID:R4+31Tcv QZとか言う馬鹿は自分がやっている事がことごとく嫌がらせになっているというのにも
全く気づいてないんだろうなあ
全く気づいてないんだろうなあ
888デフォルトの名無しさん
2019/07/22(月) 10:03:01.17ID:xuhhP9lh おまけにこの糞コテは数学もまともにできない低能
889デフォルトの名無しさん
2019/07/22(月) 11:18:34.47ID:wZJ8iqbX 良かれと思ってやったのに迷惑だと言われる
千羽づるみたいだなって思いました
千羽づるみたいだなって思いました
890デフォルトの名無しさん
2019/07/22(月) 11:35:03.07ID:sp7+c3NQ891デフォルトの名無しさん
2019/07/22(月) 11:38:44.03ID:RNJMLfCg >>889
千羽鶴なら独善ではあっても善意のつもりだというのは分かるが、QZのは他人のためでなく自分がそうしたいというだけの理由だから、より嫌われる
千羽鶴なら独善ではあっても善意のつもりだというのは分かるが、QZのは他人のためでなく自分がそうしたいというだけの理由だから、より嫌われる
892836
2019/07/22(月) 14:11:57.23ID:GAEqWBnq お題・ルールは、
>>838
のままで良いです
マスは、11 * 11 で、やってみましょう!
空行・_ は、単に見やすくしただけなので、無視してください
S2953_94137_3
71546_79881_4
83411_29465_2
23716_54268_4
47385_73638_9
55263_74296_1
34945_87362_5
96755_42186_7
14893_12472_6
71911_47852_1
29437_95134_E
>>838
のままで良いです
マスは、11 * 11 で、やってみましょう!
空行・_ は、単に見やすくしただけなので、無視してください
S2953_94137_3
71546_79881_4
83411_29465_2
23716_54268_4
47385_73638_9
55263_74296_1
34945_87362_5
96755_42186_7
14893_12472_6
71911_47852_1
29437_95134_E
893デフォルトの名無しさん
2019/07/22(月) 17:05:26.62ID:mrS8zraI894デフォルトの名無しさん
2019/07/22(月) 17:08:22.90ID:mrS8zraI >>892
問い2は道順取れてるので頭と尻尾から配列なめてけば一応、かち合う場所が取れるよ。
問い2は道順取れてるので頭と尻尾から配列なめてけば一応、かち合う場所が取れるよ。
895デフォルトの名無しさん
2019/07/22(月) 17:53:24.27ID:mrS8zraI896デフォルトの名無しさん
2019/07/22(月) 19:52:32.52ID:27NBQOQ4 S66
996
19E
超単純化した↑の場合
問1の場合はコスト18
問2の場合は座標(0,2) コスト19
で良いんだよな?
996
19E
超単純化した↑の場合
問1の場合はコスト18
問2の場合は座標(0,2) コスト19
で良いんだよな?
897デフォルトの名無しさん
2019/07/22(月) 20:21:15.73ID:mrS8zraI ホンダがらったフンだがらったヘンだがらった!フンフン!!
いでよ、主催者!!!
いでよ、主催者!!!
898デフォルトの名無しさん
2019/07/22(月) 20:27:49.31ID:vmYUDJ0J >>897
ここには特に主催している人は居ないし、そもそも組織になっていない。各個人か勝手にお題を出して解きたい人が解いてるだけ。
おそらく常連は居るだろうが基本的に匿名で誰が誰だかよくわからず、人か入れ替わっていてもわからない。
ここには特に主催している人は居ないし、そもそも組織になっていない。各個人か勝手にお題を出して解きたい人が解いてるだけ。
おそらく常連は居るだろうが基本的に匿名で誰が誰だかよくわからず、人か入れ替わっていてもわからない。
899デフォルトの名無しさん
2019/07/22(月) 22:09:07.24ID:zz8dj3fo 問1ってダイクストラ法まんまでいいの?
900836
2019/07/23(火) 09:29:05.01ID:5GIBUFQK 問2 について考えてみた
最短ターンでは、10ターンで、双方が出会うけど、
その時の双方を足したコストが、最小とは限らない!
だから迂回路の場合、つまり、11ターン以上で出会うマスも、すべて考慮して、
その中から最小コストを選ぶ必要がある
例えば、あるマスが、S・E 双方から12ターンなど
その際、双方からのターン数が異なる場合は、関係ない。
例えば、あるマスが、Sから11ターンで、Eから13ターンなど
>>899
ダイクストラ法で良い。
漏れは、総当たりでやってみる
最短ターンでは、10ターンで、双方が出会うけど、
その時の双方を足したコストが、最小とは限らない!
だから迂回路の場合、つまり、11ターン以上で出会うマスも、すべて考慮して、
その中から最小コストを選ぶ必要がある
例えば、あるマスが、S・E 双方から12ターンなど
その際、双方からのターン数が異なる場合は、関係ない。
例えば、あるマスが、Sから11ターンで、Eから13ターンなど
>>899
ダイクストラ法で良い。
漏れは、総当たりでやってみる
901836
2019/07/23(火) 09:37:45.12ID:5GIBUFQK >>896
問1 は、6 + 6 + 6 = 18
問2 は、左下の1 の所で出会うのなら、
S から、9 + 1 = 10
E から、9 + 1 = 10
で、合計20
出会うマスのコストを2回足しているけど、これで良いか
問1 は、6 + 6 + 6 = 18
問2 は、左下の1 の所で出会うのなら、
S から、9 + 1 = 10
E から、9 + 1 = 10
で、合計20
出会うマスのコストを2回足しているけど、これで良いか
902デフォルトの名無しさん
2019/07/23(火) 13:22:20.59ID:QB0eaOex903デフォルトの名無しさん
2019/07/23(火) 16:42:15.95ID:0hlsR1TA Sは左上、Eは右下、盤面は正方形で良いのか?それともそれ以外のパターンも考慮しなきゃいけないのか
904836
2019/07/23(火) 17:53:12.70ID:5GIBUFQK905896
2019/07/23(火) 18:05:44.96ID:GpNXeX+q >>901
うん、ぼけてた
コスト20やなw
問2で盤面サイズが奇数x偶数とかの場合はゴールはどう考えればいいの? 同時移動だとすれ違っちゃうが
Sが常に先に動く (Eが居るところで合流)
Eが常に先に動く (Sが居るところで合流)
SとE好きな方が先に動く (コストが低いマスの方で合流)
SとEが同時に動く (すれ違って合流できない? 中間点で合流? その場合のコストは?)
たとえば S12E とかの場合
うん、ぼけてた
コスト20やなw
問2で盤面サイズが奇数x偶数とかの場合はゴールはどう考えればいいの? 同時移動だとすれ違っちゃうが
Sが常に先に動く (Eが居るところで合流)
Eが常に先に動く (Sが居るところで合流)
SとE好きな方が先に動く (コストが低いマスの方で合流)
SとEが同時に動く (すれ違って合流できない? 中間点で合流? その場合のコストは?)
たとえば S12E とかの場合
906836
2019/07/23(火) 20:32:34.55ID:5GIBUFQK 盤面のサイズが偶数では、問2 は無理
必ず、奇数×奇数
必ず、奇数×奇数
>>885
回答いただき感謝いたします
回答いただき感謝いたします
908デフォルトの名無しさん
2019/07/23(火) 22:05:37.82ID:GpNXeX+q909デフォルトの名無しさん
2019/07/24(水) 14:07:43.24ID:i9YSslum 目の前で出会うことが目的じゃないの?
910デフォルトの名無しさん
2019/07/25(木) 16:00:43.87ID:JLY47fmQ 任意の整数を引数に取り、フィボナッチ数か判別するisfib関数を作れ。
なお、フィボナッチ数では無い場合任意の整数と-1の組(Cなどは代わりの物)を、
フィボナッチ数ならフィボナッチ数=任意の整数とそれがフィボナッチ数列の何番めかを表す数の組を返す事。
例:
isfib 0 = (0,1)
isfib 1 = (1,2)
isfib 2 = (2,4)
isfib 3 = (3,5)
isfib 4 = (4,-1)
isfib 5 = (5,6)
なお、フィボナッチ数では無い場合任意の整数と-1の組(Cなどは代わりの物)を、
フィボナッチ数ならフィボナッチ数=任意の整数とそれがフィボナッチ数列の何番めかを表す数の組を返す事。
例:
isfib 0 = (0,1)
isfib 1 = (1,2)
isfib 2 = (2,4)
isfib 3 = (3,5)
isfib 4 = (4,-1)
isfib 5 = (5,6)
911デフォルトの名無しさん
2019/07/25(木) 18:03:38.63ID:D8pzUtDE >>910
Common Lisp
https://pastebin.com/qqYUKSem
出力
(loop for i from 0 to 6 do (isfib i))
(0 . 1)
(1 . 2)
(2 . 4)
(3 . 5)
(4 . -1)
(5 . 6)
(6 . -1)
Common Lisp
https://pastebin.com/qqYUKSem
出力
(loop for i from 0 to 6 do (isfib i))
(0 . 1)
(1 . 2)
(2 . 4)
(3 . 5)
(4 . -1)
(5 . 6)
(6 . -1)
912デフォルトの名無しさん
2019/07/26(金) 01:20:21.47ID:E/v28Z/A >>910 Perl5
sub isfib {
$v = shift;
%h = map{$_ => $_} @s = (0,1);
do {
$f = $s[-2] + $s[-1];
push @s, $f;
$h{$f} //= @s;
} while $f < $v;
($v, $h{$v} // -1);
}
printf "isfib $_ = (%d,%d)\n", isfib $_ for 0..5;
実行結果
$ perl 14_910_isfib.pl
isfib 0 = (0,0)
isfib 1 = (1,1)
isfib 2 = (2,4)
isfib 3 = (3,5)
isfib 4 = (4,-1)
isfib 5 = (5,6)
sub isfib {
$v = shift;
%h = map{$_ => $_} @s = (0,1);
do {
$f = $s[-2] + $s[-1];
push @s, $f;
$h{$f} //= @s;
} while $f < $v;
($v, $h{$v} // -1);
}
printf "isfib $_ = (%d,%d)\n", isfib $_ for 0..5;
実行結果
$ perl 14_910_isfib.pl
isfib 0 = (0,0)
isfib 1 = (1,1)
isfib 2 = (2,4)
isfib 3 = (3,5)
isfib 4 = (4,-1)
isfib 5 = (5,6)
913デフォルトの名無しさん
2019/07/26(金) 06:33:07.15ID:NUjZudpe >>910 Lua
function isFib(n)
local a, b, c = 0, 1, 1
while a < n do
a, b, c = b, a + b, c + 1
end
if a ~= n then c = -1 end
return n, c
end
function isFib(n)
local a, b, c = 0, 1, 1
while a < n do
a, b, c = b, a + b, c + 1
end
if a ~= n then c = -1 end
return n, c
end
915デフォルトの名無しさん
2019/07/26(金) 09:50:12.39ID:rMhs1i6l >>910
戻り値がbooleanじゃないのが気持ち悪い
戻り値がbooleanじゃないのが気持ち悪い
916デフォルトの名無しさん
2019/07/26(金) 21:09:58.82ID:D2C6zjmj917デフォルトの名無しさん
2019/07/26(金) 22:09:57.95ID:wMkqv1Wf 「何番目かを返す」ってのが地味に難しいな
そこまでの全てのフィボナッチ数を求めないと無理じゃね?
そこまでの全てのフィボナッチ数を求めないと無理じゃね?
918デフォルトの名無しさん
2019/07/26(金) 22:53:34.40ID:XK3Q7RTy919デフォルトの名無しさん
2019/07/26(金) 23:11:48.79ID:PBeJ5BeU キャッシュ層込みの問題だな
920蟻人間 ◆T6xkBnTXz7B0
2019/07/26(金) 23:31:36.17ID:HmAxaouE お題: 水素原子、酸素原子、炭素原子からなる分子の化学式が与えられる。原子の種類と個数から考えられる分子構造をデータ構造で表現し、コンソール画面に可能なかぎり表示しなさい。
(例)
H2O --> H - O - H
CO2 --> O = C = O
CH4 -->
H
|
H- C - H
|
H
(例)
H2O --> H - O - H
CO2 --> O = C = O
CH4 -->
H
|
H- C - H
|
H
921蟻人間 ◆T6xkBnTXz7B0
2019/07/26(金) 23:39:37.50ID:HmAxaouE (例2) 図式化が難しければ、データ構造だけでもいい。
CO2 → (C, O, O), ((0, 1), (0, 2)).
H2O → (H, H, O), ((0, 2), (1, 2)).
CH4 → (C, H, H, H), ((0, 1), (0, 2), (0, 3)).
CO2 → (C, O, O), ((0, 1), (0, 2)).
H2O → (H, H, O), ((0, 2), (1, 2)).
CH4 → (C, H, H, H), ((0, 1), (0, 2), (0, 3)).
922デフォルトの名無しさん
2019/07/26(金) 23:40:57.41ID:XK3Q7RTy >>920
サンプル回答キボンヌ
サンプル回答キボンヌ
923蟻人間 ◆T6xkBnTXz7B0
2019/07/26(金) 23:42:34.11ID:HmAxaouE924デフォルトの名無しさん
2019/07/26(金) 23:45:02.28ID:PBeJ5BeU925蟻人間 ◆T6xkBnTXz7B0
2019/07/26(金) 23:47:59.42ID:HmAxaouE 図式化は不可能に近いようだ。データ構造だけでOK.
926デフォルトの名無しさん
2019/07/26(金) 23:48:10.95ID:XK3Q7RTy そいうこと考えてから出題ヨロ
927蟻人間 ◆T6xkBnTXz7B0
2019/07/27(土) 00:19:22.73ID:P0VdsVRX 備考。
ここでは単純のために「結合の手」を使ったモデルで考える。
原子によって結合の手の個数は決まっている(Cは4個、Oは2個、Hは1個)。
結合の手が余らないような分子構造のみを考える(一酸化炭素COのような構造は除外する)。
ここでは単純のために「結合の手」を使ったモデルで考える。
原子によって結合の手の個数は決まっている(Cは4個、Oは2個、Hは1個)。
結合の手が余らないような分子構造のみを考える(一酸化炭素COのような構造は除外する)。
928蟻人間 ◆T6xkBnTXz7B0
2019/07/27(土) 00:22:04.97ID:P0VdsVRX 電荷を持たない分子だけを対象とする。イオンではない。
929デフォルトの名無しさん
2019/07/27(土) 00:24:45.04ID:A58wSpEe ヨーク考えて、出題するレベルに練りあがってから出直したらどうですか
930デフォルトの名無しさん
2019/07/27(土) 03:29:25.97ID:IOXz7NXW うわーおQZってまだ生きてたのか
昔NG推奨にしてスレ立てたような気がしたんだが
昔NG推奨にしてスレ立てたような気がしたんだが
931デフォルトの名無しさん
2019/07/27(土) 06:20:15.81ID:vbPXi5Ru932デフォルトの名無しさん
2019/07/27(土) 06:23:51.65ID:Okexx4cI >>917
一般項 f(n) = (φ^n - (-φ)^(-n)) / sqrt(5) はnに対して狭義単調増加なので逆写像 fi(n) が存在して当然 fi・f(n) = n が成り立つ。
従って「そこまでの全てのフィボナッチ数を求めないと無理」は偽である。
一般項 f(n) = (φ^n - (-φ)^(-n)) / sqrt(5) はnに対して狭義単調増加なので逆写像 fi(n) が存在して当然 fi・f(n) = n が成り立つ。
従って「そこまでの全てのフィボナッチ数を求めないと無理」は偽である。
933デフォルトの名無しさん
2019/07/27(土) 06:26:39.77ID:Okexx4cI934デフォルトの名無しさん
2019/07/27(土) 10:14:18.78ID:yKuZ7Tou お題
非負整数m, nに対し、
f(m, n)= n+1 if m==0
f(m, n) = f(m-1, 1) if n == 0
f(m, n) = f(m-1, f(m, n-1)) otherwise
なるf(m, n)の値を求めよ
f(2, 1) = ?
f(4, 1) = ?
非負整数m, nに対し、
f(m, n)= n+1 if m==0
f(m, n) = f(m-1, 1) if n == 0
f(m, n) = f(m-1, f(m, n-1)) otherwise
なるf(m, n)の値を求めよ
f(2, 1) = ?
f(4, 1) = ?
935デフォルトの名無しさん
2019/07/27(土) 10:45:11.97ID:aB6NIKG8936デフォルトの名無しさん
2019/07/27(土) 10:56:52.18ID:aB6NIKG8937デフォルトの名無しさん
2019/07/27(土) 11:08:11.84ID:tV8GDyIW938デフォルトの名無しさん
2019/07/27(土) 11:11:50.71ID:1cAkezH+939デフォルトの名無しさん
2019/07/27(土) 11:57:13.11ID:g91Bo5NE940デフォルトの名無しさん
2019/07/27(土) 12:10:03.51ID:aB6NIKG8 え?メモ化したら解けるの??
ガーン。
ガーン。
お題と回答
5 : 6 10 32 36 44
9 : 15 34 35 79
11=575 : 48 (78) 138-139 (140) 142 146 151 154
19 :
50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == 164 : 59 61 167 169 189 192 201 202
90 : 95 96
99 :
200 : 214 219
215 : 227
220 : 232 240 248 256 268
235 : 236 237 238 239 247 249 259 342 353
320 : 321 323 327 330 340
322 : 325 328 329 331 332 339 341 358 359
362 : 367 369 370 371 374 379 380 382 414
368 : 390
388 : 487 (488) 553 559
400 : 401
408 :
417 : 418 419 421 426 432 433 436 438 442 446 451 452 456 471 474 480 482 489 492 495 498 528 530 540
479 :
555 : 556 558 564 565
557 : 560 562 568 569
570 : 574 577
573 : 604 622
600 : 605 607 611 613 627 691
615,626 :
632 : 637 640 645 649 650 687 689-690
651 : 654 657 662 679 682
5 : 6 10 32 36 44
9 : 15 34 35 79
11=575 : 48 (78) 138-139 (140) 142 146 151 154
19 :
50, https://mevius.5ch.net/test/read.cgi/tech/1549160513/920 : 4 85 89
https://mevius.5ch.net/test/read.cgi/tech/1549160513/988 == 164 : 59 61 167 169 189 192 201 202
90 : 95 96
99 :
200 : 214 219
215 : 227
220 : 232 240 248 256 268
235 : 236 237 238 239 247 249 259 342 353
320 : 321 323 327 330 340
322 : 325 328 329 331 332 339 341 358 359
362 : 367 369 370 371 374 379 380 382 414
368 : 390
388 : 487 (488) 553 559
400 : 401
408 :
417 : 418 419 421 426 432 433 436 438 442 446 451 452 456 471 474 480 482 489 492 495 498 528 530 540
479 :
555 : 556 558 564 565
557 : 560 562 568 569
570 : 574 577
573 : 604 622
600 : 605 607 611 613 627 691
615,626 :
632 : 637 640 645 649 650 687 689-690
651 : 654 657 662 679 682
655 :
661 :
683 : 685
695,704,716,721 : 696 697 701 703 711 713 714 715 718 722 723 724 727 740-741
708 : 714
717 :
752 :
753 : (760)
767 : 775
778 : 779 788 (792) 794
789 : 790 (793)
807 : 810 811 812 814 815 816 821 823
824 : 826 827-828 829 831
833 : 841
835 :
836,838,892 : 847 880 881 893 895
865,868 : 866 868
910 : 911 912 913 935
934 : 936 938 939
661 :
683 : 685
695,704,716,721 : 696 697 701 703 711 713 714 715 718 722 723 724 727 740-741
708 : 714
717 :
752 :
753 : (760)
767 : 775
778 : 779 788 (792) 794
789 : 790 (793)
807 : 810 811 812 814 815 816 821 823
824 : 826 827-828 829 831
833 : 841
835 :
836,838,892 : 847 880 881 893 895
865,868 : 866 868
910 : 911 912 913 935
934 : 936 938 939
943デフォルトの名無しさん
2019/07/27(土) 12:28:33.93ID:aB6NIKG8 https://ideone.com/iEyKYb
C++。constexprでもダメだったよ。
C++。constexprでもダメだったよ。
944デフォルトの名無しさん
2019/07/27(土) 12:36:01.98ID:1cAkezH+ ああ まただよ(笑)
945デフォルトの名無しさん
2019/07/27(土) 12:37:09.52ID:aB6NIKG8 d -_- b
946デフォルトの名無しさん
2019/07/27(土) 13:05:36.13ID:hLAGzHLQ >>941-942
統合失調症患者はどっか逝け
統合失調症患者はどっか逝け
947デフォルトの名無しさん
2019/07/27(土) 14:28:16.32ID:eTs80TG9 お題: cpu温度を表示せよ
948デフォルトの名無しさん
2019/07/27(土) 15:01:57.99ID:Okexx4cI >>937
論点ずらすな
「〜は無理」って言ってるからそれを否定しただけ
ただ 1 <= n <= 2 で狭義単調増加じゃないからそこだけは訂正しておくが
てかどんな頭で考えたらこの逆関数が複素関数になるんだか
可哀そうだから答え書いといてあげるけどさ
fi(x) = (log(sqrt(5) * x + sqrt(5 * x^2 - 4 * (-1)^((x + 1) % 3))) - log(2)) / log(φ)
論点ずらすな
「〜は無理」って言ってるからそれを否定しただけ
ただ 1 <= n <= 2 で狭義単調増加じゃないからそこだけは訂正しておくが
てかどんな頭で考えたらこの逆関数が複素関数になるんだか
可哀そうだから答え書いといてあげるけどさ
fi(x) = (log(sqrt(5) * x + sqrt(5 * x^2 - 4 * (-1)^((x + 1) % 3))) - log(2)) / log(φ)
949デフォルトの名無しさん
2019/07/27(土) 15:15:49.31ID:b5LHfPHC >>948
CやC++で ^ はXOR演算子なんだが
CやC++で ^ はXOR演算子なんだが
950デフォルトの名無しさん
2019/07/27(土) 15:20:43.26ID:aB6NIKG8 ファイが何を指しているか・・・わからない・・・。
その定数5のいみがわからない。
そんな、ホラー。
その定数5のいみがわからない。
そんな、ホラー。
951デフォルトの名無しさん
2019/07/27(土) 15:23:42.00ID:Okexx4cI952デフォルトの名無しさん
2019/07/27(土) 15:26:08.80ID:b5LHfPHC953デフォルトの名無しさん
2019/07/27(土) 15:28:08.33ID:Okexx4cI954デフォルトの名無しさん
2019/07/27(土) 15:29:41.45ID:IpJBqisA おおかた、数学的には反論できなくて悔しくなってc++では〜などという難癖をつけたのだろう
これ以上はスレチだからどっかよそでやれ
これ以上はスレチだからどっかよそでやれ
955デフォルトの名無しさん
2019/07/27(土) 15:31:02.81ID:O5H2zazt 反論とかワロス
数学板でやれ
数学板でやれ
956蟻人間 ◆T6xkBnTXz7B0
2019/07/27(土) 15:33:55.84ID:P0VdsVRX phi
957デフォルトの名無しさん
2019/07/27(土) 15:35:44.71ID:d+qHn5lK 数学(?)の話してんのにCやC++で ^ はXOR演算子なんだがとかいうやつ初めて見たわ
無能アピールだとしたらこれ以上ないくらいに効果出てるな
無能アピールだとしたらこれ以上ないくらいに効果出てるな
958デフォルトの名無しさん
2019/07/27(土) 15:40:02.09ID:z4Poa3yK 数学の話は数学板で
959デフォルトの名無しさん
2019/07/27(土) 15:40:49.84ID:7QbyGuYU >そこまで言うなら逆関数を使ってnを求めるプログラムを書いてみろ!
どうせ無理だと思ってタンカを切ったら相手にあっさり答えを書かれてしまう(ついでに自分の間違いまで指摘されてしまう)
もし俺がこいつだったら、恥ずかしくなりすぎてXOR演算子云々で話をうやむやにする気持ちもわかるぞ
どうせ無理だと思ってタンカを切ったら相手にあっさり答えを書かれてしまう(ついでに自分の間違いまで指摘されてしまう)
もし俺がこいつだったら、恥ずかしくなりすぎてXOR演算子云々で話をうやむやにする気持ちもわかるぞ
960デフォルトの名無しさん
2019/07/27(土) 15:48:04.56ID:aB6NIKG8961デフォルトの名無しさん
2019/07/27(土) 15:51:41.66ID:aB6NIKG8 作ってて思ったのはね。
片方の関数は、フィボナッチ数知らないと動作しないのじゃないかということ。
片方の関数は、フィボナッチ数もとめにいくんだけど。
んで、鳥と卵の問題に見えるので、どういう風に使えばよいのかわからない。
片方の関数は、フィボナッチ数知らないと動作しないのじゃないかということ。
片方の関数は、フィボナッチ数もとめにいくんだけど。
んで、鳥と卵の問題に見えるので、どういう風に使えばよいのかわからない。
962デフォルトの名無しさん
2019/07/27(土) 15:52:21.85ID:3aZcsmVe 答え:カモノハシ
963デフォルトの名無しさん
2019/07/27(土) 15:57:38.07ID:Okexx4cI964デフォルトの名無しさん
2019/07/27(土) 16:04:37.22ID:f7WK2xYd 炎上学習法か
例の頭のおかしな人かな?
例の頭のおかしな人かな?
965デフォルトの名無しさん
2019/07/27(土) 16:04:59.65ID:1cAkezH+ あの逆関数?を単純に放りこんだら解けなかった
一筋縄じゃいかないね
Solve[(Log(Sqrt(5) * x + Sqrt(5 * x^2 - 4 * (-1)^((x + 1) % 3))) - Log(2)) *2/(1 + Sqrt(5)) ==5,x]
Solve::nsmet: This system cannot be solved with the methods available to Solve.
一筋縄じゃいかないね
Solve[(Log(Sqrt(5) * x + Sqrt(5 * x^2 - 4 * (-1)^((x + 1) % 3))) - Log(2)) *2/(1 + Sqrt(5)) ==5,x]
Solve::nsmet: This system cannot be solved with the methods available to Solve.
966デフォルトの名無しさん
2019/07/27(土) 16:07:23.94ID:1cAkezH+ () [] に上の式を正しくなおしたがやはりだめだ
967デフォルトの名無しさん
2019/07/27(土) 16:08:06.87ID:7aZqje0Z >>964
お前もまだいたの
お前もまだいたの
968デフォルトの名無しさん
2019/07/27(土) 16:08:36.42ID:aB6NIKG8 >>963
https://ideone.com/qN8CCx
幾つかNANになったのはコンピュータの問題かなぁ??
あんまり詳しくないんだけど。
中央値がきれいに取れてるので、境界線系のエラーもあり得る。
https://ideone.com/qN8CCx
幾つかNANになったのはコンピュータの問題かなぁ??
あんまり詳しくないんだけど。
中央値がきれいに取れてるので、境界線系のエラーもあり得る。
969デフォルトの名無しさん
2019/07/27(土) 16:13:46.18ID:aB6NIKG8 しかしまー、数式で可逆式まで考えられるモノなのだねぇ。感心するわ。。。
970デフォルトの名無しさん
2019/07/27(土) 16:27:26.01ID:aB6NIKG8971デフォルトの名無しさん
2019/07/27(土) 16:30:29.90ID:aB6NIKG8 いや、「技あり」か。
972デフォルトの名無しさん
2019/07/27(土) 16:48:31.50ID:Okexx4cI >>968
それのstd::pow(-1, 〜) が問題なので書き換えた
多少の誤差はあれどn = 2 を除いて右側の数字は0, 1, ..., 127と並んでいるよね
https://ideone.com/X7WSxR
それのstd::pow(-1, 〜) が問題なので書き換えた
多少の誤差はあれどn = 2 を除いて右側の数字は0, 1, ..., 127と並んでいるよね
https://ideone.com/X7WSxR
973デフォルトの名無しさん
2019/07/27(土) 16:51:51.51ID:aB6NIKG8974デフォルトの名無しさん
2019/07/27(土) 16:54:46.18ID:aB6NIKG8 念のため言っておくと、ideonは実行後コードと同じページにstdoutを表示する。
975デフォルトの名無しさん
2019/07/27(土) 16:59:41.70ID:aB6NIKG8976デフォルトの名無しさん
2019/07/27(土) 17:02:12.84ID:aB6NIKG8 お、動いたか。
とりあえず、この辺で抜けるわ。
まったねー。
とりあえず、この辺で抜けるわ。
まったねー。
>>934
アッカーマン関数であることにやっと気がつきました…
アッカーマン関数であることにやっと気がつきました…
978デフォルトの名無しさん
2019/07/27(土) 20:47:31.60ID:POROMEeh >>977
どうてもいいけどお前は荒らすな
どうてもいいけどお前は荒らすな
979デフォルトの名無しさん
2019/07/27(土) 22:43:52.75ID:JtBf7oRg >>972
誤差ないプログラム書けよ
誤差ないプログラム書けよ
980デフォルトの名無しさん
2019/07/27(土) 23:00:24.26ID:JtBf7oRg981デフォルトの名無しさん
2019/07/28(日) 01:17:00.04ID:+ByOW8ha お題
括弧のネストの深さの最大値を求めよ
括弧の対応が取れていない場合は-1を出力せよ
"{}" => 1
"}{" => -1
"" => 0
"{{{}{}}}{}" => 3
括弧のネストの深さの最大値を求めよ
括弧の対応が取れていない場合は-1を出力せよ
"{}" => 1
"}{" => -1
"" => 0
"{{{}{}}}{}" => 3
982デフォルトの名無しさん
2019/07/28(日) 02:35:31.10ID:/N9EqgUo983デフォルトの名無しさん
2019/07/28(日) 04:13:25.02ID:QWXlr9dJ >>910
Pythonで素直に書くとこんな感じ。
http://ideone.com/3HvxyP
これをそのままHaskellで書くと負けるが、こっちならPythonに勝つる。
http://ideone.com/iwLONj
Pythonで素直に書くとこんな感じ。
http://ideone.com/3HvxyP
これをそのままHaskellで書くと負けるが、こっちならPythonに勝つる。
http://ideone.com/iwLONj
984デフォルトの名無しさん
2019/07/28(日) 06:16:51.79ID:YNZYuVVC >>981 Ruby
f = -> str {s = -str; (0..1.0/0).each{|i| s.gsub!('{}', '') || (break s.size.zero? ? i : -1)}}
['{}', '}{', '', '{{{}{}}}{}'].each{|e| puts "%p => %d" % [e, f[e]]}
# =>
"{}" => 1
"}{" => -1
"" => 0
"{{{}{}}}{}" => 3
f = -> str {s = -str; (0..1.0/0).each{|i| s.gsub!('{}', '') || (break s.size.zero? ? i : -1)}}
['{}', '}{', '', '{{{}{}}}{}'].each{|e| puts "%p => %d" % [e, f[e]]}
# =>
"{}" => 1
"}{" => -1
"" => 0
"{{{}{}}}{}" => 3
985デフォルトの名無しさん
2019/07/28(日) 12:26:21.14ID:/N9EqgUo986デフォルトの名無しさん
2019/07/28(日) 14:44:03.09ID:NJaTvOic >>981 Perl5
use List::Util 'max';
%h = qw({ 1 } -1);
for ('{}', '}{', '', '{{{}{}}}{}') {
($l, $m) = (0, 0);
for (map{$h{$_}} split'') {
$l += $_;
$m = max $l, $m;
last if $l < 0;
}
$m = -1 if $l;
print "'$_' => $m\n";
}
実行結果
$ perl 14_981.pl
'{}' => 1
'}{' => -1
'' => 0
'{{{}{}}}{}' => 3
use List::Util 'max';
%h = qw({ 1 } -1);
for ('{}', '}{', '', '{{{}{}}}{}') {
($l, $m) = (0, 0);
for (map{$h{$_}} split'') {
$l += $_;
$m = max $l, $m;
last if $l < 0;
}
$m = -1 if $l;
print "'$_' => $m\n";
}
実行結果
$ perl 14_981.pl
'{}' => 1
'}{' => -1
'' => 0
'{{{}{}}}{}' => 3
987デフォルトの名無しさん
2019/07/28(日) 16:06:00.72ID:T1A0+dDM >>979-980
もともと提示されてたのは式だけだし、式自体に誤差はないじゃん。アホなの?
てかさ、(-1)^((x+1)%3)で場合分けを吸収してるところは素直に上手いなぁとは思うけど元のフィボナッチ数列の式からの変形自体は高校生レベルじゃんこれ
「自分で考えたの?」てお前アホなの?
誰が解いても上の部分以外は同じになるっつーの
「2次方程式の解の公式で解きました!」
「その公式って自分で考えたの?」
くらい間抜けでアホ馬鹿丸出し生きる価値無し短小包茎白癬菌
もともと提示されてたのは式だけだし、式自体に誤差はないじゃん。アホなの?
てかさ、(-1)^((x+1)%3)で場合分けを吸収してるところは素直に上手いなぁとは思うけど元のフィボナッチ数列の式からの変形自体は高校生レベルじゃんこれ
「自分で考えたの?」てお前アホなの?
誰が解いても上の部分以外は同じになるっつーの
「2次方程式の解の公式で解きました!」
「その公式って自分で考えたの?」
くらい間抜けでアホ馬鹿丸出し生きる価値無し短小包茎白癬菌
988デフォルトの名無しさん
2019/07/28(日) 17:09:34.39ID:a6lmPEp9 むきになって長文書くなよ
迷惑行為だぜ
迷惑行為だぜ
989デフォルトの名無しさん
2019/07/28(日) 17:23:37.85ID:6a78I9O8 基地外だから仕方ないね
990蟻人間 ◆T6xkBnTXz7B0
2019/07/28(日) 18:48:49.76ID:38YML8XX そろそろ次のスレ
991デフォルトの名無しさん
2019/07/28(日) 18:51:08.82ID:vDw8KJqW まだ早い
992デフォルトの名無しさん
2019/07/28(日) 19:41:08.34ID:832c/ukY993デフォルトの名無しさん
2019/07/28(日) 19:42:06.95ID:bnGezINl >>992
おつ
おつ
>>992
お疲れさまです…
お疲れさまです…
995デフォルトの名無しさん
2019/07/28(日) 23:40:41.46ID:/N9EqgUo >>994
書き込み禁止
書き込み禁止
>>995
はいはい♥
はいはい♥
997デフォルトの名無しさん
2019/07/29(月) 20:09:26.82ID:p0mLxaof お題: このスレッドのアンカーの数を出力せよ
998デフォルトの名無しさん
2019/07/29(月) 20:11:57.84ID:VkmvAKd6999デフォルトの名無しさん
2019/07/30(火) 05:43:03.94ID:RYwsY7rK1000デフォルトの名無しさん
2019/07/30(火) 07:12:39.03ID:RYwsY7rK >>417
13694289/134217728
を使えば満足するだろうか?なぜなら
(rational
0.102030405060708090
10011012013014015016
01701801902002102202
30240250260270280290
30031032033034035036
03703803904004104204
30440450460470480490
50051052053054055056
05705805906006106206
30640650660670680690
70071072073074075076
07707807908008108208
30840850860870880890
90091092093094095096
0970980990100
)
13694289/134217728
13694289/134217728
を使えば満足するだろうか?なぜなら
(rational
0.102030405060708090
10011012013014015016
01701801902002102202
30240250260270280290
30031032033034035036
03703803904004104204
30440450460470480490
50051052053054055056
05705805906006106206
30640650660670680690
70071072073074075076
07707807908008108208
30840850860870880890
90091092093094095096
0970980990100
)
13694289/134217728
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 72日 13時間 39分 10秒
新しいスレッドを立ててください。
life time: 72日 13時間 39分 10秒
10021002
Over 1000Thread 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- NY円、一時1ユーロ=180円台まで下落…1999年のユーロ導入以来初 [蚤の市★]
- 【外交】日中関係悪化、長期化の様相 2012年には自動車輸出80%減も ロイター★3 [1ゲットロボ★]
- 国内ホテル、既にキャンセルも 訪日客関連業界、事態見守る ★3 [蚤の市★]
- 「どうしようもない」 ため息つくアジアの玄関口 中国の訪日自粛で−福岡市 [蚤の市★]
- 「稼ぐのよ!」高市総理が電話ガチャ切りで伝えたこと 鈴木憲和農林水産大臣が国政報告会に出席 自身が目指す農政の方針語る [煮卵★]
- 俳優 高岡蒼佑「エジプト出身とかナイジェリア出身とかの人が、日本の代表顔して移民の事とか話してるの見るとなんか違う気がする」★2 [Anonymous★]
- 『しんちゃんと岸田さん』 [175344491]
- 自民「高市の一言でこれまで積み上げてきた関係が駄目になる。言葉の重みを分かっていない。自分でまいた種は自分で刈り取ってもらう」 [256556981]
- 日本株、大暴落!!! [252835186]
- 識者「『フリーパレスチナ』とかイキってる連中が台湾の話になると『中国を怒らせるな!』ってなる。ほんと左翼の正義って薄っぺらい」 [279254606]
- 港区女子「50kg越えちゃった、港区だとデブ界隈だよ(>.<)」🤳パシャッ👉10万いいね [329329848]
- 【超悲報】中国への武力行使、世論調査で「賛成」「どちらかといえば賛成」48.8% 「反対」「どちらかといえば反対」の44.2%を上回る [314039747]
