プログラミングのお題スレ Part13at TECH
プログラミングのお題スレ Part13 - 暇つぶし2ch293:デフォルトの名無しさん
19/02/21 20:16:12.26 eUc7EqKm.net
>>283 ごめん、俺もカンマが抜けてた。
数字の場合の模範解答をよろしく。

294:デフォルトの名無しさん
19/02/21 20:20:50.88 2zdYL4u2.net
スマートかは兎も角、一応マシな形に。
空リストや要素数1にも対応。
Haskell
main = putStrLn $ last2 lst
last2::[String] -> String
last2 [] = []
last2 [x] = x
last2 [x,y] = concat [x," and ", y]
last2 (x:xs) = x ++ "," ++ last2 xs
lst = map show [0..5]

output:
0,1,2,3,4 and 5

295:デフォルトの名無しさん
19/02/21 20:59:38.40 lqQG1Hmj.net
>>286
list = [str(x) for x in range(1,5)]
とか
map(lambda x : str(x), list)
でもおk
要素数が1個以下の場合はifで分離するだけなので略

296:デフォルトの名無しさん
19/02/21 21:09:47.73 y3+CYNZ6.net
>>279 Common Lisp
(format t "~{~@{~A~^~#,1^, ~}~^ and ~A~}~%" (list 1 2 3 4))
URLリンク(ideone.com)

297:デフォルトの名無しさん
19/02/21 21:21:18.07 lqQG1Hmj.net
intとstrが混在してる場合でも大丈夫で入力数が1以下ならそのまま返すワンライナー
python
print("".join(reversed(" ,".join(reversed([str(x) for x in list])).replace(",","dna ",1))))
JS+正規表現
console.log(list.join(", ").replace(/(.*),(.*?)+/,"$1 and $2"))
冷静に考えるとこの正規表現を使い回せばどの言語でもワンライナーなのでは

298:さまよえる蟻人間
19/02/21 21:21:18.26 PQQkN+7n.net
ラティス、再び。
お題: >>99 の場合分けのラティス構造を使って、複数の入力文字列について、共通部分をまとめ、1つの文字列に凝縮せよ。
(例)
ああい
ああ
あう
→あ{{あ{い/}}/う}

299:デフォルトの名無しさん
19/02/21 21:30:40.21 lqQG1Hmj.net
よく考えたらreversedなんか使わんでも
print((" ,".join([str(x) for x in list][::-1]).replace(",","dna ",1))[::-1])
でいけるか。join削減できるし

300:さまよえる蟻人間
19/02/21 21:32:52.15 3Jj6vI7v.net
出力文字列の長さは最短でなければならない。
場合分けの順序は問わないが、場合分けの項目について、ソートすることが望ましい。

301:さまよえる蟻人間
19/02/21 21:37:53.05 3Jj6vI7v.net
一番外側の { } は省略可能。
共通部分がないときは、/で区切って出力せよ。

302:279
19/02/21 21:39:50.99 1axkeZoV.net
>>279 pike
URLリンク(ideone.com)

303:さまよえる蟻人間
19/02/21 21:55:49.44 PQQkN+7n.net
このラティス構造っていうの、言語学ではよく使うらしいが、専門じゃないからよくわからない。

304:デフォルトの名無しさん
19/02/21 22:55:49.76 2zdYL4u2.net
>>279
>>292
Haskellでもワンライナー出来たけど、読みやすいとは思えない。(横長だし)
発想としては(要素数2以上なら)最後以外の要素(文字列)の頭に','追加して、全部結合して(大きな文字列にして)最後に頭の','を省く。
main = putStrLn.tail.concat $ if length lst < 2 then lst else [(concat.(map (\x -> ',':x)).init) lst," and ",last lst]
lst = map show [0..5]
個人的に >>287 の方が発想も読みやすさも好みの書き方。
(読み難くなるなら関数分ける派)
pythonのはワンライナーでも比較的読みやすくて、ちょっと羨ましい。

305:デフォルトの名無しさん
19/02/21 22:59:16.06 2zdYL4u2.net
>>297
弄ってる�


306:、ちに要素一以下だとバグ出てた。 正しいコードはこっち。 putStrLn.concat $ if length lst < 2 then lst else [(tail.concat.(map (\x -> ',':x)).init) lst," and ",last lst]



307:デフォルトの名無しさん
19/02/21 23:36:37.11 un6uIa3F.net
>>282 Perl5
sub f {
 my $a = shift;
 @_ ? (@_ > 1 ? "$a, " : "$a and ").f(@_) : $a
}
use feature say;
say f(qw[red green black white]);
say f(qw[apple banana]);
say f(qw[one]);

実行結果
~ $ perl 13_279_and.pl
red, green, black and white
apple and banana
one

308:デフォルトの名無しさん
19/02/22 00:04:51.72 EatRhjER.net
>>279 Squeak/Pharo Smalltalk
(0 to: 3) asCommaStringAnd "=> '0, 1, 2 and 3' "

309:デフォルトの名無しさん
19/02/22 00:07:27.55 wSgiM5bY.net
>>299
アンカー間違えた >>279 宛だった…orz

>>279 もう一丁 Perl5
sub g {
 my $z = ' and '.pop @_ if @_ > 1;
 join(', ', @_).$z;
}
use feature say;
say g(qw[red green black white]);
say g(qw[apple banana]);
say g(qw[one]);
実行結果
~ $ perl 13_279_and_2.pl
red, green, black and white
apple and banana
one

310:デフォルトの名無しさん
19/02/22 00:28:04.99 9PVAJM4v.net
>>300
そういう関数が既にあるの?

311:デフォルトの名無しさん
19/02/22 00:31:28.15 wSgiM5bY.net
>>302
ググルとあるみたいよ。
組み込みMethodを山のように持っていそう

312:デフォルトの名無しさん
19/02/22 00:49:22.57 9PVAJM4v.net
ほえー

313:デフォルトの名無しさん
19/02/22 06:09:02.19 HhIJRo4K.net
>>279
Smalltalk (Pharo 7)
#('apple' 'banana' 'orange' 'mango') asCommaStringAnd
==> 'apple, banana, orange and mango'
#('apple' 'banana') asCommaStringAnd
==> 'apple and banana'
#('apple') asCommaStringAnd
==> 'apple'

314:デフォルトの名無しさん
19/02/22 06:36:03.41 S1fPIClY.net
>>279 python
def f(lst): return ('空だ' if not lst else
','.join([str(x) for x in lst[:-1]])
+ (' and ' if len(lst)>1 else'')
+ str(lst[-1])
)

print(f( [ 1,'二',3,4,'五'] )) # 1,二,3,4 and 五
print(f( [1,'二'] )) # 1 and 二
print(f( [1] )) # 1
print(f([])) # 空だ

315:305
19/02/22 07:07:04.28 HhIJRo4K.net
しまった既出だったorz

316:デフォルトの名無しさん
19/02/22 07:58:55.12 6TNKk8ap.net
>>279 Ruby
f = -> a {a[0..-2].join(', ').sub(/.\K\z/, ' and ') << a[-1].to_s}
(-1..3).each{|r| puts f[[*0..r]]} # =>
0
0 and 1
0, 1 and 2
0, 1, 2 and 3

317:デフォルトの名無しさん
19/02/22 08:05:10.35 6TNKk8ap.net
>>291
あ{{あ{い/}}/う} // 12文字
ああい/ああ/あう // 9文字
あ{あい/あ/う} // 9文字

318:デフォルトの名無しさん
19/02/22 08:11:07.14 EatRhjER.net
>>302
Smalltalkは1970年代頃にはすでにこんな感じで
URLリンク(upload.wikimedia.org)
IDEからお絵かきツールまで処理系に組み込みだったので
生活に密着したメソッドが揃っています!

319:デフォルトの名無しさん
19/02/22 09:34:06.68 Ao+GBu+d.net
ラティス構造って要するに正規表現を生成すりゃーいいのか?

320:デフォルトの名無しさん
19/02/22 19:34:29.73 CY9He0wk.net
>>233
海外の人の
URLリンク(enigmaticcode.wordpress.com)
URLリンク(github.com)

321:デフォルトの名無しさん
19/02/22 19:43:43.74 FMSx1nas.net
お題:21の階乗を計算して表示せよ。
URLリンク(ideone.com)

322:デフォルトの名無しさん
19/02/22 20:16:33.34 9PVAJM4v.net
>>310
ほえー

323:デフォルトの名無しさん
19/02/22 21:26:47.09 py41/SAb.net
>>313 JavaScript
console.log(Array.from({length: 21}, (v, i) => i + 1).reduce((acc, v) => acc * v));

324:デフォルトの名無しさん
19/02/22 21:42:16.23 THqrb0iU.net
お題:
長方形のフィールドが与えられる。フィールド


325:上では上下左右に移動することができる。 各マスの数字はそのマスに入るためのコストを表す。 SからGに向かうときの最小コストを求めよ。(SとGのコストは0とする) S5111 1115G => 6 S1111 98642 G1111 => 9 13457689768914512071934123457 G4578901258901212890361125312 37890423076834712378998725463 16890102569615902061456259893 34582934765923812893461515232 57896123896741378915691551697 89013897456123457162501835479 21389046013845610034623405686 8902346203948612341356362342S => ?



