summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2012-10-20 14:28:13 -0500
committerJesse Luehrs <doy@tozt.net>2012-10-20 14:28:13 -0500
commitb4c33892ca44436dd5a5fc711016f5019af5cfea (patch)
treeffd9f951ae6eff653372d93ee0ba340277a27eed
parent10b6e814cf73a972c12a2e991cfd4935f34dc57c (diff)
downloadrosalind-b4c33892ca44436dd5a5fc711016f5019af5cfea.tar.gz
rosalind-b4c33892ca44436dd5a5fc711016f5019af5cfea.zip
another solution
-rw-r--r--SPLC.pl34
1 files changed, 34 insertions, 0 deletions
diff --git a/SPLC.pl b/SPLC.pl
new file mode 100644
index 0000000..97e83e3
--- /dev/null
+++ b/SPLC.pl
@@ -0,0 +1,34 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use 5.016;
+
+my %map = qw(
+ UUU F CUU L AUU I GUU V
+ UUC F CUC L AUC I GUC V
+ UUA L CUA L AUA I GUA V
+ UUG L CUG L AUG M GUG V
+ UCU S CCU P ACU T GCU A
+ UCC S CCC P ACC T GCC A
+ UCA S CCA P ACA T GCA A
+ UCG S CCG P ACG T GCG A
+ UAU Y CAU H AAU N GAU D
+ UAC Y CAC H AAC N GAC D
+ UAA Stop CAA Q AAA K GAA E
+ UAG Stop CAG Q AAG K GAG E
+ UGU C CGU R AGU S GGU G
+ UGC C CGC R AGC S GGC G
+ UGA Stop CGA R AGA R GGA G
+ UGG W CGG R AGG R GGG G
+);
+
+chomp(my $dna = <>);
+chomp(my @introns = <>);
+
+for my $intron (@introns) {
+ $dna =~ s/$intron//g;
+}
+
+$dna =~ tr/T/U/;
+
+($_ eq 'Stop' && last) || print for map { $map{$_} } $dna =~ /.../g;