commit 9917f0be67ca5b45295652673d84371d34551996
parent 5520730315ef6b87425da00e6527ef42d794f410
Author: Dominik Schmidt <das1993@hotmail.com>
Date: Tue, 1 Sep 2015 15:48:10 +0200
Level 48 gelöst.
Diffstat:
2 files changed, 61 insertions(+), 0 deletions(-)
diff --git a/Levels.tex b/Levels.tex
@@ -691,3 +691,14 @@
Findet man den mit ? markierten akkord im Titel heraus, bekommt man ein verminderetes Ges. Findet man die Notation heraus, erhält man \nurl{gbdim.htm}
}
+\nplvl{GTTGCTCTTGAAAATACTATTAATGAA}{http://deathball.net/notpron/threethreethree/gbdim.htm}{extra}{fun}
+{
+ \begin{hints}
+ \hint{Details aus der Mittelschule vergessen(Komplementärstrang, etc.)}
+ \hint{Genetic code googlen}
+ \hint{Unbedingt englische Bezeichnungen der Aminosäuren verwenden!}
+ \end{hints}
+}{
+ Im Titel ist eine Basensequenz, die ganz stupide in die englischen
+ Aminosäuren übertragen in den Anfangsbuchstaben das Wort ,,VALENTINE'' bilden.
+}
diff --git a/Objects/Program/D/BasePair.d b/Objects/Program/D/BasePair.d
@@ -0,0 +1,50 @@
+import std.stdio;
+import std.range;
+
+
+struct AminoAcid{
+ string name;
+ bool start;
+ bool stop;
+ this(string str, bool start=false, bool stop=false){
+ name=str;
+ this.start=start;
+ this.stop=stop;
+ }
+ this(char sname, bool start=false, bool stop=false){
+ name=""~sname;
+ this.start=start;
+ this.stop=stop;
+ }
+}
+struct AminoAcidTable{
+ private immutable static char[] AminoAcids = "FFLLSSSSYY**CC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG";
+ private immutable static char[] Starts = "---M---------------M---------------M----------------------------";
+ private immutable static char[] Base1 = "TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG";
+ private immutable static char[] Base2 = "TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG";
+ private immutable static char[] Base3 = "TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG";
+
+ AminoAcid table[char[3]];
+ void initialize(){
+ char am[3];
+ AminoAcid ac;
+ for(uint i=0; i<AminoAcids.length; i++){
+ am[0]=Base1[i];
+ am[1]=Base2[i];
+ am[2]=Base3[i];
+ table[am]=AminoAcid(AminoAcids[i],(Starts[i]!='-'),(AminoAcids[i]=='*'));
+ }
+ }
+}
+
+static AminoAcidTable aat;
+
+void main(){
+ string str="GTTGCTCTTGAAAATACTATTAATGAA";
+ aat.initialize();
+ writeln(aat.table.byValue());
+ foreach(seq; str.chunks(3)){
+ char[] d=seq.map!(a=>cast(char)a).array;
+ write(aat.table[d[0..3]].name);
+ }
+}