プログラミングのお題スレ Part22 (862レス)
前次1-
抽出解除 レス栞

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
127
(4): デフォルトの名無しさん [sage] 2023/10/14(土) 00:00:08.85 ID:sMwx6jpS(1) AAS
お題:角カッコの列が入力されるのでカッコの対応が取れていたら1,取れていなかったら0と表示せよ

< [[]]
> 1

< [[]
> 0
128: 17 [] 2023/10/14(土) 02:22:24.53 ID:BgrcFKKf(1/2) AAS
>>127
Perl

bash 等のシェルのコマンドラインで以下のように入力すると標準入力から入力して結果を標準出力に出力する。

perl -ne '$n=0;while(/(.)/g){if($1eq"["){$n++}elsif($1eq"]"){$n--}}$f=$n==0?1:0;print"$f\n"'

実行例
[[]]
1
[[]
0
[[[[]][[]]]
0
[[[[]][[]]]]
1
130: デフォルトの名無しさん [sage] 2023/10/14(土) 10:19:17.10 ID:BRbCCPQd(1) AAS
>>127 Ruby
%W( [[]] [[] [[[[]][[]]] [[[[]][[]]]] ][ #{} ).each{|s|
w = s.dup
{} while w.sub!( /\[\]/, '' )
puts "#{(s != '' && w == '')? 1 : 0} #{s.inspect}"
}

# 1 "[[]]"
# 0 "[[]"
# 0 "[[[[]][[]]]"
# 1 "[[[[]][[]]]]"
# 0 "]["
# 0 ""
131: デフォルトの名無しさん [] 2023/10/14(土) 22:38:53.08 ID:5dUK8HoW(1) AAS
>>127
C#
外部リンク:paiza.io
146: デフォルトの名無しさん [sage] 2023/10/28(土) 20:54:22.44 ID:U0JINWpQ(1) AAS
>>101
101(4): デフォルトの名無しさん [sage] 2023/09/28(木) 08:18:15.29 ID:q8VwFY1b(1) AAS
お題
文字列S=abcdefghij(10文字)が与えられて
配列[0,4,7]が与えられる
このときSの0番目を4番目、4番目を7番目、7番目を0番目に移動した文字列を出力するプログラムを書いてください
octave
外部リンク:ideone.com
function s = f(s, i)
s(circshift(i, -1, 2)) = s(i);
end

>>127 ocaml
外部リンク:ideone.com
let chars s =
let rec aux acc i =
if i < 0 then acc else aux (s.[i] :: acc) (i - 1)
in aux [] ((String.length s) - 1)
let f s =
let rec aux = function
([], []) -> 1
| (_, []) -> 0
| ('['::bs, ']'::cs) -> aux (bs, cs)
| (bs, c::cs) -> aux (c::bs, cs)
in aux ([], (chars s))
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.045s