326:デフォルトの名無しさん
19/02/22 21:49:55.63 2ARSyvEs.net
>>279
>>289
Common Lispで~#[...~]を使ってみた
(format t "~{~S~#[~; and ~:;, ~]~}" '(apple banana orage mango))

327:デフォルトの名無しさん
19/02/22 22:00:24.05 py41/SAb.net
こういう文章題好き。
でも実力不足で解けない…
a*かな?

328:デフォルトの名無しさん
19/02/22 22:05:57.76 AX8XyL13.net
>>313 Perl5
use bignum (l=>GMP);
$n = 1;
$n *= $_ for 2..21;
print "$n\n";

実行例
~ $ perl 13_313.pl
51090942171709440000

329:デフォルトの名無しさん
19/02/22 22:26:00.12 eQxt3fSm.net
>>313 JavaScript
console.log((f=n=>n?n*f(n-1):1)(21))

330:デフォルトの名無しさん
19/02/23 00:16:14.24 KCAwaSn8.net
>>313 Smalltalk-76
URLリンク(imgur.com)

331:デフォルトの名無しさん
19/02/23 00:27:48.65 khwKgkQE.net
>>313 python
#階乗1
import math
print('階乗1',math.factorial(21))
#階乗2
def f(n): return f(n - 1)*n if n > 1 else n
print('階乗2',f(21))
#階乗3
print('階乗3',(lambda x:f(21))( globals().update({"f": lambda n: n*f(n - 1) if n > 2 else n })))

332:デフォルトの名無しさん
19/02/23 01:14:20.46 9pS68leH.net
>>279
Kotlin script
最後のカンマを正規表現の文字列置換で and にしただけ。
println(listOf("abc", "def", "xyz").joinToString(", ").replace(",([^,]*)$".toRegex(), " and$1"))
出力
abc, def and xyz

333:デフォルトの名無しさん
19/02/23 01:19:01.99 CTQXI+x5.net
lispって組み込みで素数かどうか判定するやつ提供されてるのか、、、面白い!

334:デフォルトの名無しさん
19/02/23 02:10:15.51 9pS68leH.net
>>313
bc
n = 2; for (i = 3; i <= 21; i++) n*=i; n
出力
51090942171709440000

335:デフォルトの名無しさん
19/02/23 03:31:27.03 nkO3lkCA.net
>>313 dc
~$ echo 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 ********************p | dc
51090942171709440000

336:デフォルトの名無しさん
19/02/23 03:32:49.90 R2s6jSV3.net
bcのってjsでもそのまま動くんだな。どっちもc由来文法だからか…
for(i=s=1;i<22;)s*=i++;s

337:デフォルトの名無しさん
19/02/23 04:30:09.37 R2s6jSV3.net
>>326
恥ずかしながらdcコマンド知らなかった…いいねこれ。
~$ echo "$(seq -s' ' 1 21)$(printf '* %.0s' {1..20})p" | dc
51090942171709440000

338:デフォルトの名無しさん
19/02/23 08:05:10.28 xK8/Ze+A.net
>>313 Maxima
print(21!);

339:デフォルトの名無しさん
19/02/23 08:20:33.48 znXlogg7.net
>>313
;; Common Lisp
(loop for i from 1 to 21 for r = i then (* r i) finally (print r))

340:デフォルトの名無しさん
19/02/23 08:45:55.53 DQY5g4De.net
>>316
これは、本格的だな
ダイクストラ・A* みたいな、順位キュー(priority queue)を使わないと、いけないかも

341:デフォルトの名無しさん
19/02/23 09:18:55.19 IBS/n4EE.net
>>313
Smalltalk (Pharo 7)
21 factorial
==> 51090942171709440000

342:デフォルトの名無しさん
19/02/23 12:01:13.29 +GfRG2y6.net
>>316 Java
URLリンク(ideone.com)

343:デフォルトの名無しさん
19/02/23 12:26:35.61 DQY5g4De.net
>>313
Ruby
( 1..21 ).inject( 1, :* )

344:デフォルトの名無しさん
19/02/23 12:44:52.28 W0y17tlk.net
python3
標準ライブラリ内の数学関数の例
import math
print(math.factorial(21))
そうじゃない例
from functools import reduce
print(reduce(lambda x,y:x*y,range(1,22)))
ちょっと高度化したお題
素数階乗n#を実装せよ
ただし素数階乗とは与えられた整数n以下のすべての素数の積である

1#=1
3#=4#=6
5#=30

345:デフォルトの名無しさん
19/02/23 13:22:30.58 R2s6jSV3.net
例がちょっと意味分からない
1#=1
1以下の素数の積なのに1?
3#=4#=6
何これ?
5#=30
これだけ分かる

346:デフォルトの名無しさん
19/02/23 13:25:18.18 R2s6jSV3.net
あ、二番目分かりました。
一行目だけ分からない

347:デフォルトの名無しさん
19/02/23 13:28:26.15 +GfRG2y6.net
>>335 Java
URLリンク(ideone.com)

348:デフォルトの名無しさん
19/02/23 13:34:54.53 vMXU7Bcc.net
>>337
掛けるもののがないときは1として扱うのが普通だよ
0!とかΠの項数が0の時とか
ただこの出題者はそのへん理解してないだろうから解く気がしない

349:デフォルトの名無しさん
19/02/23 13:40:09.27 R2s6jSV3.net
>>339
ありがとう。
数学と同じとは限らないんだね。
1も素数としてやってみます。

350:デフォルトの名無しさん
19/02/23 13:47:45.99 +eBVT+rm.net
>>340
1を素数と見做すんじゃなく空積の1

351:デフォルトの名無しさん
19/02/23 13:53:12.99 W0y17tlk.net
というか数学でも0!=1!=1と定義されているのが普通だと思うし
高校でも大学でもそうじゃない問題を見たことがないのだが

352:デフォルトの名無しさん
19/02/23 13:53:38.08 vMXU7Bcc.net
>>340
いや、むしろ数学の世界での慣習なんですけど…

353:デフォルトの名無しさん
19/02/23 14:28:11.89 DQY5g4De.net
単位元(初期値)だろ。
足し算は0、掛け算は1 が、単位元
Ruby で、
( 1..21 ).inject( 1, :* )
1 が初期値で、:* で掛け算メソッドを渡している

354:デフォルトの名無しさん
19/02/23 15:02:20.95 R2s6jSV3.net
>>342
> ただし素数階乗とは与えられた整数n以下のすべての素数の積である
と書いてあるので、
「与えられた整数n」が1
のとき、
「与えられた整数n以下のすべての素数の積」
は、
「1以下のすべての素数の積」
となり、
1以下に素数はないのになんで例で答がが1になってるんだろう、と思った次第です。
お騒がせしました。

355:デフォルトの名無しさん
19/02/23 15:15:16.07 R2s6jSV3.net
できた
JavaScript
const prodPrimes = n => {
const primes = [1];
for (let m = n; m > 1; m--) {
let prime = 0;
for (let i = 2; i <= m - 1; i++) {
if (m % i === 0) prime = i;
}
primes.push(prime || m);
}
return [...new Set(primes)].reduce((acc, p) => acc * p);
}
console.log(prodPrimes(1)); //=> 1
console.log(prodPrimes(3)); //=> 6
console.log(prodPrimes(4)); //=> 6
console.log(prodPrimes(5)); //=> 30
今夜はPythonで>>316に挑戦したい

356:デフォルトの名無しさん
19/02/23 15:45:56.58 xK8/Ze+A.net
>>335 J
f =: 3 : 0
*/ 1 , I. 1 p: i. >:y
)
f@> 1 3 4 5 21
1 6 6 30 9699690

357:デフォルトの名無しさん
19/02/23 15:50:44.94 5fn4St+r.net
Jどこで覚えればいいの?
Effective J的な読みやすい書籍ないの?

