• 締切済み

重複しない最初の文字を取り出す

学校の課題で 「標準入力された文字列の中で、重複していない最初の文字を表示せよ」 というプログラムが出題されました。 例えば、 pen pan eagle と入力した場合、penは前に文字列がないので重複がない、panはpが重複するがaは重複しない、eagleはeもaも重複するがgは重複しなので、 p a g と表示するようなプログラムです。 どういう感じで書けばよいでしょうか? 言語は何でもよいといわれたのですが、私が何とかなりそうなJavaかPerlだとありがたいです。

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

じゃ Perl で. use v5.12; my %app; while ($line = <>) { chomp $line; if (defined (my $ch = ((grep { ! $app{$_} } split //, $line), undef)[0])) { say $ch; ++$app{$ch}; } }

関連するQ&A