बेस एडेनिन, साइटोसिन, गुआनाइन और थाइमिन (जैसा कि इनकोडिंग ACGT
) के एक अनुक्रम को देखते हुए , आप डीएनए के संगत डबल स्ट्रैंड के एएससीआईआई कला प्रतिनिधित्व का उत्पादन करने के लिए हैं।
स्ट्रैंड का विस्तार लंबवत होगा। बाएं हाथ की स्ट्रैंड वह है जिसे आपको इनपुट के रूप में दिया गया है। दाएं हाथ का किनारा इसका पूरक होगा। जो डीएनए से परिचित नहीं हैं, A
उनके साथ जोड़ा जाता है T
और C
उनके साथ जोड़ा जाता है G
। इसके अलावा, डबल स्ट्रैंड के दोनों ओर बैकबोन संरचना है जो सभी आधारों के लिए समान है। इसलिए यदि आपको इनपुट दिया गया TAGCAT
तो ASCII कला की बड़े पैमाने पर संरचना होगी:
BTAB
BATB
BGCB
BCGB
BATB
BTAB
जहां B
रीढ़ का प्रतिनिधित्व करता है। अब इनमें से प्रत्येक अक्षर पूरे अणु के लिए खड़ा है और आप वास्तविक आणविक संरचना का पुनरुत्पादन कर रहे हैं ।
द बेस
प्रत्येक बेस के लिए निम्नलिखित टेम्प्लेट 1 का उपयोग करें (प्रत्येक को इसके पूरक बेस और दो बैकबोन अणुओं के साथ प्रदर्शित किया जाता है):
1 ASCII लेआउट के साथ मदद करने के लिए पीटर टेलर को श्रेय।
एडीनाइन
O O
\\ /
P
/ \
--O O
/ |
< N NH2 ..... O * |
\ // \ / \\ / |
+--O // ---- ---- |
| \ | // \\ / \\ |
| >--N--< N ...... HN > ---+
| / \ / \ / / |
+--- N=== ---N--< |
| // \ |
| O O--+
| \
| >
| /
O O--
\ /
P
/ \\
O O
साइटोसिन
O O
\\ /
P
/ \
--O O NH2 ..... O N
/ / \\ / \\ |
< ---- ---- \\ ---+
\ // \\ / \\ | / |
+--O < N ...... HN >--N--< |
| \ \ / \ / \ |
| >--N--- ===N O--+
| / \\ / \
+--- O ..... H2N >
| /
O O--
\ /
P
/ \\
O O
गुआनिन
O O
\\ /
P
/ \
--O O
/ |
< N O ..... H2N |
\ // \ // \ |
+--O // ---- ---- |
| \ | // \ // \\ |
| >--N--< NH ...... N > ---+
| / \ / \ / / |
+--- N=== ---N--< |
| \ // \ |
| NH2 ..... O O--+
| \
| >
| /
O O--
\ /
P
/ \\
O O
थाइमिन
O O
\\ /
P
/ \
--O O * O ..... H2N N
/ \ // \ / \\ |
< ---- ---- \\ ---+
\ // \ // \\ | / |
+--O < NH ...... N >--N--< |
| \ \ / \ / \ |
| >--N--- ===N O--+
| / \\ \
+--- O >
| /
O O--
\ /
P
/ \\
O O
डबल स्ट्रैंड का निर्माण
ये लंबवत दोहराते हैं, जैसे कि रीढ़ की हड्डी की संरचना में कोई अंतराल नहीं है। इसका मतलब है कि इन चार टेम्पलेट्स के बाउंडिंग बॉक्स ओवरलैप होंगे।
सही रीढ़ की हड्डी के बाईं और शीर्ष अंत के नीचे अंत से कनेक्ट करेगा O
एक की OH
।
मुक्त O
सही रीढ़ की हड्डी के लिए छोड़ दिया और नीचे अंत के शीर्ष अंत में एक नि: शुल्क बंधन जा रहा अंदर की ओर, ने संकेत दिया होगा --
।
उदाहरण ATG
O O--
\\ /
P
/ \
--O O OH
/ |
< N NH2 ..... O * |
\ // \ / \\ / |
+--O // ---- ---- |
| \ | // \\ / \\ |
| >--N--< N ...... HN > ---+
| / \ / \ / / |
+--- N=== ---N--< |
| // \ |
| O O--+
| \
| >
| /
O O O O--
\\ / \ /
P P
/ \ / \\
--O O * O ..... H2N N O O
/ \ // \ / \\ |
< ---- ---- \\ ---+
\ // \ // \\ | / |
+--O < NH ...... N >--N--< |
| \ \ / \ / \ |
| >--N--- ===N O--+
| / \\ \
+--- O >
| /
O O O O--
\\ / \ /
P P
/ \ / \\
--O O O O
/ |
< N O ..... H2N |
\ // \ // \ |
+--O // ---- ---- |
| \ | // \ // \\ |
| >--N--< NH ...... N > ---+
| / \ / \ / / |
+--- N=== ---N--< |
| \ // \ |
| NH2 ..... O O--+
| \
| >
| /
OH O O--
\ /
P
/ \\
--O O
और ज्यादा उदाहरण:
यहां कई और उदाहरणों के एमडी 5 हैश हैं (बिना बाहरी अग्रणी या अनुगामी रिक्त स्थान के):
ATG 2e4a906c44a96fe84134bf4346adf11c (this is the above example)
C e3648b8960967463784818c3eee57246
TTT 6028a90b05775905ef1a00e7a45463c5
TAGCAT 3b834d2b7b9adc4113ffabd52d354c41
GATTACA a19463f965c641d071e07da59d64a418
मुझे पता है अगर आपको लगता है कि इनमें से कोई भी गलत है।
यदि आप अनिश्चित हैं कि अपने परिणामों की हैश को मज़बूती से कैसे जांचें, तो यह ऑनलाइन एमडी 5 जनरेटर आज़माएं । सुनिश्चित करें कि कोई अनुगामी रेखा विराम नहीं है।
आगे के नोट्स
आप कर सकते हैं आगे या पीछे रिक्त स्थान का उपयोग आप मनचाहे ढंग से। बेशक, यदि आप अग्रणी स्थानों का उपयोग करते हैं तो प्रत्येक पंक्ति में समान राशि होनी चाहिए।
यदि मैंने रासायनिक संरचना की नकल करने में कोई गलती की है, तो उपरोक्त टेम्पलेट्स अभी भी इस चुनौती के उद्देश्यों के लिए आदर्श हैं।
आप एक फ़ंक्शन या एक प्रोग्राम लिख सकते हैं जो इनपुट स्ट्रिंग को पैरामीटर के रूप में लेता है , कमांड लाइन तर्क STDIN के माध्यम से या यह एक चर में संग्रहीत होने की उम्मीद करता है। परिणामस्वरूप ASCII कला को STDOUT में लिखें।
यह कोड गोल्फ है, इसलिए सबसे छोटा उत्तर (बाइट्स में) जीतता है।
TTT
क्योंकि स्ट्रिंग में एक अनुगामी न्यूलाइन थी।
ATG
आउटपुट को कॉपी किया और अलग-अलग चेकसम प्राप्त किया। और अलग-अलग OS को अलग-अलग चेकसम मिलेंगे। आप इन के साथ कोशिश कर सकते हैं unix2dos, unix2mac...
।
Digest::MD5.hexdigest()
यूनिक्स-स्टाइल लाइन एंडिंग्स के साथ रूबी का उपयोग करके मिला । इसके अलावा, उनमें से कोई भी एक अनुगामी नई रेखा नहीं है। इसे यहां पेस्ट करें - यह ऑनलाइन एमडी 5 जनरेटर मेरी हैश से सहमत है।