358:デフォルトの名無しさん
19/02/23 16:01:13.49 BD+5EZ0V.net
>>313 Common Lisp
(defun ! (n)
  (apply #'* (loop for i from 1 upto n collect i)))
CL-USER> (! 21)
51090942171709440000
CL-USER> (! 0)
1
CL-USER>

359:デフォルトの名無しさん
19/02/23 16:18:41.85 Z/STDkD0.net
>>335 ruby
URLリンク(ideone.com)

360:デフォルトの名無しさん
19/02/23 17:50:18.29 oGmxRysL.net
>>321
これただのお絵描きやん
規制しろ!

361:デフォルトの名無しさん
19/02/23 18:00:12.84 5fn4St+r.net
でかいキノコやらしい…

362:デフォルトの名無しさん
19/02/23 18:14:04.27 2kPF298z.net
>>316 Perl5 Dijkstra法による最短経路探索 (priority queueを用いない実装)
URLリンク(ideone.com)

363:デフォルトの名無しさん
19/02/23 20:22:19.99 ejRNWGjN.net
>>316
python(pypy) URLリンク(ideone.com)
本線: キュー使用したダイクストラ (+ 経路復元)。
サンプル程度なら、ワーシャルフロイド(頂点^3)でも回る、と同方も追加。
さすがにpythonには少々きつく、pypyに逃げた。

364:デフォルトの名無しさん
19/02/24 00:49:59.19 ROsmA06r.net
>>354 pypy に逃げたという話は、その方がかなりスピードが早いからという事? どの位のスピード差になるんだろう?

365:デフォルトの名無しさん
19/02/24 01:37:12.40 jRfp9b62.net
>>313
Kotlin script
println("%.0f".format((2..21).map { it.toDouble() }.reduce { n1, n2 -> n1 * n2 }))

366:デフォルトの名無しさん
19/02/24 01:45:28.46 W3fm5ADB.net
>>355
何も変えずpython3で実行 URLリンク(ideone.com)
約6秒 vs 約0.2秒
まぁ、本当はpython3向けにもう少し治せそうだが

367:さまよえる蟻人間
19/02/24 05:55:10.72 xnYazQgz.net
お題: 3分タイマーを作れ。3分間待って、音を鳴らすか、画面に「BEEP!」と表示せよ。ただし、CPU時間を無駄に消費してはならない。

368:さまよえる蟻人間
19/02/24 06:09:09.10 xnYazQgz.net
お題: スリープソートを実装せよ。

369:さまよえる蟻人間
19/02/24 06:27:08.15 xnYazQgz.net
お題: 玉入れ競争のシミュレーションを作れ。1チームに玉50個で園児3人。2チームある。園児それぞれが10秒に玉1個投げる。
一回投げると、3秒後に1/2の確率で玉が入る。イベントのたびに「チーム#1の園児#1が玉を投げました」「チーム#2の園児#1の玉が入りました」などと表示する。

370:デフォルトの名無しさん
19/02/24 07:40:28.45 lq3Vey6S.net
>>313
@Mathematica
ライブラリ版
Factorial[21]
非ライブラリ版
Range[21] // Apply[Times, #] &

371:デフォルトの名無しさん
19/02/24 08:11:35.91 UKaroUbg.net
>>335
Smalltalk (Pharo 7)
[:n | (Integer primesUpTo: n+1) inject: 1 into: [:p :x | p * x]] value: 5
==> 30

372:デフォルトの名無しさん
19/02/24 08:39:28.32 lq3Vey6S.net
>>335
@Mathematica
Range[5] // Select[#, PrimeQ] & // Apply[Times, #] &

373:デフォルトの名無しさん
19/02/24 08:59:23.56 k3GW1oFG.net
お題
与えられた文字列を縦に表示する
入力
hello
出力
h
e
l
l
o

374:デフォルトの名無しさん
19/02/24 09:18:40.92 FkqnBGPg.net
>>364
ruby -e "'hello'.split('').each do |c| puts c end"

375:デフォルトの名無しさん
19/02/24 09:39:23.28 UNsYm68I.net
>>364 octave
URLリンク(ideone.com)

376:デフォルトの名無しさん
19/02/24 10:41:19.01 gbE7FXAb.net
>>364 Perl5
~ $ echo -n hello | perl -naF -E 'say for @F'
h
e
l
l
o

377:デフォルトの名無しさん
19/02/24 10:45:19.09 gbE7FXAb.net
>>358 Perl5
sleep 3*60;
print "BEEP!\n";

378:デフォルトの名無しさん
19/02/24 10:51:12.60 5XYYe3Vz.net
>>346
Pythonじゃ緩すぎだろw
Brainfu*kとかJで挑戦したいと言わないと
世のマゾヒスト達からマサカリ投げられるぞw

379:デフォルトの名無しさん
19/02/24 11:01:40.94 gbE7FXAb.net
>>359 Perl5
use List::Util shuffle;
@a = shuffle 1..5;
print "shuffled) @a\n";
use threads;
use threads::shared;
my @b: shared;
sub f {
&nbsp;&nbsp;my $n = shift;
&nbsp;&nbsp;sleep $n;
&nbsp;&nbsp;push @b, $n;
}
push @thr, threads->create(\&f, $_) for @a;
$_->join() for @thr;
print "sorted ) @b\n";
実行結果
~ $ perl 13_359.pl
shuffled) 5 3 1 2 4
sorted ) 1 2 3 4 5

380:デフォルトの名無しさん
19/02/24 11:04:08.38 gbE7FXAb.net
>>370 しまった、&nbsp;がそのまま表示されている…orz 全角スペースに置換して修正
>>359 Perl5
use List::Util shuffle;
@a = shuffle 1..5;
print "shuffled) @a\n";
use threads;
use threads::shared;
my @b: shared;
sub f {
 my $n = shift;
 sleep $n;
 push @b, $n;
}
push @thr, threads->create(\&f, $_) for @a;
$_->join() for @thr;
print "sorted ) @b\n";
実行結果
~ $ perl 13_359.pl
shuffled) 5 3 1 2 4
sorted ) 1 2 3 4 5

381:デフォルトの名無しさん
19/02/24 14:09:41.21 UKaroUbg.net
Smalltalk (Pharo 7)
String cr join: 'hello'
==> 'h
e
l
l
o'

382:デフォルトの名無しさん
19/02/24 14:14:37.55 lq3Vey6S.net
>>364
@Mathematica
"hello" // Characters // Riffle[#, "¥n"] & // StringJoin

383:デフォルトの名無しさん
19/02/24 14:37:33.43 ke/CY5a3.net
>>351
いや、21 factorialをSmalltalk-76で実際に計算したものですよ!
動画にしたほうがよかったですか?^^;

384:デフォルトの名無しさん
19/02/24 15:44:30.88 R6DRM9b9.net
>>335 Squeak Smalltalk (このコードは Pharo では動かない)
| fn |
fn := [:n | (Integer primesUpTo: n + n isPrime asBit) inject: 1 into: #*].
#(1 3 4 5) collect: fn. "=> #(1 6 6 30) "

385:デフォルトの名無しさん
19/02/24 15:56:11.32 R6DRM9b9.net
>>364 Squeak Smalltalk (同じく Pharo とは互換性がないコードで)
'hello' joinSeparatedBy: Character cr.
"= 'h
e
l
l
o' "

386:デフォルトの名無しさん
19/02/24 16:12:06.37 ke/CY5a3.net
>>359 Pharo/Squeak Smalltalk
| sleepsort |
sleepsort := [:arr |
| queue |
queue := SharedQueue new.
arr do: [:x | [(x * 2) milliSeconds asDelay wait. queue nextPut: x] fork].
(1 to: arr size) inject: #() into: [:acc :idx | acc, {queue next}]
].
sleepsort value: #(2 1 5 10 7 8 3 6 4 9)
"=> #(1 2 3 4 5 6 7 8 9 10) "

387:デフォルトの名無しさん
19/02/24 17:18:42.39 +6ZRRI/z.net
>>358 puthonista ( iPhone )
# iPhoneのシステムサウンドを使ってアラームを出す。
import sound,time
alarm = '/System/Library/Audio/UISounds/alarm.caf'
time.sleep(3*60)
id = sound.play_effect(alarm)

388:デフォルトの名無しさん
19/02/24 17:40:55.70 +6ZRRI/z.net
>>378 pythonista の間違い。

389:デフォルトの名無しさん
19/02/24 19:37:23.57 Wf3q+Rvy.net
>>359 Bash
#!/usr/bin/bash
N=5
IFS=$'\n'
a=(`seq $N | shuf | sed -e 's/\([0-9]\+\)/(sleep \1; echo \1 >> result)/'`)
IFS="$'\n'$'\t' "
[ -f ./result ] && rm ./result
for s in "${a[@]}"; do
 echo "$s"
 sh -c "${s}" &
done
wait
cat ./result

~ $ sh 13_359.sh
(sleep 2; echo 2 >> result)
(sleep 5; echo 5 >> result)
(sleep 4; echo 4 >> result)
(sleep 1; echo 1 >> result)
(sleep 3; echo 3 >> result)
1
2
3
4
5

390:デフォルトの名無しさん
19/02/25 02:16:17.34 VuzBCyor.net
>>364
Kotlin script
while (readLine()?.map { it }?.joinToString("\n")?.let { println(it); it } != null);

391:デフォルトの名無しさん
19/02/25 02:42:58.27 VuzBCyor.net
>>358
sh
sleep 180 ; echo 'BEEP!'

392:デフォルトの名無しさん
19/02/25 02:47:11.29 yxDnlxm5.net
>>364
ruby -e "'hello'.each_char do |c| puts(c) end"

393:さまよえる蟻人間
19/02/25 02:47:19.11 qxzw13Bf.net
お題: スリープと複数のスレッドを使って素数を10個求めよ。1つのスレッドは素数倍数のループを意味する。

394:さまよえる蟻人間
19/02/25 03:51:24.00 qxzw13Bf.net
>>384
ヒント: 一秒ごとにリセットするカウンターを使う。

395:デフォルトの名無しさん
19/02/25 09:19:02.25 KMrhrKmq.net
意味がわからん

396:デフォルトの名無しさん
19/02/25 10:35:33.17 OZaxYFd4.net
模範解答があるんでしょ
だからヒントを作れる
なら最初から正解を出せと

397:デフォルトの名無しさん
19/02/25 10:52:58.23 mBiroDnU.net
このコテうぜえから書き込み禁止にしろ

398:デフォルトの名無しさん
19/02/25 11:25:48.34 4jlXoier.net
スリープタイマに番号付けてON/OFF出来ればエラトステネスの篩で素数が出来る。

399:デフォルトの名無しさん
19/02/25 17:25:13.53 KMrhrKmq.net
わかんないからちょっとやってみて

400:デフォルトの名無しさん
19/02/25 18:50:50.58 IURODyYm.net
>>364 J
smoutput@>'hello'

401:デフォルトの名無しさん
19/02/25 19:00:24.37 mboQc3Dn.net
>>364 JavaScript
[...'hello'].forEach(c=>console.log(c))
または
for(let c of 'hello')console.log(c)
または
console.log([...'hello'].join`\n`)

402:デフォルトの名無しさん
19/02/26 01:01:25.98 ZoqutRDZ.net
>>364 Ruby
puts "Hello".split("")

403:デフォルトの名無しさん
19/02/26 02:14:00.16 Jyzj3K2Z.net
お題:OS名を出力する

404:デフォルトの名無しさん
19/02/26 02:51:12.85 lsok3PaS.net
>>394
Linux等、UNIX系OSの場合コマンドラインから以下を入力するだけで GNU/Linux 等と出てくるが、
どうしてもプログラムにしたいのならシェルスクリプトの中でこれだけ実行するようにしておけばよい。
uname -o

405:デフォルトの名無しさん
19/02/26 02:53:03.78 lsok3PaS.net
>>394
Windows のコマンドプロンプトの場合はこれ。ただしバージョンも一緒に出てくる。
ver
これもどうしてもプログラムにしたいならバッチファイルでこれだけ実行するようにしておけばよい。

406:デフォルトの名無しさん
19/02/26 07:52:39.56 xb9W0X9p.net
pythonista
import os,sys
print(os.uname() )
# posix.uname_result(sysname='Darwin', nodename='iPhoneXsMAX', release='18.2.0', version='Darwin Kernel Version 18.2.0: Wed Dec 19 20:28:53 PST 2018; root:xnu-4903.242.2~1/RELEASE_ARM64_T8020', machine='iPhone11,6')
print(os.uname()[0],os.uname()[4],sys.platform )
# Darwin iPhone11,6 ios
from distutils.util import get_platform
print(get_platform())
# darwin-18.2.0-iPhone11,6

407:デフォルトの名無しさん
19/02/26 08:17:26.80 N21l9DY8.net
>>394 J
osname =: 3 : 0
a =. 9 !: 12 y
if. a = 5 do. 'unix'
else. a = 6 do. 'windows'
else. do. 'other'
end.
)

