[過去ログ] プログラミングのお題スレ Part17 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
442(9): 2020/05/04(月)18:29 ID:FrWOvyZy(2/2) AAS
お題
2つの文字列について、文字列を構成する文字が同じで、最初と最後の文字が合っていれば、
その2つの文字列は等価であるとみなす。
文字列がN個与えられる。
上記ルールに従って重複を除去したとき、文字列はいくつ残るか?
(例)
6
programming
odai
prorgamnimg
省4
443(1): 2020/05/04(月)19:25 ID:ku0WQYaW(1) AAS
>>442 Perl5、"6"も文字列に含めれば、4
for (<DATA>) {
@a = /(\w)/g;
%h = map{$_ => 1} @a;
$s = $a[0].join('', sort keys %h).$a[-1];
print "$_ -> $s\n";
$g{$s}++;
}
print keys(%g)."\n";
__DATA__
省17
445(1): 2020/05/04(月)19:38 ID:aNaLc8en(1) AAS
>>442
(defun cambridge-string= (a b)
(and (char= (elt a 0) (elt b 0))
(char= (elt a (1- (length a))) (elt b (1- (length b))))
(string= (sort (copy-seq a) #'char<) (sort (copy-seq b) #'char<))))
(defvar *set* nil)
(dotimes (n (read))
(pushnew (read-line) *set* :test #'cambridge-string=))
(princ (length *set*))
common lispのsortは破壊的だったのか
447: 2020/05/04(月)23:43 ID:g5q+36pu(2/2) AAS
>>446
おぎゃー
レス番間違えた
>>442
外部リンク:paiza.io
448: 2020/05/04(月)23:55 ID:GlEFtj51(1) AAS
>>442 Ruby
p %[6 programming odai prorgamnimg oadi pgorgamming idao].
uniq{|s| b, *m, e = s.chars; [b, e, m.uniq.sort]}.size
# => 4
450: 2020/05/05(火)09:05 ID:ZpeQ6MPR(1) AAS
>>442 J
smoutput # ~. <@( /:~ , {. , {:);._2 stdin ''
453(1): 2020/05/05(火)15:23 ID:JDagEH9a(1) AAS
>>442
c++
外部リンク:ideone.com
sortしてuniqするだけ、45行
459: 2020/05/06(水)18:22 ID:izcxg96Z(1) AAS
>>442
Kotlin
外部リンク:paiza.io
複数の同一文字を1文字扱いでやる場合はコメントを外して SortedSet に文字を入れる方を有効にする。
460: 2020/05/07(木)05:41 ID:elBmdblJ(1) AAS
>>442 Io
File standardInput readLines map(do(
sort .. slice(0,1) .. slice(size)
))unique size println
465: 2020/05/08(金)19:17 ID:Fn4yfVbS(1) AAS
>>442
Haxe で
var input_ary: Array<String> = [ "6", "programming", "odai", "prorgamnimg", "oadi", "pgorgamming", "idao" ];
var str_map = new Map<String, Bool>( );
for ( i in 0...input_ary.length ) {
var char_ary = input_ary[ i ].split( "" );
var tmp_ary = new Array<String>( );
var tmp_str = "";
var char_map = new Map<String, Bool>( );
tmp_str = tmp_str + char_ary[ 0 ] + char_ary[ char_ary.length - 1 ]; // 最初・最後
省16
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.058s