[過去ログ] プログラミングのお題スレ Part20 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
654: 2022/08/07(日)20:58 ID:xO94aiKw(3/3) AAS
>>648
perl5 # sub squash0 を>653 で書き替えた
外部リンク:paiza.io
655
(1): 2022/08/07(日)22:19 ID:UmcKtz1r(1/2) AAS
>>648 octave
外部リンク:ideone.com
function s = f(a)
c = diff(find([1 diff(a) 1]));
e = cumsum(c);
b = e - c + 1;
n = arrayfun(@(i) a(i), e);
[~, i] = max(c.*(n == 0));
s = arrayfun(@(n) {int2str(n)}, a);
if (1 < c(i))
省4
656: 655 2022/08/07(日)23:28 ID:UmcKtz1r(2/2) AAS
結果同じだけど若干の整理可能だった

n = arrayfun(@(i) a(i), e);
[~, i] = max(c.*(n == 0));

[~, i] = max(c.*(a(e) == 0));
657: 96 2022/08/08(月)01:54 ID:Fkng8CYp(1) AAS
>>648 Perl5

use List::Util 'max';
for (<DATA>) {
 %h = map{length($_) => $_} /(,?0(?:,0)+,?)/g;
 $n = max keys %h;
 chomp($i = $_);
 s/$h{$n}/::/ if $n;
 s/,/:/g;
 print "$i => $_";
}
省16
658: 2022/08/08(月)18:20 ID:911TGIju(1) AAS
>>648
Common Lisp 外部リンク:ideone.com
JavaScript 外部リンク:ideone.com
659: 2022/08/10(水)20:35 ID:xa8ST9bT(1/2) AAS
>>648 ocaml
外部リンク:ideone.com
660: 2022/08/10(水)21:08 ID:xa8ST9bT(2/2) AAS
>>648 octave
外部リンク:ideone.com
・[1, 1, 1, 1, 1, 1, 1, 1]のとき正しくなかったのを修正
661
(2): 2022/08/11(木)15:24 ID:/k5aJ7yS(1) AAS
>>648
Kotlin
外部リンク:paiza.io

できたことはできたが、なんかもっと良いやり方がありそうな気もする。
662: 2022/08/11(木)15:46 ID:wxhIEZ4F(1/2) AAS
>>648
敢えて正規表現使わずKotlinで。ややこしかったわ
外部リンク:ideone.com
663: 2022/08/11(木)15:51 ID:wxhIEZ4F(2/2) AAS
>>661
別の解き方が見れておもろい
664: 2022/08/11(木)22:42 ID:lr7eXs7b(1) AAS
>>648 java
外部リンク:ideone.com
665: 661 2022/08/12(金)00:33 ID:DNG+vRxr(1) AAS
全部0の時に :: にならなかったので>>661はちょっと修正した。
666
(9): 2022/08/13(土)14:28 ID:JbrEzaSr(1) AAS
お題
1~37からランダムに重複なく7つの数を選び出して小さい順にソートしてください
それを5つ出力してください


[2, 4, 9, 13, 20, 29, 36]
[1, 4, 12, 13, 15, 20, 33]
[1, 3, 5, 7, 11, 20, 24]
[3, 7, 8, 21, 27, 33, 34]
[1, 2, 14, 23, 26, 35, 36]
667: 2022/08/13(土)14:31 ID:JPhXlbrB(1) AAS
>>666 Ruby
[*1..37].sample(7).sort

# => [4, 8, 15, 20, 24, 26, 37]
668
(1): 2022/08/13(土)18:53 ID:jyB6kjuE(1/2) AAS
>>666 Common Lisp
外部リンク:ideone.com
669: 2022/08/13(土)19:08 ID:jyB6kjuE(2/2) AAS
>>668
投稿後一部訂正、n の範囲チェックを追加

負数は弾く
(check-type n (integer 0 *))

上限はシーケンスの長さ
(loop repeat n

(loop (min n (length sequence))
670: 2022/08/13(土)19:54 ID:JW3gpbYe(1) AAS
>>666 octave
外部リンク:ideone.com
f = @() sort(randperm(37, 7));
cell2mat(arrayfun(@(~) {f()}, (1:5)'))
671
(1): 2022/08/14(日)00:39 ID:YzvfyuVN(1/2) AAS
>>666
Kotlin script

repeat(5) { println((1..37).toList().shuffled().slice(0..6).sorted()) }

実行例

[6, 7, 9, 10, 16, 22, 27]
[2, 8, 9, 11, 16, 32, 33]
[11, 13, 18, 25, 26, 30, 34]
[2, 3, 12, 14, 20, 27, 37]
[7, 13, 14, 19, 27, 30, 35]
672: 671 2022/08/14(日)00:41 ID:YzvfyuVN(2/2) AAS
>>671はこれでも同じだった (toList() 抜き)。

repeat(5) { println((1..37).shuffled().slice(0..6).sorted()) }
673
(2): 96 2022/08/14(日)01:45 ID:jl8HjsTF(1/2) AAS
>>666 Perl5

use List::Util 'shuffle';
@a = 1..37;
$" = ', ';
print "@{[(shuffle@a)[0..6]]}\n"
 for 1..5;

実行結果

$ perl 20_666_shuffle1-37x5.pl
3, 2, 10, 25, 9, 23, 27
35, 6, 30, 8, 37, 29, 36
省3
1-
あと 329 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.418s*