408:デフォルトの名無しさん
19/02/26 10:23:47.93 E0EMtjG2.net
>>394
Perl5
print "$^O\n";

409:デフォルトの名無しさん
19/02/26 15:46:59.25 N21l9DY8.net
>>364 Lua
io.write((io.read("*a"):gsub(".","%0\n")))

410:デフォルトの名無しさん
19/02/26 15:54:05.05 gjK+vdjr.net
お題: 任意のn-オミノを全種類出力するプログラム

411:デフォルトの名無しさん
19/02/26 15:55:57.75 IBhh82RD.net
>>364
標準出力から与えられる場合
import sys
for x in sys.stdin.read() : print(x)
>>394と混合
import os
for x in os.getenv("OS"): print(x)

412:デフォルトの名無しさん
19/02/26 18:05:30.42 KX5s2hIr.net
>>384 Squeak/Pharo Smalltalk
| tick start primes sema sieveMaker processes ans |
tick := 1 second.
start := DateAndTime now.
primes := SharedQueue new.
sema := Semaphore new.
sieveMaker := [:x | [[(tick * x) asDelay wait. sema signal] repeat]].
processes := SharedQueue new.
tick asDelay wait.
processes nextPut: [
[ tick asDelay wait.
sema isSignaled ifFalse: [
| prime sieve |
prime := primes nextPut: (DateAndTime now - start / tick) asInteger.
sieve := sieveMaker value: prime.
processes nextPut: sieve fork
].
sema initSignals
] repeat
] fork.
ans := (1 to: 10) collect: [:idx | primes next].
1 to: processes size do: [:idx | processes next terminate].
ans "=> #(2 3 5 7 11 13 17 19 23 29) "

413:デフォルトの名無しさん
19/02/26 20:30:26.61 cNXsTeTJ.net
お題: (Aが真 または Bが真) ならば Cが真である。 であるをプログラムしなさい。

414:デフォルトの名無しさん
19/02/26 23:29:53.47 Tg4W+a2u.net
お題: 円の最大重複数を求めよ
例題 以下画像の場合、最大重複数は4です。
URLリンク(imgur.com)
円の重複数え方は、2つの円が重なっていたら、重なっている数は2とします。
また、円の重複判定の際、2つの円が円周上の1点のみで重なる場合、それらの円は重なっていないとします。
(理由は重複している面積は0だから。)

以下、本題。
画像のようなNo.0からNo.99までの100個の円があります。
これの円の最大重複数を整数で答えなさい。
URLリンク(imgur.com)
入力データ:
URLリンク(drive.google.com)
入力データはx座標 y座標 r(半径)の順で記述されたリストで、すべて実数です。
与えられる入力データは
-800.0 ≦ x ≦ 800.0
-800.0 ≦ y ≦ 800.0
100.0 ≦ r ≦ 400.0
の条件を満たします。

画像は自作、多分正しい。

415:デフォルトの名無しさん
19/02/27 11:44:25.97 wHsSBDML.net
お題: 自分自身のコードのコメントと非コメントを入れ替えたコードを出力するプログラムの
コードが自分自身のコメントの非コメントを入れ替えたプログラムのコードに
なっているプログラム

416:デフォルトの名無しさん
19/02/27 12:50:19.00 haTnnqie.net
S式かRPNで書いてくれややこしい

417:デフォルトの名無しさん
19/02/27 16:44:46.91 1o6M4rID.net
>>406
サンプルプリーズ

418:デフォルトの名無しさん
19/02/27 19:23:18.85 1o0vhyUy.net
お題
整数N(N>=6)を相異なる3つの整数(0<a<b<c)の和で表すことを考える。
数列(a,b,c)として考えられるもののうち、辞書式順序で最小のものと最大のものを求めよ
N=6
=> (1,2,3)/(1,2,3)
N=100
=> (1,2,97)/(32,33,35)

419:デフォルトの名無しさん
19/02/27 19:25:22.96 sZAuINQ9.net
お題
英今文字からなる文字列が与えられる。
各文字の大文字、小文字の組み合わせをすべて求める。
"ab"の場合
ab
aB
Ab
AB

420:デフォルトの名無しさん
19/02/27 19:42:57.27 haTnnqie.net
エーコン文字って何

421:デフォルトの名無しさん
19/02/27 19:49:50.41 fYEBa3GD.net
>>409
これって要するにcombinationのfirstとlastじゃねえの
next_combination()の一番最初と最後だよ

422:デフォルトの名無しさん
19/02/27 20:08:19.81 Tij8CMAh.net
>>409
こんな感じ?
URLリンク(paiza.io)

423:デフォルトの名無しさん
19/02/27 21:30:26.97 WT+xSYik.net
>>410 JavaScript
const acorn = s => {
for (let i=0; i < 2**s.length; i++) {
console.log([...s]
.reduce((acc, c, j) => acc+String.fromCharCode(c.charCodeAt() - 32 * i.toString(2).padStart(s.length, 0)[j]), '')
);
}
}
acorn('ab'); // の実行結果:
ab
aB
Ab
AB
acorn('ufo'); // の実行結果:
ufo
ufO
uFo
uFO
Ufo
UfO
UFo
UFO

424:デフォルトの名無しさん
19/02/28 04:32:37.78 oRFlldUh.net
>>410
Kotlin
URLリンク(paiza.io)

425:デフォルトの名無しさん
19/02/28 06:17:40.15 9oEuhY5c.net
>>410 Ruby
s = "ufo"
a = []
s.each_char do |c| a.push([c, c.upcase]) end
b = a[0]
a[1..-1].each do |e| b = b.product(e) end
b.each do |e| puts(e.join) end

