20/05/08 19:17:46 Fn4yfVbS.net
>>443
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 ]; // 最初・最後
for ( j in 0...char_ary.length ) {
char_map.set( char_ary[ j ], true ); // 同じ文字を排除
}
for ( ch in char_map.keys( ) ) {
tmp_ary.push( ch );
}
tmp_ary.sort( function( a, b ): Int {
return ( a.charCodeAt( 0 ) > b.charCodeAt( 0 ) ) ? 1 : -1; }
);
for ( k in 0...tmp_ary.length ) {
tmp_str += tmp_ary[ k ];
}
str_map.set( tmp_str, true ); // 重複排除
}
var size = Lambda.count( str_map );
trace( size ); // 4