426:デフォルトの名無しさん
19/02/28 08:43:33.13 qFD89Rtd.net
>>410 Squeak Smalltalk(#perform: を二変数ブロックにすればPharoでも動く)
| fn |
fn := [:str |
| ans |
ans := OrderedCollection new.
#(asLowercase asUppercase) asDigitsToPower: str size do


427:: [:comb | ans add: (str with: comb collect: #perform:) ]. ans asArray ]. fn value: 'ab'. "=> #('ab' 'aB' 'Ab' 'AB') " fn value: 'ufo'. "=> #('ufo' 'ufO' 'uFo' 'uFO' 'Ufo' 'UfO' 'UFo' 'UFO') "



428:デフォルトの名無しさん
19/02/28 09:14:29.16 vBJFBkkc.net
uppercaseメソッドのことスッカリ忘れてた>>414
const acorn = s => {
for (let i=0; i < 2 ** s.length; i++) {
console.log([...s]
.reduce((acc, c, j) => acc + (+i.toString(2).padStart(s.length, 0)[j] ? c.toUpperCase() : c), '')
);
}
}

429:デフォルトの名無しさん
19/02/28 10:31:36.11 PtOlEBM/.net
>>410 Ruby
def f(s)
a=s.chars.map{|c|[c,c.upcase]}
a.shift.product(*a).map(&:join)
end
p f("abc")
["abc", "abC", "aBc", "aBC", "Abc", "AbC", "ABc", "ABC"]

430:デフォルトの名無しさん
19/02/28 10:34:43.50 7nNuTdUM.net
簡単な問題にはものすごい勢いでこたえるのに、難しい問題には見てみぬふりをするのなwwww
難しい問題にはわかりませんだろ

431:デフォルトの名無しさん
19/02/28 13:46:39.00 oAFMMcaR.net
>>420
わからないとかやる気が起きないお題に対してわざわざわからないだのなんだのとみんなで書いてたらそういった書き込みでこのスレはすぐに一杯になるだろう。
そんなの無駄で邪魔だから一々書かんでスルーしてくれた方が良い。

432:デフォルトの名無しさん
19/02/28 14:39:02.28 7nNuTdUM.net
>>421
別の問題を答えるときに一緒にわかりませんと書けば1行消費するだけで済むだろ?
それも嫌なのか?

433:デフォルトの名無しさん
19/02/28 14:50:46.53 wVeu6yBT.net
>>422
で、もちろんお前自身はそれを実践しているんだよね?
全答しているなら別にいいんだけどさwww

434:デフォルトの名無しさん
19/02/28 15:02:45.97 7nNuTdUM.net
>>423
自分の都合のいい問題にしか答えないのはわがままとしかいいようがない

435:デフォルトの名無しさん
19/02/28 15:25:18.89 oAFMMcaR.net
>>422
たまたまわからない問題が連続したらわかりませんしか書けないだろうが。

436:デフォルトの名無しさん
19/02/28 15:26:43.33 oAFMMcaR.net
>>424
全ての問題に答える義務は誰にもない。

437:デフォルトの名無しさん
19/02/28 15:35:33.99 7nNuTdUM.net
>>426
自分に都合の悪いことは無かったことにするのは良くない
現実と向き合って自分の非を認めるべき

438:デフォルトの名無しさん
19/02/28 16:05:54.17 K7dGf2QC.net
>>427 まだ誰も回答していない問題があるが、君はわかりませんと言っていないね。 まだ考え中かな?

439:デフォルトの名無しさん
19/02/28 16:22:56.91 7nNuTdUM.net
>>1-1000
ほとんどの問題が難しくてわかりませんでした
これで満足か?wwww

440:デフォルトの名無しさん
19/02/28 17:35:56.73 swPpvqd8.net
小手先問題は得意

441:デフォルトの名無しさん
19/02/28 17:48:58.57 +01UgAVr.net
>>420
そんなの当たり前じゃん

442:デフォルトの名無しさん
19/02/28 17:51:09.02 +01UgAVr.net
出題する側のセンスも問われる

443:デフォルトの名無しさん
19/02/28 18:46:34.61 oAFMMcaR.net
>>427
便所の落


444:書きに時たま書かれる問題にうんこしながら答えを書くか書かないかで都合が良くなったり悪くなったりする者は居ない。



445:デフォルトの名無しさん
19/02/28 18:49:07.23 KtyAfxmO.net
しかし最近は便所の落書きは亡くなったに等しいな。
それにもかかわらず2chには便所の落書きが多い。
ここはまだましだけどな。

446:デフォルトの名無しさん
19/02/28 19:23:16.75 7nNuTdUM.net
公園の便所とかもちゃんと調べていってるのか?

447:デフォルトの名無しさん
19/02/28 19:52:08.39 KtyAfxmO.net
うちの近くの公園にはまずないな。
十人くらいしか遊べない公園も、数千人も遊べる公園も同じ。

448:デフォルトの名無しさん
19/02/28 20:27:06.93 oAFMMcaR.net
ああいうのもブロークンウィンドウズ理論通りに汚くなればなるほど余計に汚くなって尚且つその地区の犯罪率も上昇しちゃうんだろうな。

449:デフォルトの名無しさん
19/02/28 20:28:03.31 fDwT3kht.net
ID:7nNuTdUM が便所の落書きしかしてないのは分かる

450:デフォルトの名無しさん
19/02/28 20:59:59.90 KtyAfxmO.net
>>437 もちろんどんな公園にもバカな書き込みをする奴はいるだろう。 でも管理された公園では、次の日には修復されてるから書かれてたことにすら気づかなくて、誰も描かなくなる。
10年に1度くらいアホが便器を壊すなんて馬鹿なことをする事件もあるが、バカはどこにでもいるから仕方ない。

451:デフォルトの名無しさん
19/02/28 21:01:11.76 6vlCNc4e.net
もうちょっと気の利いた比喩がほしいね。

452:デフォルトの名無しさん
19/02/28 21:58:37.50 dSln4xk/.net
お題
四角形の羅列を、'#'と'.'を使った表現から罫線を使った表現に変換せよ
(例)等幅フォントで見てください
#

┌┬┐
├┼┤
└┴┘
#..###.####.
..#.....##.#
#.#....#.#.#
....#.#...#.
┌┬┐   ┌┬┬┬┬┬┐ ┌┬┬┬┬┬┬┬┐  
├┼┤   ├┼┼┼┼┼┤ ├┼┼┼┼┼┼┼┤  
└┴┘ ┌┬┼┴┴┴┴┴┘ └┴┼┼┼┼┼┴┼┬┐
    ├┼┤         ├┼┼┼┤ ├┼┤
┌┬┐ ├┼┤       ┌┬┼┴┼┼┤ ├┼┤
├┼┤ ├┼┤       ├┼┤ ├┼┤ ├┼┤
└┴┘ └┴┘ ┌┬┐ ┌┬┼┴┘ └┴┼┬┼┴┘
        ├┼┤ ├┼┤     ├┼┤  
        └┴┘ └┴┘     └┴┘  

453:デフォルトの名無しさん
19/02/28 22:09:31.89 DbAr3TBt.net
なにこれ?組み立てたらガンダムになるの?

454:デフォルトの名無しさん
19/02/28 22:33:12.22 lyW2+AsV.net
>>410 ruby
URLリンク(ideone.com)
f = -> s {[''].product(*s.chars.map {|c| [c, c.upcase]}).map(&:join)}
p %W(#{} a ab).map {|s| [s, f.(s)]}

[["", [""]], ["a", ["a", "A"]], ["ab", ["ab", "aB", "Ab", "AB"]]]

455:デフォルトの名無しさん
19/03/01 11:41:54.16 RkKCNcIA.net
>>411 下らんお題出すなよ。

456:デフォルトの名無しさん
19/03/01 14:53:48.06 ber2ILYj.net
>>444
それお題じゃない

457:デフォルトの名無しさん
19/03/01 16:58:28.80 KMRxw/mf.net
>>444 >>441 の間違い

458:デフォルトの名無しさん
19/03/01 17:54:01.28 nsJzseJ0.net
読み手の環境を変えさせるようなお題は不適切。

459:デフォルトの名無しさん
19/03/01 18:00:52.30 nsJzseJ0.net
というか >>441 の問題が意味不明。 スクリーンショットで示してみなよ。 俺はやらんだろうけど。

460:デフォルトの名無しさん
19/03/01 18:05:43.92 nsJzseJ0.net
>>441 なんかプログラムの練習の前に、日本語のおさらいをした方が良い人間が見受けられるな。
プログラムはチームワークだから、他人に仕様が正確に伝えられなければその時点でそのプロジェクトは失敗。
理解しやすい言葉で混乱が起きない様に示すのが当たり前では?
それができない人はプログラムで問題を出しなさいよ。

461:デフォルトの名無しさん
19/03/01 18:35:43.56 ber2ILYj.net
え?>>441はわかるよ。俺がエスパーなだけ?w

462:デフォルトの名無しさん
19/03/01 18:38:47.53 nQNJhNQv.net
俺もわかるけどわかりにくいと思った

463:デフォルトの名無しさん
19/03/01 19:02:55.70 KgoMIpD3.net
なぜ#1つで4つの4角形になるんた?
#を図形として見た場合一致しないと思うんだが

464:デフォルトの名無しさん
19/03/01 19:26:25.34 ber2ILYj.net
記号を罫線ので作った四角にしろってことでこの場合は#だったってだけでは?
なんだったら「田」から変換するようにすれば雰囲気がマッチして良いかも知れんな。気分の問題だが。

465:デフォルトの名無しさん
19/03/01 19:55:55.91 HvpZFnzz.net
>>441 Common Lisp
URLリンク(ideone.com)

466:デフォルトの名無しさん
19/03/02 01:29:28.31 og4HVKiE.net
>>441 でたらめだろ。 #が田形3マスになるのは良いとして、ドットが何で3マスになったり、1マスになってるんだよ。
#..###.####.
..#.....##.#
#.#....#.#.#
....#.#...#.
123456789いろはにほ123456789へと
┌┬┐   ┌┬┬┬┬┬┐ ┌┬┬┬┬┬┬┬┐  
├┼┤   ├┼┼┼┼┼┤ ├┼┼┼┼┼┼┼┤  
└┴┘ ┌┬┼┴┴┴┴┴┘ └┴┼┼┼┼┼┴┼┬┐
    ├┼┤         ├┼┼┼┤ ├┼┤
┌┬┐ ├┼┤       ┌┬┼┴┼┼┤ ├┼┤
├┼┤ ├┼┤       ├┼┤ ├┼┤ ├┼┤
└┴┘ └┴┘ ┌┬┐ ┌┬┼┴┘ └┴┼┬┼┴┘
        ├┼┤ ├┼┤     ├┼┤  
        └┴┘ └┴┘     └┴┘  

467:デフォルトの名無しさん
19/03/02 01:35:36.81 og4HVKiE.net
>>455 ごめん、罫線だから、0.5ずれてたのか。 しかしわかりにくい問題だな。 
もしかして自分の仕事を人に押し付けようとしていないか? 

468:デフォルトの名無しさん
19/03/02 03:13:42.38 xuPe2CJ9.net
>>441 Java
URLリンク(ideone.com)

469:デフォルトの名無しさん
19/03/02 11:02:58.51 H6jPx1zC.net
専用ブラウザじゃ等副フォントなんて選べないのがあるのを知らないのか?
BB2Cでは、英字は等幅が選べても、漢字にはフォント設定すらない。
Jane Doe View も MSゴシックを選択しても等幅にならない。
読み手の設定を変えさせる問題なんて2chにはふさわしくない。

470:デフォルトの名無しさん
19/03/02 11:17:11.62 xuPe2CJ9.net
俺は等幅で見てくれってあったら、設定を変えるんじゃなくてメモ帳にコピペして見るけどなー

471:デフォルトの名無しさん
19/03/02 11:41:44.38 og4HVKiE.net
>>459 そうやって見たけど面倒くさい。 やるならどこかのサイトに張り付けるか画像で出題すべきだろ。

472:デフォルトの名無しさん
19/03/02 11:42:35.75 jZcAiOx4.net
おれなら出題を諦めるなw

473:デフォルトの名無しさん
19/03/02 11:43:11.78 chZTsz9F.net
問題とかずに問題への文句ばかり垂れるってお前らにしては珍しいな
問題とけよクズども

474:デフォルトの名無しさん
19/03/02 11:55:57.51 xuPe2CJ9.net
>>462
お…おれはやってるよっ

475:デフォルトの名無しさん
19/03/02 11:55:57.58 jZcAiOx4.net
>>462
ぐ、ぐむーっ

476:デフォルトの名無しさん
19/03/02 11:56:34.18 xuPe2CJ9.net
>>463-464
この間0.07秒である

477:デフォルトの名無しさん
19/03/02 12:11:05.29 JYk2NVzi.net
この広い日本のどこかに同じ時に同じレスに反応してしまった二人がいる。
プログラミングの世界は奥が深いな……

478:デフォルトの名無しさん
19/03/02 13:30:29.30 og4HVKiE.net
>>466 良いお題を解いたね。

479:デフォルトの名無しさん
19/03/02 16:02:22.23 xke/YE7F.net
>>453
なるほどそういうことか

480:デフォルトの名無しさん
19/03/02 16:22:52.10 ZN4ZPl7z.net
>>457
なるほど
>>411 Common Lisp (>>457の移植)
URLリンク(ideone.com)
すごいなあ、こんなの全然思いつけない
文字を文字のままどうにかしようとしてぐちゃぐちゃになったのが>>454でした

481:デフォルトの名無しさん
19/03/02 16:25:46.70 ZN4ZPl7z.net
>>469
アンカミス
>>411>>441

482:デフォルトの名無しさん
19/03/02 16:49:20.52 R507/Kbo.net
全く面白くない。

483:デフォルトの名無しさん
19/03/02 20:23:12.84 bDAZjPpu.net
>>471
自分の好みじゃないと面白くないなんて小学生か。
黙ってスルーするか、自分が好みの問題だして盛り上げたらどうだ?

484:デフォルトの名無しさん
19/03/03 08:56:00.68 NMVimqZR.net
お題:2つの円が重なった時、重なった部分の面積を求めなさい。

485:デフォルトの名無しさん
19/03/03 13:28:27.28 TjAANgsg.net
含まれている場合も考えなきゃならんな…

486:デフォルトの名無しさん
19/03/03 17:19:17.78 e91Lt8pq.net
>>473
わかりません。

487:さまよえる蟻人間
19/03/03 17:21:20.86 KlFuUPR7.net
距離と半径くらい指定しろよ。

488:デフォルトの名無しさん
19/03/03 17:48:01.52 EHdvkNdx.net
>>475
分からない人は答えなくていいし黙って見ていればいいよ

489:デフォルトの名無しさん
19/03/03 18:41:09.09 TjAANgsg.net
>>476
任意に対応すべきだろJK

490:デフォルトの名無しさん
19/03/03 18:55:07.69 TjAANgsg.net
>>476
URLリンク(detail.chiebukuro.yahoo.co.jp)
このサイトは具体的な座標と半径について手計算で解いた例だけど、
座標と半径を一般化して連立二次方程式を解いて交点を求め、
三角形と円弧の面積の差を求めれば重なり合う2円弧の面積が算出できる。
小さい円の中心が大きい円の内側にある場合は、
三角形と円弧の面積の差の求め方を逆にする。
小さい円が大きい円の完全に内側にある場合は、小さい円の面積とする。
x,y座標で式を立てるより、曲座標で表して三角関数使うほうが楽かもしれない。
これをプログラム化すれば良い、筈【だと思う。
以上。

491:デフォルトの名無しさん
19/03/03 19:21:30.98 yjYtaUkW.net
2つの中心を通る線をX軸としてX軸と交わる点の端っこを原点して円の交点と半径で
円一個ずつ積分して面積を出して合わせるしかないだろ。

492:デフォルトの名無しさん
19/03/03 19:28:30.68 r5nrErEk.net
半径と中心間の距離から円の交点間の距離(=弦)がわかるから
正弦定理とarcsinで中心角を求めればあとはただの掛け算と引き算だろ

493:デフォルトの名無しさん
19/03/03 19:33:55.32 TjAANgsg.net
>>481
二次方程式解かないで済みそうだな

494:デフォルトの名無しさん
19/03/03 20:19:21.58 ot+8d2KD.net
それが一番シンプルそうだな

495:デフォルトの名無しさん
19/03/03 20:23:33.79 8CruhG40.net
プログラム的には円同士の位置関係で場合分けして、あとは計算一発だから二次方程式をいやがる必要もなくない?

496:デフォルトの名無しさん
19/03/03 21:06:33.77 XGcp5yLx.net
>>473 C
URLリンク(ideone.com)
画像も参照。
URLリンク(imgur.com)

497:デフォルトの名無しさん
19/03/03 22:28:24.90 XGcp5yLx.net
>>485
条件分岐が間違っていたので修正。おそらくあってると思う
URLリンク(ideone.com)
余弦定理を使う方法しか思いつかなかったから、それでやった

498:デフォルトの名無しさん
19/03/04 01:00:55.59 q2TdavLp.net


499:デフォルトの名無しさん
19/03/04 07:57:27.52 7HyVHUwF.net
お題:不等間隔で与えられる関数表から1次とか2次で補間をしなさい。

500:デフォルトの名無しさん
19/03/04 11:04:59.42 9wLIIjqc.net
お題: 2つの任意の英数字からなる芸術的なアスキーアートを出力しろ

501:デフォルトの名無しさん
19/03/04 11:07:25.78 9wLIIjqc.net
お題: アスキーアートで芸術的な直線を出力しろ

502:デフォルトの名無しさん
19/03/04 12:15:59.00 9wLIIjqc.net
お題: アスキーアートで芸術的な木のアスキーアートを出力しろ

503:デフォルトの名無しさん
19/03/04 13:00:20.39 enTqHBl5.net
お題: このバカをどうにかしろ

504:デフォルトの名無しさん
19/03/04 13:06:53.32 mOK2oiAk.net
>>489>>490>>491
どうぞ……
スレリンク(motenai板)

505:デフォルトの名無しさん
19/03/04 18:59:01.31 R4eMfGlu.net
お題 全角空白区切のCSV
カレントディレクトリにあるCSVファイルを読み込み、指定されたカラム名のデータの合計を求める。
1レコード目にはカラム名がある。
区切り記号は全角空白とする。 データの数字は全てASCII数字だとする。
CSVファイル内のデータ例
カラム1 カラム2 カラム3 カラム4
1,0 2.0 3.0 4.0
2.1 3.1 4.1 5.1
------データ例終わり
出題 カラム3 の合計を求めよ。
解答例 カラム3 = 7.1

506:さまよえる蟻人間
19/03/04 19:01:33.11 wk4fvbO+.net
カンマとピリオド間違えたら死ぬぞ。気を付けれ。

507:デフォルトの名無しさん
19/03/04 19:03:32.42 rdjSvZ2C.net
>>494 間違い
データに 1,0 という間違いがあるけど問題ないだろ。
ついでに、この状態でカラム1の様にデータフォーマットが違う場合には正しくデータエラーを報告せよ。

508:さまよえる蟻人間
19/03/04 19:10:24.71 wk4fvbO+.net
日本やアメリカでは、ピリオドは文の終わりや小数点として使う。
カンマは文章途中の区切りや複数の項目の区切りに使う。

509:デフォルトの名無しさん
19/03/04 19:12:27.62 rdjSvZ2C.net
>>497 問題に関係ないことを言うなよ。

510:デフォルトの名無しさん
19/03/04 19:12:28.56 TpCWsYE8.net
>>494
awk。-F オプションで指定しているのが全角スペースね。OSやシェルの違いによってはシングルクオーテーションではなくダブルクォーテーションにする必要がある。入力はファイル名指定するか標準入力から読ませる。
awk -F' ' 'BEGIN{getline}{n+=$3}END{print n}'

511:デフォルトの名無しさん
19/03/04 19:15:20.56 TpCWsYE8.net
awkはデータフォーマットがおかしくても適当に0ってことにしちゃったりしてエラーにならんのでデータ異常まで調べたいなら他の言語使った方が良いだろうな。

512:デフォルトの名無しさん
19/03/04 19:16:48.51 rdjSvZ2C.net
>>499 カラム名を指定してよ。カラム名は指定された名前であり固定ではない。

513:デフォルトの名無しさん
19/03/04 19:22:30.38 TpCWsYE8.net
>>501
あー。じゃあ後で他の言語で作るか。

514:デフォルトの名無しさん
19/03/04 19:42:58.86 0eAiVVhP.net
お題:端末の横幅が与えられるので(*´ω`*)を端末の中央に表示せよ

515:デフォルトの名無しさん
19/03/04 20:14:28.23 /O719wMt.net
このバカどうにかしろ
あとチンポジ代わりに直せ

516:デフォルトの名無しさん
19/03/04 21:14:51.56 x+RRe849.net
>>503 Ruby
w = 120
printf("%s%s\n", " " * ((w - 10) / 2), "(*´ω`*)")

517:デフォルトの名無しさん
19/03/05 01:17:51.32 irQmeRjm.net
茨木 保健
貴老沢 風花
鬼塚 海鈴
鬼埜 可恋
儀賀沢 一愛
嫌沢 宮子
己問 彩姫
寺沢 七彩
寿川 瑞紀
樹木山 美咲
宗田 純
女ケ沢 美優
女ケ澤 飛鳥
女鹿沢 祐奈

518:デフォルトの名無しさん
19/03/05 03:28:01.02 CZi591h7.net
>>494
Ruby で
require 'csv'
# 全角空白区切りで、ヘッダー有り
options = { :headers => true, :col_sep => " " }
# CSV ファイルを、1行ずつ処理する
puts CSV.foreach( "input.csv", options )
.map{ |row| row[ 2 ].to_f }.inject( :+ )

519:デフォルトの名無しさん
19/03/05 07:59:44.57 0SMIqw+w.net
>>507 カラム名サーチが入っていないみたいだけど。
例えば ”カラム3” と言うカラム名が指定されたとして書いてみて。3列目と言うことじゃないからね。
カラム4 カラム2 カラム1 カラム3
かも知れない。

520:デフォルトの名無しさん
19/03/05 08:10:31.80 utDz1VTj.net
変な流れが続いていたから、バカっぽいお題をいくつか出した後に一見まともそうなお題のふりして宿題をやってもらおうという腹かと勘ぐってしまう。

521:デフォルトの名無しさん
19/03/05 09:08:51.84 BKNc7BtY.net
>>509
お前の思いちゃんと伝わったよ
問題解けクズ

522:デフォルトの名無しさん
19/03/05 09:12:40.32 DIrFqE8l.net
>>510
宿題は自分でやれカス

523:デフォルトの名無しさん
19/03/05 09:42:11.28 BKNc7BtY.net
>>511
お前の宿題だが

524:デフォルトの名無しさん
19/03/05 09:45:18.09 DIrFqE8l.net
死ね

525:デフォルトの名無しさん
19/03/05 11:33:12.77 7U5lBe0C.net
だから言語制限なしで通すとやっぱネタギレじゃん

526:デフォルトの名無しさん
19/03/05 12:09:12.75 KQ31R4yU.net
お題1: テトリスタイリング問題を解決しろ
ここでテトリスタイリング問とは任意の図形のアスキーアートを入力すると
全てのテトリスのブロックに隣接するブロックの種類が異なるようにタイリングしたアスキーアートを出力する
問題である
お題2: テトリスタイリングNブロックス問題を解決しろ
ここでこの問題は上の問題でブロックの種類の数Nを最小にする問題である
例:
入力:
****
****
****
出力:
1002
1002
1122

527:デフォルトの名無しさん
19/03/05 12:21:13.18 WJ/srpVX.net
>>515
これじゃダメなのか?
1011
1001
1101

528:デフォルトの名無しさん
19/03/05 12:23:52.27 KQ31R4yU.net
>>516
それでもええで

529:デフォルトの名無しさん
19/03/05 23:56:55.78 0SMIqw+w.net
>>515 ボクちゃんわかんない。
何で縦の列は1とか同じ種類が許されてるの? なんか上から下へとか言う動きを前提にしてるの?

530:デフォルトの名無しさん
19/03/06 01:19:54.96 tTGpH/KM.net
>>518
URLリンク(upload.wikimedia.org)
片面テトロミノ(画像参照)を回転させて指定の形に詰め込め
ただし、同じテトロミノを隣接させてはいけない。 ってことじゃろ
515の出力例でいうと、
0は画像の水色、1は黄色、2は紫色の奴ってこと

531:デフォルトの名無しさん
19/03/06 08:04:05.66 bBth0ZZS.net
>>515 その出力例だと、タイルの種類は3種類じゃないの?
1と2を同じだとみなせば、同じ種類と隣接するからダメだろ?
>>516 だと完全に2種類だが。

532:デフォルトの名無しさん
19/03/06 10:13:54.30 Z0o65K/P.net
>>520
>>519

533:デフォルトの名無しさん
19/03/06 11:44:29.70 cM1JcwP7.net
>>521
だからこそ出題例>>515は3種類のブロックを使ってるんだろ? 
2種類で出来ていないから問2に対しては不正解では?

534:デフォルトの名無しさん
19/03/06 11:58:00.89 OdnfdSEH.net
>>522
例がお題2とお題1両方の答えになっているなんてことはどこにも書いてないだろ
例を見ればだれでもどのお題の答えかわかるだろ

535:デフォルトの名無しさん
19/03/06 12:34:51.62 cM1JcwP7.net
>>523 誰でも解ると言うのは言い過ぎ。 何が正しいのかを示すのが例なんだし。
なんにせよお題の出し方が独断すぎるよ。
テトリスタイリングなんて知らない人にとっては説明不足だし
>>519 の説明があって初めて平面上の回転図形は同じとみなし、裏表の回転は許さないと解るけど。
それでも519のブロックは4個の組み合わせのブロックしかないが、どうして4個固定なのか? 最大辺の個数を単位とするのか?
この場合は5個固定?
***
***
***
***
***

536:デフォルトの名無しさん
19/03/06 12:44:07.40 OdnfdSEH.net
>>524
釣りだろ?
本当にわからないのなら病院に行くレベルw

537:516
19/03/06 12:54:30.31 l


538:TLUMkgQ.net



539:デフォルトの名無しさん
19/03/06 12:57:33.38 FCOQEIBI.net
わかっても今のところ解く気は起きない

540:デフォルトの名無しさん
19/03/06 12:58:29.33 Z0o65K/P.net
>>522
あなた、前に書き込んでた中卒の人?

541:デフォルトの名無しさん
19/03/06 13:01:54.00 uLgh04dF.net
>>199>>441が理解できなかったってやつと同一人物なのは分かる

542:デフォルトの名無しさん
19/03/06 13:08:31.07 URj2ByGk.net
>>524
>どうして4個固定なのか? 
テトリスってゲームがあってそれに出てくるブロックが>>519
>>515
>全てのテトリスのブロック
URLリンク(ja.wikipedia.org)
テトリス
>4つの正方形を組み合わせて作られた、片面型テトロミノ状のブロックピース
>(以下の7種、本作ではこれらを「テトリミノ」(Tetrimino)と呼ぶ)
>がフィールド上方からランダムに1種類ずつ落下してくる。

543:デフォルトの名無しさん
19/03/06 13:09:30.85 f/NWPYTA.net
>>441は分からんかった
問題を考えさせてほしい
問題文を考えさせるんじゃなく

544:デフォルトの名無しさん
19/03/06 13:50:33.24 cM1JcwP7.net
>>530 片面テトリミノの基本は4個だけどこれを使う前提なら、3x5とか4の倍数の面積にならない図形は解けないよね。
聞いてるのは3x5はどうするのと言う話。

545:デフォルトの名無しさん
19/03/06 14:02:02.94 URj2ByGk.net
>>532
「解けない」でいいんだろ

546:デフォルトの名無しさん
19/03/06 16:31:44.46 OdnfdSEH.net
>>532
この問題は君の思ってる小学校の算数とは違うんだよ

547:デフォルトの名無しさん
19/03/06 18:11:04.36 +4ROOaYr.net
問題の難しさと、問題の曖昧さは関係ないけどな。
難しい問題の条件が曖昧だと鼻から解く気になれない。

548:デフォルトの名無しさん
19/03/06 18:18:58.86 OdnfdSEH.net
考えればわかることまでいちいち書かないのは常識
それを曖昧とは言わない

549:デフォルトの名無しさん
19/03/06 19:39:35.98 RlXQ9XDp.net
数学者は常識人

550:デフォルトの名無しさん
19/03/06 19:40:44.95 L0cGL7i+.net
当たり前のことでもいちいち全部書くのがこの業界の常識だが

551:デフォルトの名無しさん
19/03/06 19:57:47.15 2Etc0l5z.net
仕様書をやりとりしてみれば如何に他人に解らせることが難しいか理解できると思うけどな。 多分出題者は余り経験していないんだろう。
仕様をいい加減で進めても後で痛い目を見るのは自分。
(最初は完全でないのは当然、打ち合わせで抜けを詰めていけば良い話)

552:デフォルトの名無しさん
19/03/06 20:41:28.07 OdnfdSEH.net
>>538
テトリスがなにかなんて自分でググって調べればいいことだろ
そんなことまで面倒みれない

553:デフォルトの名無しさん
19/03/06 20:51:34.66 Xwbjxxrc.net
お題の面白さに共感しなければ趣味だから解かない。

554:デフォルトの名無しさん
19/03/06 21:21:50.81 FCOQEIBI.net
そういや安かったのでPS4用のテトリスを何気なく買って連日やってたら慣れてきちゃってレベル15の40ライン消しが楽にできるようになってしまったなあ。
今さらテトリスうまくなってどうすんだ俺w

555:デフォルトの名無しさん
19/03/07 03:21:20.86 QS9GxyX4.net
>>494
Kotlin
URLリンク(paiza.io)
入力はカラム名の行が最初にあり、次の行からはデータが続き「# カラム名」の行で終わり、
そこで指定したカラム名の列の合計値が出力される。
エラーはデータが数値として解釈できない文字列、項目数がカラム名の数と一致しない行、
同一カラム名があった場合に出る。一度エラーになると # の行まで読み飛ばされる。

556:デフォルトの名無しさん
19/03/07 17:22:14.11 bbRk4M8e.net
お題
R言語にandmaginsとうう関数がある。
m行n列の行列を渡すと行ごとの合計と列ごとの合計を追加して
(m+1)行(n+1)列の行列を返す。
同様の関数をつくる。
1 2 3
4 5 6

1 2 3 6
4 5 6 15
5 7 9 21
となる

557:デフォルトの名無しさん
19/03/07 19:35:31.07 gyMjU+f2.net
>>544
C++
URLリンク(ideone.com)

558:デフォルトの名無しさん
19/03/07 23:35:37.41 bSfNx8gZ.net
>>544 Squeak/Pharo Smalltalk
| fn |
fn := [:arr | arr, {arr sum} collect: [:row | row, {row sum}]].
fn value: #(
(1 2 3)
(4 5 6)
).
"=> #(
(1 2 3 6)
(4 5 6 15)
(5 7 9 21)
) "

559:デフォルトの名無しさん
19/03/08 00:35:43.62 N66/0TP0.net
大文字小文字だけが異なる、ファイル名を見つける
入力
aB.txt
Ab.txt
xx
cd
cD
CD
出力
aB.txt : Ab.txt
cd : cD : CD

560:デフォルトの名無しさん
19/03/08 04:41:32.92 JrzgN4oN.net
#!/bin/sh
infile="aB.txt Ab.txt xx cd cD CD"
for f in ${infile}; do
echo $f $(echo $f | tr [:lower:] [:upper:])
done | awk '
{ save[$2] = save[$2] " : " $1 }
END {
for (i in save) print save[i]
}' | sed 's/^ : //' | sort | awk 'NF > 1 {print}'

561:デフォルトの名無しさん
19/03/08 09:23:36.88 iTwHpxzE.net
>>547 Squeak Smalltalk
| fn |
fn := [:arr |
| groups |
groups := arr groupBy: #asLowercase having: [:group | group size > 1].
groups values collect: #asArray
].
fn value: #('aB.txt' 'Ab.txt' 'xx' 'cd' 'cD' 'CD').
"=> #(('cd' 'cD' 'CD') ('aB.txt' 'Ab.txt')) "

562:デフォルトの名無しさん
19/03/08 09:47:13.60 pv8HlopZ.net
>>547
それはWindowsとかでは試せないのでは?ディレクトリが違うならできるだろうけど。
(まあWindowsでもWSLでUbuntuとか動かせばできるが)

563:547
19/03/08 11:48:57.26 N66/0TP0.net
同一フォルダ内での、大文字小文字だけが異なるファイル名は、Windows では作れないけど、
Linux では作れてしまうので、それをチェックする目的です
Linuxでも、こういうファイル名は作らない方がよい

564:デフォルトの名無しさん
19/03/08 16:35:28.24 VhFMuL/G.net
>>551
死ね

565:デフォルトの名無しさん
19/03/08 17:12:36.80 qP6cz7Aj.net
時々死ねと言うやついるけど同じやつなのか? いい加減で大人になれ。

566:デフォルトの名無しさん
19/03/08 18:19:49.57 aY8HpC9F.net
イ㌔

567:デフォルトの名無しさん
19/03/08 18:42:00.27 eAQ60MzF.net
お題: 1=2を証明しろ
証明出来ないは無しで

568:デフォルトの名無しさん
19/03/08 18:49:56.10 qP6cz7Aj.net
>>555 それは言語によるんじゃないの? 論理的にはあり得ない。
一般的には、0がFalse でそれ以外がTrueと言うだけでは?

569:さまよえる蟻人間
19/03/08 18:58:42.07 8R2ZaOuQ.net
整数のオーバーフロー使えば楽に証明できるけど、それはもはや基礎数学の整数じゃないし。

570:デフォルトの名無しさん
19/03/08 19:14:26.55 2owB+W9f.net
>>544 octave
URLリンク(ideone.com)

571:デフォルトの名無しさん
19/03/08 19:17:05.52 ru9qZk5w.net
お題:
N人の人物がある部屋に出入りしています。
i番目の人は時刻a[i]に入室し、時刻b[i]に退室します。(1 <= a[i] < b[i])
すべての人は入退室時に以下の通り行動します。
・入室時に、照明がOFFならば照明をONにする。
・退室時に、室内に自分以外に誰もいなければ照明をOFFにする。
最初は照明がOFFになっていて室内には誰もいません。
複数の人物が同時に入退室することはないものとします。
照明がONになっている時間の合計を求めなさい。
a={1,3,5}
b={2,4,6}
=> 3
a={1,2}
b={5,6}
=> 5
a={100,1,2}
b={105,3,4}
=> 8

572:デフォルトの名無しさん
19/03/08 20:42:26.76 q/o0JPH8.net
>>364
brainf*ck
>++++++++++<+[,.>.<]

573:デフォルトの名無しさん
19/03/08 20:42:27.70 AweN/YnK.net
★ぁりが㌧ヾ(。・ω・。)ノぁりが㌧★

574:デフォルトの名無しさん
19/03/08 20:54:42.10 2owB+W9f.net
>>559 ruby
URLリンク(ideone.com)

575:デフォルトの名無しさん
19/03/08 21:22:26.01 QMcItLTV.net
>>559 Common Lisp
URLリンク(ideone.com)

576:デフォルトの名無しさん
19/03/08 21:55:03.73 2owB+W9f.net
>>547 ruby
URLリンク(ideone.com)

577:デフォルトの名無しさん
19/03/09 08:53:56.42 irV15TzB.net
>>410 J
f =: 3 : 0
 > , { ;/(,. toupper) y
)

578:562
19/03/09 09:29:27.51 8CAUa/TL.net
>>559 ruby
すこーしすっきり
f = ->a, b {a.zip(b).map {|c| (c.first...c.last).to_a}.inject(:|).size}

f = ->a, b {a.zip(b).map {|c, d| [*c...d]}.inject(:|).size}

579:547
19/03/09 10:58:09.02 GVs3bbIF.net
>>564
たった2行とは、素晴らしい!
JavaScript(JS)とか、関数型プログラミングだね
f(&:upcase), f(&:chomp)
関数型でも、こういうように呼ぶ関数名が明確にわかる点では、Ruby はJS をしのぐ!
漏れが以下で作ったけど、手続き型の処理で、10行以上も掛かったw
情けない
Ruby 初心者スレッド Part 65
スレリンク(tech板:234番)

580:デフォルトの名無しさん
19/03/09 12:51:20.88 C6v7oEvs.net
クソみてーな恣意的な記号使いはperl譲りだな

581:デフォルトの名無しさん
19/03/09 13:17:28.26 capoU8RA.net
アンダースコア_はprologの時点であるんじゃね
それに記号なら恣意的だろ

582:デフォルトの名無しさん
19/03/09 19:25:50.03 hBO8FWAE.net
>>544
Haskell
main = mapM_ print $ newxss ++ [zipWith (+) (newxss!!0) (newxss!!1)]
xss = [[1,2,3],[4,5,6]]
newxss = map (\xs -> xs ++ [sum xs]) xss

583:デフォルトの名無しさん
19/03/09 19:49:27.50 R3sqYFdd.net
お題:文字列と数値nが与えられるのでn番目の文字とそれ以外の文字を上下にスライドさせて表示する
入力
abc 2
出力
*b*
a*c

584:デフォルトの名無しさん
19/03/09 19:57:53.65 C6v7oEvs.net
お題か出力のどっちかが間違っている
日本語勉強した方がいい

585:デフォルトの名無しさん
19/03/09 19:58:57.39 hBO8FWAE.net
>>544,570
任意の数の行列だったか。。。
修正
main = mapM_ print $ newxss ++ [lastxs]
xss = [[1,2,3],[4,5,6],[7,8,9]]
newxss = map (\xs -> xs ++ [sum xs]) xss
lastxs = map sum $ retsu newxss
retsu ([]:xs) = []
retsu xss = map head xss:retsu (map tail xss)

586:デフォルトの名無しさん
19/03/09 20:10:49.99 0OOZ8KrR.net
>>557
オーバーフローは数学ですらないだろ。こっちは数学。

宇宙を支えていたのは、驚異のたし算だった
私がこのたし算を知ったのは20歳のころでした。その衝撃は、私の運命を変えるまでの威力を持っていました。
私の大学は2年生で所属学科を決めるシステムになっており、私はアインシュタインに憧れて物理学科に進もうとしていました。
その私が出会ったのがラマヌジャン(1887-1920)です。彼が描いた2つの絵を見た瞬間、私の中で何かが変わりました。
URLリンク(jbpress.ismedia.jp)
URLリンク(jbpress.ismedia.jp)

587:さまよえる蟻人間
19/03/09 20:18:26.71 XY+I2Bbh.net
>>574
応用数学ではオーバーフローも数学の一種。

588:デフォルトの名無しさん
19/03/09 20:25:11.72 hBO8FWAE.net
>>364
Haskell
main = mapM_ (\c -> putStrLn $ c:[]) "hello"

589:デフォルトの名無しさん
19/03/09 20:38:18.94 1xJckQ5D.net
>>544
kotlin
URLリンク(paiza.io)
Double型でやったら出力に小数点以下が付加されたが値として間違ってるわけではないのでそのままにする。

590:デフォルトの名無しさん
19/03/10 01:41:18.58 5A3UW8N7.net
>>544 Python
import numpy as np
# 何行何列でも良い
ar =[
[1,2,3,4],
[4,5,6,7],
[7,8,9,10]
]
#縦に足して行を追加
r=np.vstack((ar,np.sum(ar,axis=0)))
#横に足して列を追加
ans=np.hstack((r,np.sum(r,axis=1).reshape((-1,1))))
print('ans=\n',ans)
'''
ans=
[[ 1 2 3 4 10]
[ 4 5 6 7 22]
[ 7 8 9 10 34]
[12 15 18 21 66]]
'''

591:デフォルトの名無しさん
19/03/10 03:08:27.84 LqrBe0vy.net
>>571 ruby
s = "abc"
n = 2
t = "*" * s.length
t[n - 1] = s[n - 1]
u = s.clone
u[n - 1] = "*"
puts(t, u)

592:デフォルトの名無しさん
19/03/10 11:41:34.27 x4ZRCWyR7
>>544,573

n = 3

xss = (take n.iterate (map (+ n))) [1..n]

もっと大きな行列渡したくて、n*nのリスト(行列)作る関数作った。
こういうのって、手続き型と宣言型で違いが顕著だと思った。

593:デフォルトの名無しさん
19/03/10 11:57:40.70 e6SI07pl.net
>>571 J
f =: 4 : 0
|: ((,. -.) (<:x) = i. # y ) {"1 '*' ,. y
)
2 f 'abc'
*b*
a*c


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch