Programming Forums
User Name Password Register
 

RSS Feed
FORUM INDEX | TODAY'S POSTS | UNANSWERED THREADS | ADVANCED SEARCH

Reply
 
Thread Tools Display Modes
Old Feb 16th, 2006, 9:21 PM   #11
jobobshishkabob
Programmer
 
Join Date: Jan 2006
Location: Texas
Posts: 36
Rep Power: 0 jobobshishkabob is on a distinguished road
sorry sorry... i had tried many things and i didnt even think of this way... my other ways failed and this is my last chance... sorry... please if you can, can someone give me code? i would really appreciate that... you dont know how badly i need it... its a long story...
jobobshishkabob is offline   Reply With Quote
Old Feb 17th, 2006, 12:09 AM   #12
Jimbo
Battle Programmer
 
Jimbo's Avatar
 
Join Date: Feb 2006
Location: Bellevue, WA, USA
Posts: 748
Rep Power: 3 Jimbo is on a distinguished road
Quote:
Originally Posted by jobobshishkabob
please if you can, can someone give me code? i would really appreciate that...
I don't think many people will gladly do your project for you for free... besides, if someone did, what would you gain from it? You still wouldn't know how to do it yourself...
Jimbo is offline   Reply With Quote
Old Feb 17th, 2006, 12:23 AM   #13
titaniumdecoy
Expert Programmer
 
titaniumdecoy's Avatar
 
Join Date: Nov 2005
Posts: 837
Rep Power: 3 titaniumdecoy is on a distinguished road
Send a message via AIM to titaniumdecoy
Lucky for you, I'm practicing writing this type of data processing program before I major in CS next year. I am also learning C++, and this is the first full program I have written in the language.

If this is a school assignment, please don't just copy this code; I suggest you refer to it when you get stuck instead.

This program has a one character needle; you might want to try to improve that.

/*
 *  PatternMatching 
 *  Written by Jason
 */

#include <iostream>
#include <string>
#include <vector>

using namespace std;

const unsigned int matchlen = 5;
string str1("141337545434544543");
string str2("325452134544534513375");

int main (int argc, char * const argv[]) {
    vector<string> matches;
    // Compare each character in the second string
    for (unsigned int i = 0; i < str2.length(); i++) {
        // To each character in the first string
        for (unsigned int j = 0; j < str1.length(); j++) {
            // If two characters match up
            if (str1[j] == str2[i]) {
                // Initialize the resulting string with the first character
                string match(&str1[j], 1);
                unsigned int k = 1;
                if ((j + k) < str1.length() && (i + k) < str2.length()) {
                    // While the next characters of each string are the same
                    while (str1[j+k] == str2[i+k]) {
                        // Append that character to the resulting string
                        match.append(&str1[j+k], 1);
                        k++;
                        if ((j + k) >= str1.length() || (i + k) >= str2.length())
                            break;
                    }
                }
                // If the length of the resulting string is greater than matchlen
                if (match.length() >= matchlen) {
                    // Store it in the matches vector
                    matches.push_back(match);
                }
            }
        }
    }
    
    // Print the results
    for (vector<string>::size_type i = 0; i < matches.size(); i++) {
        cout << matches[i] << endl;
    }
    
    return 0;
}
titaniumdecoy is offline   Reply With Quote
Old Feb 17th, 2006, 1:46 AM   #14
Jimbo
Battle Programmer
 
Jimbo's Avatar
 
Join Date: Feb 2006
Location: Bellevue, WA, USA
Posts: 748
Rep Power: 3 Jimbo is on a distinguished road
Because this seemed easier than my homework, I though't I'd throw in a sample solution. It finds all matches exactly 5 characters long, so anything longer will appear multiple times in successive 5 character segments. As titaniumdecoy said, please dont copy it... although I would get a kick out of it if you did.
#include <string>
#include <vector>
#include <iostream>
#define str std::string
#define vec std::vector<
#define p push_back(
#define s substr(
int main()
{
	str s1 = "1872364912836928312345756409127631230926321785";
	str s2 = "567239846123455129840763209846512987362196321785";
	vec str> m;
	for(size_t i=0;i<s1.size()-5;i++)
	{	for(size_t j=0;j<s2.size()-5;++j){
			if(s1.s i, 5)==s2.s j, 5)){
				m.p s1.s i, 5));break;
			}}}
	for(size_t i=0; i<m.size();i++)
		std::cout<<m[i]<<std::endl;
	return 0;
}
Oh, and there might be a little overhead to making it readable... but it's not too hard to do.
Jimbo is offline   Reply With Quote
Old Feb 17th, 2006, 9:25 PM   #15
jobobshishkabob
Programmer
 
Join Date: Jan 2006
Location: Texas
Posts: 36
Rep Power: 0 jobobshishkabob is on a distinguished road
i really appreciate these codes... thanks to the both of you

you say dont copy them... but thats the way you gave them to me... and if i read them i wont know how else to do it... im not copying titaniumdecoy's because his looked like it took him a while... jimbo said his was easy so im going his way...

dont worry im not just copying it... ive studied the code to understand what it meant... i also added some user interaction with it also...
#include <string>
#include <vector>
#include <iostream>
#define str std::string
#define vec std::vector<
#define p push_back(
#define s substr(
using namespace std;
int main()
{
int pat; 
int x;
cout<<"How many letters would you like the similar patterns to be?\n";
cout<<"***Note*** the higher the number, the longer it will take to find patterns.\nPlease choose appropriatly according to your processor speed.\n";
cout<<"\n#:";
cin>>pat;
x=pat;
cout<<"Plase Wait.... DDWWn is finding similar patterns...\n";


	 str s1("GTGGACCGCAAAGAACAGTTTCGAATCGGAAGCTTGCTTAACGTAGTTCTAACAGTTTTTTATTAGAGAGCAGATCTCTGATGAACAACCAACGAAAAAAGACGGCTCGACCGTCTTTCAATATGCTGAAACGCGCGAGAAACCGCGTGTCAACTGGTTCACAGTTGGCGAAGAGATTCTCAAAAGGATTGCTTTCAGGCCAAGGACCCATGAAATTGGTGATGGCTTTCATAGCATTCCTAAGATTTCTAGCCATACCCCCAACAGCAGGAATTTTGGCTAGATGGGGCTCATTCAAGAAGAATGGAGCGATCAAAGTGCTACGGGGTTTCAAGAAAGAAATCTCAAACATGTTGAACATAATGAATAGAAGGAAAAGATCTGTGACCATGCTCCTCATGCTGCTGCCCACAGCCTTGGCGTTCCATTTGACTACACGAGGGGGAGAGCCACACATGATAGTTAGCAAGCAGGAAAGAGAAAAGTCACTCTTGTTTAAGACCTCTGTAGGTGTCAACATGTGCACCCTTATAGCGATGGATTTGGGAGAGTTATGTGAGGACACAATGACTTACAAATGCCCTCGAATTACTGAGGCGGAACCAGATGACGTTGATTGTTGGTGCAATGCTACAGACACATGGGTGACCTATGGAACATGTTCCCAAACTGGCGAGCACCGACGGGACAAACGTTCCGTCGCACTGGCCCCACACGTGGGACTTGGTCTAGAAACAAGAACCGAAACGTGGATGTCCTCTGAAGGCGCTTGGAAACAAATACAAAGAGTGGAGACTTGGGCTTTGCGACACCCAGGATTCACGGTGATAGCCCTTTTTCTTGCACATGCCATAGGAACATCCATCACTCAGAAAGGGATTATTTTCATTTTGTTAATGCTAGTAACACCATCCATGGCCATGCGATGCGTGGGAATAGGCAGCAGGGACTTCGTGGAAGGACTATCAGGAGCAACTTGGGTAGACGTGGTACTGGAACATGGAAGTTGCGTCACCACCATGGCAAAAGACAAACCAACATTGGACATTGAACTCCTGAAAACGGAGGTCACGAACCCTGCCGTCCTGCGCAAACTGTGCATTGAAGCTAAAATATCAAACACCACCACCGATTCAAGATGTCCAACACAAGGAGAAGCTACACTGGTGGAAGAACAAGACGCGAACTTTGTGTGTCGACGAACGTTCGTGGACAGAGGCTGGGGTAATGGCTGCGGACTATTTGGAAAAGGAAGCCTACTGACGTGTGCTAAGTTCAAGTGTGTGACAAAACTAGAAGGAAAGATAGTTCAATATGAAAACTTAAAATATTCAGTGATAGTCACTGTCCACACTGGGGACCAGCACCAGGTGGGAAACGAGACTACAGAACATGGAACAATTGCAACCATAACACCTCAAGCTCCTACGTCGGAAATACAGCTGACCGACTACGGAGCCCTCACATTGGACTGCTCACCTAGAACTGGGCTGGACTTTAATGAGATGGTGCTATTGACAATGAAAGAAAAATCATGGCTTGTTCACAAACAATGGTTTCTAGACTTACCACTGCCTTGGACTTCGGGGGCTTCAACATCCCAAGAGACTTGGAACAGACAAGATTTGCTGGTCACATTCAAGACAGCTCATGCAAAGAAGCAGGAAGTAGTCGTACTGGGATCACAGGAAGGAGCAATGCACACTGCGTTGACTGGGGCGACAGAAATCCAAACGTCTGGAACGACAACAATTTTTGCAGGACACCTGAAATGTAGACTAAAAATGGACAAACTGACTCTAAAAGGGATGTCATATGTGATGTGCACAGGCTCATTTAAGCTAGAGAAGGAAGTGGCTGAGACCCAGCATGGAACTGTTTTAGTGCAGGTTAAATACGAAGGAACAGATGCACCATGCAAGATCCCCTTTTCGACCCAAGATGAGAAAGGAGTGACCCAGAATAGATTGATAACAGCCAATCCTATAGTTACTGACAAAGAAAAACCAGTCAACATTGAGACAGAACCACCTTTTGGTGAGAGCTACATCGTGGTAGGGGCAGGTGAAAAAGCTTTGAAACAATGCTGGTTCAAGAAAGGAAGCAGCATAGGGAAAATGTTCGAAGCAACCGCCCGAGGAGCACGAAGGATGGCTATCCTGGGAGACACCGCATGGGACTTCGGTTCTATAGGAGGAGTGTTCACGTCTGTGGGAAAATTAGTGCATCAGGTTTTTGGAACCGCATATGGGGTTCTGTTCAGCGGTGTTTCTTGGACCATGAAAATAGGAATAGGGATTCTGCTGACATGGTTGGGATTAAATTCAAGGAGCACGTCACTTTCGATGACGTGCATTGCAGTTGGCATGGTCACACTGTACCTAGGAGTCATGGTTCAAGCGGACTCGGGATGTGTAATCAACTGGAAGGGCAGAGAACTCAAATGTGGAAGTGGCATTTTTGTCACTAATGAAGTCCACACTTGGACAGAGCAATACAAATTTCAAGCTGACTCCCCAAAAAGACTATCAGCAGCCATCGGAAAGGCATGGGAGGAGGGTGTGTGTGGAATTCGATCAGCCACTCGTCTCGAGAACATCATGTGGAAGCAAATATCAAATGAACTGAACCACATCTTACTTGAAAATGACATGAAATTCACAGTGGTTGTAGGAGATGTTGTTGGGATCTTGGCCCAAGGGAAAAAAATGATTAGACCACAACCCATGGAACACAAATACTCATGGAAAAGCTGGGGAAAAGCCAAAATCATAGGAGCAGACATACAGAACACCACCTTCATCATTGACGGCCCAGATACTCCAGAATGTCCTGATGACCAAAGAGCATGGAACATTTGGGAAGTTGAGGACTATGGGTTCGGAATTTTCACGACAAACATATGGTTGAAATTGCGTGACTCCTACACCCAAATGTGTGACCACCGGCTAATGTCAGCTGCCATCAAGGACAGCAAGGCAGTCCATGCTGATATGGGGTACTGGATAGAAAGTGAAAAGAACGAGACCTGGAAGCTGGCAAGAGCCTCTTTCATAGAAGTTAAAACATGTGTCTGGCCAAAATCCCACACTCTATGGAGCAATGGAGTTCTGGAAAGTGAAATGATAATTCCAAAGATCTATGGAGGACCAATATCTCAGCACAACTACAGACCAGGATATTTCACACAAACGGCAGGGCCATGGCACCTAGGCAAGTTGGAACTGGATTTTGATTTGTGTGAGGGTACCACAGTTGTTGTGGATGAACATTGTGGAAATCGAGGTCCATCTCTTAGAACCACAACAGTCACAGGAAAGATAATTCATGAATGGTGTTGCAGATCTTGTACGCTACCACCCTTACGTTTCAAAGGAGAAGATGGATGTTGGTACGGTATGGAAATCAGACCAGTCAAGGAAAAGGAAGAGAATCTAGTCAAATCAATGGTCTCTGCAGGGTCAGGGGAAGTGGACAGCTTTTCACTAGGACTGCTATGCATATCAATAATGATCGAAGAGGTGATGAGATCCAGATGGAGCAGAAAAATGCTGATGACTGGAACACTGGCTGTGTTCCTCCTTCTCATAATGGGACAATTGACATGGAATGATCTGATCAGGTTATGCATCATGGTTGGAGCCAATGCTTCAGACAGGATGGGGATGGGAACAACGTACCTAGCTCTGATGGCCACTTTTAAAATGAGACCAATGTTTGCTGTCGGGCTGTTGTTCCGCAGACTAACATCTAGAGAAGTTCTTCTTCTTACAATTGGATTGAGTCTAGTGGCATCTGTGGAGTTACCAAATTCCCTGGAGGAGCTGGGGGATGGACTTGCAATGGGCATTATGATTTTAAAATTATTGACTGACTTTCAGTCACATCAGCTGTGGGCTACCTTGCTGTCCTTGACATTTGTCAAAACAACGTTTTCCTTGCACTATGCATGGAAGACAATGGCTATGGTACTGTCAATTGTATCTCTCTTCCCCTTATGCCTGTCCACGACCTCCCAAAAAACAACATGGCTTCCGGTGCTATTGGGATCTCTTGGATGCAAACCACTAACCATGTTTCTCATAGCAGAAAACAAAATCTGGGGAAGGAAAAGTTGGCCCCTCAATGAAGGAATCATGGCTGTTGGAATAGTCAGCATCCTACTAAGTTCACTCCTCAAAAATGATGTGCCGCTAGCTGGGCCACTAATAGCTGGAGGCATGCTAATAGCATGTTACGTTATATCTGGAAGCTCAGCCGACTTATCACTAGAGAAAGCGGCTGAGGTCTCCTGGGAAGAAGAAGCAGAACACTCTGGTGCCTCACACAATATATTAGTGGAGGTCCAAGATGATGGAACCATGAAGATAAAAGATGAAGAGAGAGATGACACGCTAACCATTCTCCTTAAAGCAACCCTGCTAGCAGTTTCAGGGGTGTACCCATTATCAATACCAGCAACCCTTTTTGTGTGGTACTTTTGGCAGAAAAAGAAACAAAGATCTGGAGTGTTATGGGACACACCTAGCCCTCCAGAAGTGGAAAGAGCAGTCCTTGATGATGGTATCTATAGAATTATGCAGAGAGGACTGTTGGGCAGGTCCCAAGTAGGAGTGGGAGTTTTCCAAGACGGCGTGTTCCACACAATGTGGCACGTCACCAGGGGAGCTGTCCTTATGTACCAAGGGAAGAGGCTGGAACCAAGCTGGGCCAGTGTCAAAAAAGACTTGATCTCATATGGAGGAGGTTGGAGGTTTCAAGGATCCTGGAACACGGGAGAAGAAGTGCAGGTGATTGCTGTTGAACCAGGAAAAAACCCCAAAAATGTACAGACAGCGCCGGGTACCTTCAAGACCCCTGAAGGTGAAGTTGGAGCTATTGCCCTAGATTTTAAACCCGGCACATCTGGATCTCCCATCGTGAACAGAGAAGGAAAAATAGTAGGTCTTTATGGAAATGGAGTAGTGACAACAAGTGGAACCTACGTCAGTGCCATAGCCCAAGCCAAAGCATCACAAGAAGGGCCCCTACCAGAGATTGAGGACGAGGTGTTTAGGAAAAGAAACTTAACAATAATGGACCTACATCCAGGATCGGGGAAAACAAGAAGATATCTTCCAGCCATAGTCCGTGAGGCCATAAGAAGGAACGTGCGCACACTAATTTTGGCTCCCACAAGGGTTGTCGCTTCCGAAATGGCAGAGGCGCTCAAGGGAATGCCAATAAGGTACCAAACAACAGCAGTGAAGAGTGAACACACAGGAAAAGAGATAGTTGACCTCATGTGTCACGCCACTTTCACCATGCGTCTCCTGTCTCCCGTGAGAGTTCCCAATTACAACATGATTATCATGGATGAAGCACATTTTACCGATCCAGCCAGCATAGCGCGCAGAGGGTACATCTCAACCCGAGTGGGCATGGGTGAAGCAGCTGCGATCTTCATGACAGCCACTCCCCCAGGATCGGTGGAGGCCTTTCCACAGAGCAATGCAGTTATCCAAGATGAGGAAAGAGACATTCCTGAGAGATCATGGAACTCAGGCTATGAGTGGATCACTGACTTCCCAGGTAAAACAGTCTGGTTTGTTCCAAGCATCAAATCAGGAAATGACATTGCCAACTGCTTAAGAAAGAATGGGAAACGGGTGATTCAATTGAGCAGGAAAACCTTTGATACAGAGTACCAAAAAACAAAAAACAACGACTGGGACTATGTCGTCACAACAGATATCTCCGAAATGGGAGCAAACTTCCGAGCCGACAGGGTGATAGACCCAAGACGGTGTCTGAAACCGGTAATACTAAAAGATGGTCCAGAGCGCGTCATTCTAGCCGGACCGATGCCAGTGACTGTGGCCAGTGCTGCCCAGAGGAGAGGAAGAATTGGAAGGAACCAAAACAAAGAAGGTGATCAGTACGTTTACATGGGACAGCCTTTAAATAATGATGAGGATCACGCTCATTGGACAGAAGCAAAAATGCTCCTTGACAATATAAACACACCAGAAGGGATCATCCCAGCCCTCTTTGAGCCAGAGAGAGAAAAGAGTGCAGCAATAGACGGGGAGTACAGACTGCGGGGAGAAGCAAGAAAAACGTTTGTGGAGCTCATGAGAAGAGGAGATCTACCTGTCTGGCTATCCTACAAAGTTGCCTCAGAAGGCTTCCAGTACTCTGACAGAAGATGGTGCTTTGACGGGGAAAGGAACAACCAGGTGTTGGAGGAGAACATGGACGTGGAGATGTGGACAAAAGAAGGAGAACGAAAGAAACTACGACCCCGCTGGCTGGATGCCAGAACATACTCAGACCCACTGGCCCTGCGCGAGTTTAAAGAGTTTGCAGCAGGAAGAAGAAGTGTCTCAGGTGATCTAATATTAGAAATAGGGAAACTTCCACAACACTTGACGCAAAGGGCCCAGAATGCCTTGGACAACCTGGTTATGTTGCACAACTCCGAACAAGGAGGAAGAGCCTACAGACATGCAATGGAAGAACTTCCAGACACCATAGAAACGTTGATGCTCCTAGCTTTGATAGCTGTGTTAACTGGTGGAGTGACGCTGTTCTTCCTATCAGGAAAGGGCCTAGGGAAAACATCTATTGGCCTACTCTGCGTGATGGCTTCAAGCGTACTGCTATGGATGGCCAGCGTGGAGCCTCATTGGATAGCGGCCTCCATCATACTAGAGTTTTTCCTGATGGTGCTGCTTATTCCAGAGCCAGACAGACAGCGCACTCCACAGGACAACCAGTTAGCATATGTGGTGATAGGTTTGTTATTCATGATACTCACAGTGGCAGCCAATGAGATGGGATTATTGGAAACCACAAAGAAAGACTTAGGGATTGGCCATGTAGCCGCCGAAAACCACCACCATGCTACAATGCTGGACGTAGACCTACGTCCAGCTTCAGCCTGGACCCTCTATGCAGTAGCCACAACAGTTATCACCCCCATGATGAGACACACAATTGAAAATACAACGGCAAATATTTCCCTGACAGCCATTGCAAACCAGGCAGCTATATTGATGGGACTTGATAAAGGATGGCCAATATCGAAGATGGACATAGGAGTTCCACTTCTCGCCTTGGGGTGCTATTCCCAGGTGAATCCACTGACGCTGACAGCGGCGGTATTGATGCTAGTGGCTCATTACGCCATAATTGGACCTGGACTGCAAGCAAAAGCGACTAGAGAAGCTCAAAAAAGGACAGCGGCCGGAATAATGAAAAATCCAACCGTTGATGGAATTGTTGCAATAGATTTGGACCCTGTGGTTTATGATGCAAAATTTGAGAAACAACTAGGCCAAATAATGTTGTTGATACTATGCACATCACAGATCCTCTTGATGCGGACTACATGGGCCTTGTGTGAATCCATCACACTGGCCACTGGACCTCTGACCACGCTTTGGGAGGGATCTCCAGGAAAATTTTGGAACACCACGATAGCGGTTTCCATGGCAAACATTTTCAGGGGAAGTTATCTAGCAGGAGCAGGCCTGGCCTTCTCATTAATGAAATCTCTAGGAGGAGGTAGGAGAGGTACGGGAGCCAAGGGGAAACACTGGGAGAGAAATGGAAAAGACAGACTGAACCAACTGAGCAAGTCAGAATTCAACACTTACAAAAGGAGTGGGATTATGGAAGTGGACAGATCCGAAGCCAAAGAGGGACTGAAAAGAGGAGAAACAACCAAACATGCAGTGTCGAGAGGAACCGCCAAATTGAGGTGGTTCGTGGAGAGGAACCTTGTGAAACCAGAAGGGAAAGTCATAGACCTCGGTTGTGGAAGAGGTGGCTGGTCATACTATTGCGCTGGGCTGAAGAAAGTCACAGAAGTGAAGGGATACACAAAAGGAGGACCTGGACATGAGGAACCAATCCCAATGGCGACCTATGGATGGAACCTAGTAAAGCTATACTCCGGGAAAGACGTATTCTTTACACCACCTGAGAAGTGTGACACCCTTTTGTGTGATATTGGTGAGTCCTCTCCAAACCCAACTATAGAAGAAGGAAGAACGTTACGCGTCCTAAAGATGGTGGAACCATGGCTCAGAGGGAACCAATTTTGCATAAAAATTCTAAATCCCTACATGCCAAGTGTGGTGGAAACTCTGGAGCAAATGCAAAGAAAACATGGAGGAATGCTAGTGCGGAATCCACTTTCAAGAAATTCTACTCATGAAATGTATTGGGTTTCATGTGGAACAGGAAACATTGTGTCAGCAGTAAACATGACATCTAGAATGTTGCTAAATCGATTCACAATGGCTCACAGGAAACCAACATATGAAAGAGACGTGGACTTAGGCGCTGGAACAAGACATGTGGCAGTGGAACCAGAGGTAGCCAACCTAGATATCATTGGCCAGAGGATAGAGAACATAAAACATGAACATAAGTCAACATGGCATTATGATGAGGACAATCCATATAAAACATGGGCCTATCATGGATCATATGAGGTCAAGCCATCAGGATCAGCCTCATCCATGGTCAATGGCGTGGTGAAACTGCTCACCAAACCATGGGATGCCATCCCCATGGTCACACAAATAGCCATGACTGACACCACACCCTTTGGACAACAGAGGGTGTTTAAAGAGAAAGTTGACACGCGCACACCAAAAGCAAAACGAGGCACAGCACAAATCATGGAGGTGACAGCCAGGTGGTTATGGGGTTTTCTCTCTAGAAACAAAAAACCAAGAATTTGTACAAGAGAGGAGTTCACAAGAAAAGTTAGGTCAAACGCAGCCATTGGAGCAGTGTTCGTTGATGAAAATCAATGGAACTCAGCAAAAGAAGCAGTGGAAGATGAGCGGTTCTGGGACCTTGTGCACAGAGAGAGGGAGCTTCACAAACAGGGAAAATGTGCCACGTGTGTTTACAACATGATGGGGAAGAGAGAGAAAAAACTAGGAGAGTTCGGAAAGGCAAAAGGAAGTCGTGCAATATGGTACATGTGGTTGGGAGCACGCTTTCTAGAGTTCGAAGCTCTTGGTTTCATGAACGAAGATCACTGGTTCAGTAGAGAGAATTCACTCAGTGGAGTGGAAGGAGAAGGACTCCACAAACTCGGATATATACTCAGAGACATATCAAAGATTCCAGGGGGAAATATGTATGCAGATGACACAGCCGGATGGGATACAAGGATAACAGAGGATGATCTTCAGAATGAGGCCAAAATTACTGACATCATGGAGCCCGAACATGCCCTACTGGCTACGTCAATCTTCAAGCTGACCTACCAAAATAAGGTGGTAAGGGTACAGAGACCAGCGAAAAATGGAACCGTGATGGATGTCATATCCAGACGTGACCAGAGAGGAAGTGGCCAGGTCGGAACTTATGGCTTAAACACTTTCACTAACATGGAAGCCCAGCTAATAAGACAAATGGAGTCTGAGGGAATCTTTTCACCCAGCGAATTGGAGACCCCAAATTTAGCCGAGAGAGTTCTCGACTGGCTGGAAAAATATGGCGTCGAAAGGCTGAAAAGAATGGCAATCAGCGGAGATGACTGCGTGGTGAAACCAATTGATGACAGGTTCGCAACAGCCTTAACAGCTCTGAATGATATGGGAAAAGTAAGAAAAGATATACCACAATGGGAACCCTCAAAAGGATGGAATGATTGGCAACAGGTGCCTTTTTGTTCACACCATTTCCACCAGCTGATTATGAAGGATGGGAGGGAAATAGTGGTGCCATGCCGCAACCAAGATGAACTTGTGGGTAGGGCTAGAGTATCACAAGGTGCTGGATGGAGCCTGAGAGAAACTGCATGCCTAGGCAAGTCATATGCACAAATGTGGCAGCTGATGTACTTCCACAGGAGAGACCTGAGACTAGCTGCTAATGCTATCTGTTCAGCCGTTCCAGTTGATTGGGTCCCAACCAGCCGCACCACTTGGTCGATCCATGCCCATCACCAATGGATGACAACAGAAGACATGTTGTCAGTGTGGAATAGGGTTTGGATAGAGGAAAACCCATGGATGGAGGACAAAACCCATGTATCCAGTTGGGAAGATGTTCCATATTTAGGAAAAAGGGAAGATCAGTGGTGTGGATCCCTGATAGGCTTAACAGCAAGGGCTACCTGGGCCACCAACATACAAGTGGCCATAAACCAAGTGAGAAGACTAATCGGGAATGAGAATTATCTAGATTACATGACATCAATGAAGAGATTCAAGAACGAGAGTGATCCGAAGGGGCACTCTGGTGAGTCAACACACTTACAAAATAAAGGAAAATAAGAAATCAAACAAGGCAAGAAGTCAGGCCGGATTAAGCCATAGTACGGTAAGAGCTATGCTGCCTGTGAGCCCCGTCCAAGGACGTAAAATGAAGTCAGGCCGAAAGCCACGGTTTGAGCAAACCGTGCTGCCTGTAGCTTCATCGTGGGGATGTAAAAACCTGGGAGGCTGCAACCCATGGAAGCTGTACGCATGGGGTAGCAGACTAGTGGTTAGAGGAGACCCCTCCCAAAACATAACGCAGCAGCGGGGCCCAACACCAGGGGAAGCTGTATCCTGGTGGTAAGGACTAGAGGTTAGAGGAGACCCCCGGCATAACAATAAACAGCATATTGACGCTGGGAGAGACCAGAGATCCTGCTGTCTCTACAGCATCATTCCAGGCACAGAACGCCAGAAAATGGAATGGTGCTGTTGAATCAACAGGTTCT");
     str s2("AGTAGTTCGCCTGTGTGAGCTGACAAACTTAGTAGTGTTTGTGAGGATTAACAACAATTAACACAGTGCGAGCTGTTTCTTGGCACGAAGATCTCGATGTCTAAGAAACCAGGAGGGCCCGGTAAAAACCGGGCTGTCAATATGCTAAAACGCGGTATGCCCCGCGGATTGTCCTTGATAGGACTAAAGAGGGCTATGCTGAGTCTGATTGACGGGAAGGGCCCAATACGTTTCGTGTTGGCTCTTTTGGCGTTTTTCAGATTCACTGCAATCGCTCCGACTCGTGCGGTGCTGGACAGATGGAGAGGCGTCAACAAACAAACAGCAATGAAGCATCTCTTGAGTTTCAAGAAAGAACTAGGAACTCTGACCAGTGCCATCAACCGCCGGAGCACAAAACAAAAGAAAAGAGGAGGCACAGCGGGCTTTACTATCTTGCTTGGGCTGATCGCCTGTGCTGGAGCTGTGACCCTCTCGAACTTCCAGGGCAAAGTGATGATGACAGTCAATGCAACCGATGTCACTGACGTGATTACCATTCCAACAGCTGCTGGGAAAAACCTGTGCATCGTAAGGGCTATGGACGTAGGATACCTTTGTGAGGATACTATCACTTATGAATGTCCGGTCCTAGCTGCTGGAAATGACCCTGAAGACATTGACTGCTGGTGCACGAAATCATCTGTTTACGTGCGCTATGGAAGATGCACAAAAACTCGGCATTCCCGTCGAAGCAGAAGGTCTCTGACAGTCCAGACACATGGAGAAAGTACACTGGCCAACAAGAAAGGAGCTTGGTTGGACAGCACAAAAGCCACGAGATATCTGGTGAAGACAGAATCATGGATACTGAGAAACCCGGGCTACGCCCTCGTTGCAGCTGTCATTGGATGGATGCTAGGAAGCAACACAATGCAACGCGTCGTGTTTGCCATTCTATTGCTCCTGGTGGCACCAGCATACAGCTTCAACTGTTTAGGAATGAGTAACAGAGACTTCCTGGAGGGAGTGTCTGGAGCTACATGGGTTGATCTGGTACTGGAAGGCGATAGTTGTGTGACCATAATGTCAAAAGACAAGCCAACCATTGATGTCAAAATGATGAACATGGAAGCAGCCAACCTCGCAGATGTGCGCAGTTACTGTTACCTAGCTTCGGTCAGTGACTTGTCAACAAGAGCTGCGTGTCCAACCATGGGTGAAGCCCACAACGAGAAAAGAGCTGACCCCGCCTTCGTTTGCAAGCAAGGCGTTGTGGACAGAGGATGGGGAAATGGCTGCGGACTGTTTGGAAAGGGGAGCATTGACACATGTGCGAAGTTTGCCTGTACAACCAAAGCAACTGGATGGATCATCCAGAAGGAAAACATCAAGTATGAGGTTGCCATATTTGTGCATGGCCCGACGACCGTTGAATCTCATGGCAAGATAGGGGCCACCCAGGCTGGAAGATTCAGTATAACTCCATCGGCGCCATCTTACACGCTAAAGTTGGGTGAGTATGGTGAGGTTACGGTTGATTGTGAGCCACGGTCAGGAATAGACACCAGCGCCTATTACGTTATGTCAGTTGGTGAGAAGTCCTTCCTGGTTCACCGAGAATGGTTTATGGATCTGAACCTGCCATGGAGCAGTGCTGGAAGCACCACGTGGAGGAACCGGGAAACACTGATGGAGTTTGAAGAACCTCATGCCACCAAACAATCTGTTGTGGCTCTAGGGTCGCAGGAAGGTGCGTTGCACCAAGCTCTGGCCGGAGCGATTCCTGTTGAGTTCTCAAGCAACACTGTGAAGTTGACATCAGGACATCTGAAGTGTCGGGTGAAGATGGAGAAGTTGCAGCTGAAGGGAACAACATATGGAGTATGTTCAAAAGCGTTCAAATTCGCTAGGACTCCCGCTGACACTGGCCACGGAACGGTGGTGTTGGAACTGCAATATACCGGAACAGACGGTCCCTGCAAAGTGCCCATTTCTTCCGTAGCTTCCCTGAATGACCTCACACCTGTTGGAAGACTGGTGACCGTGAATCCATTTGTGTCTGTGGCCACAGCCAACTCGAAGGTTTTGATTGAACTCGAACCCCCGTTTGGTGACTCTTACATCGTGGTGGGAAGAGGAGAACAGCAGATAAACCATCACTGGCACAAATCTGGGAGCAGCATTGGAAAGGCCTTTACCACCACACTCAGAGGAGCTCAACGACTCGCAGCTCTTGGAGATACTGCTTGGGATTTTGGATCAGTTGGAGGGGTTTTCACCTCAGTGGGGAAAGCCATACACCAAGTCTTTGGAGGAGCTTTTAGATCACTCTTTGGAGGGATGTCCTGGATCACACAGGGACTTCTGGGAGCTCTTCTGTTGTGGATGGGAATCAATGCCCGTGACAGGTCAATTGCTATGACGTTTCTTGCGGTTGGAGGAGTTTTGCTCTTCCTTTCGGTCAACGTCCATGCTGACACAGGCTGTGCCATTGATATTGGCAGGCAAGAGCTCCGGTGCGGAAGTGGAGTGTTTATCCACAACGATGTGGAAGCCTGGATGGATCGTTACAAGTTCTACCCGGAGACGCCACAGGGCCTAGCAAAAATTATCCAGAAAGCACATGCAGAAGGAGTCTGCGGCTTGCGTTCCGTTTCCAGACTCGAGCACCAAATGTGGGAAGCCATTAAGGATGAGCTGAACACCCTGTTGAAAGAGAATGGAGTCGACTTGAGTGTCGTGGTGGAAAAACAGAATGGGATGTACAAAGCAGCACCAAAACGTTTGGCTGCCACCACCGAAAAACTGGAGATGGGTTGGAAGGCTTGGGGCAAGAGTATCATCTTTGCGCCAGAACTAGCTAACAACACCTTTGTCATCGACGGTCCTGAGACTGAGGAATGCCCAACGGCCAACCGAGCATGGAACAGTATGGAGGTAGAGGACTTTGGATTTGGACTGACAAGCACTCGCATGTTCCTGAGGATTCGGGAAACGAACACAACGGAATGCGACTCGAAGATCATAGGAACCGCCGTCAAGAACAACATGGCTGTGCATAGTGATCTATCATACTGGATAGAGAGCGGACTCAACGACACCTGGAAGCTTGAGAGGGCGGTTCTAGGAGAAGTCAAATCATGCACCTGGCCAGAAACCCACACTCTGTGGGGTGATGGAGTTCTGGAAAGTGATCTCATCATACCCATCACCTTGGCAGGACCCAGAAGCAACCACAACAGGAGACCAGGGTACAAAACTCAGAACCAAGGCCCATGGGATGAGGGGCGCGTCGAGATTGACTTTGACTATTGCCCAGGAACAACAGTAACTATAAGTGACAGTTGCGAACACCGTGGACCTGCGGCACGCACAACCACTGAGAGTGGGAAGCTCATCACAGACTGGTGCTGCAGAAGTTGCACCCTCCCTCCACTGCGCTTCCAGACTGAGAATGGCTGTTGGTATGGAATGGAAATTCGACCTACGCGGCACGACGAAAAGACCCTCGTGCAATCGAGAGTGAATGCATACAACGCCGACATGATTGATCCTTTTCAGTTGGGCCTTATGGTCGTGTTCTTGGCCACCCAGGAGGTCCTTCGCAAGAGGTGGACGGCCAAGATCAGCATTCCAGCTATCATGCTTGCACTCCTAGTCCTAGTGTTTGGGGGTATTACGTACACTGATGTCCTGCGATATGTCATTCTCGTCGGCGCCGCGTTTGCTGAAGCAAACTCAGGAGGAGACGTCGTGCACTTGGCACTTATGGCTACATTCAAGATTCAACCAGTCTTTCTGGTGGCTTCCTTTTTGAAGGCAAGGTGGACCAACCAAGAGAGTATTTTGCTCATGCTTGCAGCTGCTTTCTTCCAAATGGCTTACTATGACGCCAAGAATGTTCTGTCATGGGAAGTGCCTGACGTTTTGAACTCTCTCTCCGTTGCGTGGATGATTCTCAGAGCTATAAGCTTCACCAACACTTCAAATGTGGTGGTGCCGCTGCTGGCCCTTTTGACACCTGGATTGAAATGCTTAAACCTTGATGTGTACAGAATTTTGCTACTCATGGTTGGAGTTGGAAGCCTCATCAAAGAAAAAAGGAGCTCTGCAGCAAAAAAGAAAGGAGCTTGCCTCATCTGCCTAGCGCTGGCGTCTACAGGAGTGTTCAATCCAATGATACTTGCAGCTGGGCTAATGGCTTGCGACCCCAACCGCAAGCGGGGCTGGCCTGCTACAGAAGTGATGACTGCAGTTGGACTCATGTTTGCCATCGTTGGGGGTCTGGCAGAACTTGACATAGATTCTATGGCTATCCCCATGACCATCGCCGGACTTATGTTCGCGGCATTTGTCATCTCTGGAAAGTCAACAGACATGTGGATTGAGAGGACGGCTGACATTACTTGGGAGAGTGATGCTGAAATCACAGGCTCTAGCGAAAGAGTAGATGTGAGGCTGGATGATGATGGAAATTTTCAACTGATGAATGACCCCGGGGCACCATGGAAAATTTGGATGCTTAGGATGGCCTGCCTGGCGATAAGTGCCTACACACCTTGGGCAATTCTCCCCTCGGTCATCGGATTCTGGATAACCCTTCAGTACACAAAGAGAGGAGGTGTTCTTTGGGACACACCATCACCCAAGGAGTACAAGAAGGGTGATACCACCACTGGCGTTTACAGAATCATGACTCGAGGTCTGCTTGGCAGTTACCAAGCTGGAGCCGGAGTGATGGTAGAGGGGGTGTTCCACACACTATGGCACACCACTAAGGGAGCTGCTCTCATGAGTGGTGAGGGACGTCTGGATCCCTACTGGGGGAGCGTGAAAGAGGACCGACTTTGCTATGGGGGGCCATGGAAACTCCAACATAAATGGAATGGACATGATGAGGTCCAAATGATTGTCGTGGAGCCAGGGAAAAATGTGAAAAACGTCCAGACCAAGCCCGGAGTGTTTAAGACACCAGAAGGAGAAATTGGGGCAGTTACGCTAGACTATCCTACCGGAACGTCAGGTTCCCCCATTGTAGACAAAAATGGAGATGTGATTGGATTGTATGGGAACGGCGTCATCATGCCTAATGGTTCATACATAAGCGCCATTGTGCAAGGAGAGAGAATGGAAGAACCGGCACCAGCTGGCTTCGAACCTGAAATGTTGAGGAAGAAACAGATCACTGTCCTTGATCTGCACCCCGGAGCAGGAAAGACACGCAAGATACTTCCCCAAATCATCAAGGAGGCCATCAACAAAAGATTGAGGACGGCTGTGCTGGCACCCACCAGGGTCGTTGCTGCTGAGATGTCTGAGGCCCTGAGAGGACTTCCCATTCGGTACCAAACCTCAGCAGTGCACAGAGAGCACAGTGGAAATGAGATCGTTGATGTCATGTGCCATGCCACCCTCACACACAGGCTGATGTCTCCACACAGAGTCCCCAACTACAACCTGTTCATAATGGATGAAGCCCATTTCACGGATCCAGCGAGCATCGCAGCCAGAGGATACATAGCAACCAAGGTTGAATTGGGCGAAGCCGCCGCGATTTTCATGACGGCAACGCCACCCGGGACTTCTGACCCCTTTCCAGAGTCTAATGCTCCTATCTCGGACATGCAAACAGAGATCCCAGACAGAGCCTGGAACACTGGATATGAATGGATAACTGAGTATGTTGGAAAGACCGTTTGGTTTGTTCCAAGTGTGAAAATGGGAAATGAGATTGCCCTCTGTCTGCAACGGGCGGGGAAGAAGGTTATCCAGCTGAACAGAAAGTCCTATGAGACAGAGTACCCCAAGTGTAAGAACGATGATTGGGATTTTGTCATCACCACAGACATATCAGAAATGGGAGCCAACTTCAAGGCGAGCAGAGTGATCGACAGCCGCAAAAGCGTGAAACCCACCATCATTGAGGAAGGTGATGGAAGAGTCATCCTGGGGGAACCCTCAGCCATCACGGCTGCCAGCGCTGCTCAGCGGAGAGGACGCATAGGAAGAAACCCATCACAAGTTGGTGATGAGTATTGCTATGGAGGGCACACAAATGAGGATGATTCCAACTTTGCTCACTGGACAGAGGCTCGCATCATGCTAGACAACATCAACATGCCGAATGGTCTGGTGGCTCAACTATATCAGCCTGAGCGCGAGAAGGTGTACACCATGGACGGGGAATACAGGCTCAGAGGGGAAGAACGGAAGAACTTCCTTGAATTCCTGAGAACAGCTGATTTACCAGTCTGGCTCGCTTACAAAGTGGCAGCAGCAGGAATATCATACCATGACCGGAAATGGTGCTTTGATGGACCTCGAACCAACACGATTCTTGAAGACAACAATGAAGTTGAAGTCATCACGAAGTTGGGTGAGAGAAAGATCCTAAGACCCAGGTGGGCAGATGCTAGAGTGTACTCAGACCATCAAGCTCTAAAGTCCTTCAAAGATTTTGCATCGGGGAAACGATCACAAATCGGGCTCGTTGAGGTGCTCGGGAGAATGCCTGAACACTTCATGGTGAAAACTTGGGAGGCATTGGACACGATGTATGTGGTGGCGACCGCTGAAAAAGGAGGCCGAGCTCACAGGATGGCTCTTGAGGAGCTACCGGACGCCCTTCAGACAATAGTTTTGATTGCACTATTGAGTGTGATGTCCTTAGGTGTGTTTTTTCTACTCATGCAAAGGAAGGGCATTGGTAAGATTGGCTTGGGAGGAGTAATCTTAGGAGCTGCCACATTCTTCTGCTGGATGGCTGAAGTCCCAGGAACGAAAATAGCAGGCATGCTCCTGCTTTCCCTGCTGCTCATGATTGTTTTGATTCCGGAGCCGGAAAAGCAGCGCTCACAGACTGATAACCAGCTCGCCGTGTTCTTGATCTGTGTGCTCACACTGGTCGGCGCCGTGGCTGCCAATGAAATGGGCTGGCTGGACAAGACCAAGAATGACATTGGCAGCCTGTTGGGGCACAGGCCAGAAGCTAGAGAGACGACCCTGGGAGTTGAGAGCTTCTTACTTGATCTGCGGCCGGCCACGGCATGGTCGCTCTATGCCGTAACGACAGCCGTTCTCACCCCTTTGCTGAAGCATCTAATCACGTCAGACTACATCAACACTTCGTTGACCTCAATAAACGTCCAAGCCAGCGCGTTGTTCACTTTGGCCAGAGGCTTCCCTTTTGTGGACGTTGGTGTGTCAGCTCTCTTGCTGGCGGTCGGGTGCTGGGGTCAGGTGACTCTGACTGTGACTGTGACTGCAGCTGCTCTGCTCTTTTGCCACTATGCTTACATGGTGCCAGGCTGGCAAGCGGAAGCCATGCGATCTGCCCAGCGGCGGACAGCTGCTGGCATCATGAAAAATGTAGTGGTGGATGGGATCGTGGCCACTGATGTACCTGAACTTGAACGAACAACTCCAGTCATGCAGAAAAAAGTTGGACAGATCATATTGATCTTGGTATCAATGGCCGCGGTGGTCGTCAATCCATCAGTGAGAACCGTCAGAGAGGCCGGAATTCTGACTACAGCAGCAGCAGTCACCCTATGGGAGAATGGTGCTAGTTCAGTGTGGAATGCAACGACAGCTATTGGCCTTTGTCACATCATGCGAGGAGGATGGCTCTCGTGTCTCTCCATCATGTGGACTCTCATCAAAAACATGGAGAAACCAGGCCTCAAGAGGGGTGGAGCCAAAGGACGCACGCTAGGGGAAGTTTGGAAGGAGAGACTCAACCACATGACGAAGGAAGAATTTACCAGATACAGAAAAGAAGCCATCACTGAAGTTGACCGCTCCGCAGCAAAACATGCTAGGAGAGAGGGAAACATCACTGGAGGCCACCCAGTCTCACGGGGAACCGCGAAATTACGGTGGTTAGTGGAAAGGCGTTTCCTCGAGCCAGTGGGAAAGGTTGTGGATCTCGGGTGTGGTAGAGGCGGCTGGTGCTATTACATGGCTACCCAGAAGAGGGTACAGGAAGTGAAAGGGTACACGAAAGGAGGACCTGGCCATGAAGAACCACAACTGGTGCAGAGCTATGGTTGGAATATTGTTACCATGAAGAGTGGAGTCGACGTCTTCTACAGACCATCAGAAGCGAGCGACACACTGCTCTGTGACATTGGAGAGTCATCGTCAAGTGCCGAGGTAGAAGAACACCGCACCGTCCGTGTCCTGGAGATGGTGGAAGATTGGTTGCACAGAGGACCGAAGGAATTCTGCATCAAAGTGCTATGCCCTTACATGCCCAAAGTGATTGAGAAGATGGAAACACTCCAAAGGCGATATGGAGGTGGCCTTATAAGAAACCCCCTTTCACGCAACTCTACCCATGAGATGTACTGGGTGAGCCACGCTTCAGGCAATATCGTCCACTCCGTCAACATGACAAGCCAGGTGCTTCTGGGGAGGATGGAAAAGAAAACATGGAAGGGACCCCAGTTTGAGGAAGATGTCAACTTGGGAAGTGGAACGCGGGCAGTAGGGAAGCCTCTCCTCAATTCTGATACTAGCAAGATCAAGAACCGAATTGAGAGGCTGAAGAAAGAATACAGCTCCACATGGCACCAGGATGCGAACCACCCCTACAGGACCTGGAACTACCACGGAAGCTATGAAGTGAAACCAACCGGCTCAGCCAGCTCCCTTGTGAATGGGGTAGTCAGATTACTCTCAAAACCATGGGACACTATCACCAATGTGACCACGATGGCCATGACAGACACCACTCCTTTCGGTCAACAACGAGTGTTCAAGGAAAAGGTGGACACAAAGGCTCCAGAGCCTCCAGAAGGAGTCAAATACGTCCTCAATGAGACCACGAACTGGCTGTGGGCTTTTTTAGCCCGCGATAAGAAACCCAGGATGTGTTCCCGGGAGGAATTTATTGGAAAAGTCAACAGTAATGCCGCCCTAGGAGCGATGTTTGAAGAACAGAACCAATGGAAGAACGCCCGGGAAGCTGTAGAGGATCCAAAGTTTTGGGAGATGGTGGATGAGGAGCGTGAAGCGCATCTCCGTGGAGAATGCAACACCTGCATCTACAACATGATGGGAAAGAGAGAGAAGAAGCCTGGAGAGTTCGGCAAAGCTAAAGGCAGCAGAGCCATCTGGTTCATGTGGCTGGGGGCCCGCTTCCTGGAGTTTGAAGCTCTCGGATTCCTCAATGAAGACCACTGGCTGGGTAGGAAGAACTCAGGAGGAGGAGTTGAAGGCTTAGGACTGCAGAAGCTCGGGTACATCTTGAAGGAAGTTGGAACAAAGCCTGGAGGAAAGGTTTACGCTGATGATACCGCAGGCTGGGACACACGCATCACCAAAGCTGACCTCGAGAATGAAGCGAAGGTTCTTGAACTGCTGGATGGAGAACATCGACGTTTAGCGCGGTCCATCATCGAGCTCACATACCGACACAAAGTCGTGAAAGTGATGAGGCCAGCGGCCGACGGGAAAACTGTGATGGACGTCATCTCTAGAGAGGATCAGAGAGGAAGCGGTCAGGTAGTGACTTACGCCCTGAACACCTTCACCAATCTAGCAGTTCAGCTGGTCAGAATGATGGAGGGGGAGGGGGTCATTGGACCCGATGATGTTGAAAAACTGGGAAAAGGAAAAGGCCCTAAGGTCAGAACCTGGCTGTTTGAGAATGGCGAGGAGCGTCTCAGTCGCATGGCCGTCAGCGGTGATGACTGCGTGGTGAAACCTTTGGACGACCGCTTCGCCACATCACTACACTTCCTAAATGCTATGTCAAAGGTCCGCAAAGACATCCAGGAATGGAAACCCTCGACGGGGTGGTATGACTGGCAGCAGGTTCCATTCTGTTCAAACCATTTCACGGAACTGATCATGAAGGACGGCAGGACGCTGGTGGTCCCGTGTCGTGGACAAGACGAGTTGATTGGACGTGCCAGGATCTCTCCAGGGGCTGGATGGAATGTGCGCGACACCGCCTGCCTGGCGAAGTCATACGCGCAGATGTGGCTGCTGCTTTATTTCCACCGTAGAGACCTGAGATTGATGGCCAATGCCATCTGTTCCGCTGTGCCTGCCAACTGGGTTCCCACAGGGCGTACCACTTGGTCGATCCACGCAAAAGGAGAATGGATGACGACGGAAGACATGCTCGCAGTCTGGAACAGAGTGTGGATTGAGGAGAATGAGTGGATGGAAGACAAAACACCAGTTGAGAGGTGGAGTGATGTTCCATACTCTGGAAAGAGAGAGGACATTTGGTGTGGCAGTTTGATCGGCACACGAACCCGCGCCACTTGGGCTGAAAATATCCATGTGGCAATCAATCAGGTCCGTTCAGTGATTGGAGAAGAGAAGTATGTGGATTACATGAGCTCCTTGAGGAGGTATGAAGACACCATTGTAGTGGAGGACACTGTTTTGTAAAAGATAGTATTATAGTTAGTTTAGTGTAAATAGGATTTATTGAGAATGGAAGTCAGGCCAGATTAATGCTGCCACCGGAAGTTGAGTAGACGGTGCTGCCTGCGGCTCAACCCCAGGAGGACTGGGTGACCAAAGCTGCGAGGTGATCCACGTAAGCCCTCAGAACCGTCTCGGAAGGAGGACCCCACGTGCTTTAGCCTCAAAGCCCAGTGTCAGACCACACTTTAATGTGCCACTCTGCGGAGAGTGCAGTCTGCGATAGTGCCCCAGGTGGACTGGGTTAACAAAGGCAAAACATCGCCCCACGCGGCCATAACCCTGGCTATGGTGTTAACCAGGGAGAAGGGACTAGAGGTTAGAGGAGACCCCGCGTAAAAAAGTGCACGGCCCAACTTGGCTGAAGCTGTAAGCCAAGGGAAGGACTAGAGGTTAGAGGAGACCCCGTGCCAAAAACACCAAAAGAAACAGCATATTGACACCTGGGATAGACTAGGGGATCTTCTGCTCTGCACAACCAGCCACACGGCACAGTGCGCCGACATAGGTGGCTGGTGGTGCTAGAACACAGGATCT");
  
	vec str> m;
	for(size_t i=0;i<s1.size()-x;i++)
	{	for(size_t j=0;j<s2.size()-x;++j)
    {if(s1.s i, x)==s2.s j, x))
    {m.p s1.s i, x));break;}
    }
    }
	for(size_t i=0; i<m.size();i++)
		std::cout<<m[i]<<std::endl;
	system("pause");
	
    return 0;
	
}

this project is for a science and engineering fair... i did the user interface coding... this process took for ever because i just learned C++, my first programming language. i learned it as i was programming, which wasnt a smart thing to do.

when i explain to my judges my problem, i wll refer to you as an c++ "expert" who helped me in the process... and i might end up editing it later.

i studied the code, i get it, and i can do it now. Thanks to the both of you. Thank you.

i will study it more after tomorrow, to improve it further.
jobobshishkabob is offline   Reply With Quote
Old Feb 17th, 2006, 10:12 PM   #16
Jimbo
Battle Programmer
 
Jimbo's Avatar
 
Join Date: Feb 2006
Location: Bellevue, WA, USA
Posts: 748
Rep Power: 3 Jimbo is on a distinguished road
Even if you understand how my code works, please write it out yourself. My version was intentionally written in very poor style so that you would not use it as I wrote it. Even if you keep the same algorithm, just write it out again so that it's readable and so that you surely understand how it works.

You could also try modifying it to report longer matches as a whole and only reporting them once (as opposed to in decreasing pieces), or also eliminating duplicate matches.
Jimbo is offline   Reply With Quote
Old Feb 17th, 2006, 10:33 PM   #17
jobobshishkabob
Programmer
 
Join Date: Jan 2006
Location: Texas
Posts: 36
Rep Power: 0 jobobshishkabob is on a distinguished road
i will this weekend... just for the fair i need an output, they wont really look at my code at all.

thanks.
jobobshishkabob is offline   Reply With Quote
Old Feb 18th, 2006, 1:54 AM   #18
titaniumdecoy
Expert Programmer
 
titaniumdecoy's Avatar
 
Join Date: Nov 2005
Posts: 837
Rep Power: 3 titaniumdecoy is on a distinguished road
Send a message via AIM to titaniumdecoy
I'm interested in finding out what the fastest algorithm for this would be.

Is Jimbo's code faster than mine? It seems to me they both make about the same number of char/string comparisons. If it is faster, why? And how might either algorithm be improved?
titaniumdecoy is offline   Reply With Quote
Old Feb 18th, 2006, 6:03 AM   #19
DaWei
Resident Grouch
 
DaWei's Avatar
 
Join Date: Jun 2005
Posts: 6,453
Rep Power: 10 DaWei is on a distinguished road
Shame on you. This is why asking for help with homework is against the forum's rules. You have done the OP no favors. He says he has read them and understands. He turns right around and admits that he doesn't understand, thus must copy them. You have probably also encouraged him to goof off again, and wait until the last couple of days, the next time he receives an assignment. Sure, you want to show off your skills. Wait a few days until after the assignment is past due. If the OP is really interested, he'll continue to learn after the fact, and may learn to apply himself more appropriately, as well.
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code.
Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers
DaWei is offline   Reply With Quote
Old Feb 18th, 2006, 6:34 AM   #20
jobobshishkabob
Programmer
 
Join Date: Jan 2006
Location: Texas
Posts: 36
Rep Power: 0 jobobshishkabob is on a distinguished road
Quote:
Originally Posted by DaWei
Shame on you. This is why asking for help with homework is against the forum's rules. You have done the OP no favors. He says he has read them and understands. He turns right around and admits that he doesn't understand, thus must copy them. You have probably also encouraged him to goof off again, and wait until the last couple of days, the next time he receives an assignment. Sure, you want to show off your skills. Wait a few days until after the assignment is past due. If the OP is really interested, he'll continue to learn after the fact, and may learn to apply himself more appropriately, as well.

no no... im not going to just walk away... i am going to do this today. i will edit the code, and make it more functional. if you dont believe me, thats your problem... but i said i wouldnt just take it and walk away... i am going to change it up. i am REALLY interested. thats why i chose this project in the first page. so if you think im just a goof of, go ahead... ill show you... just wait... youll have yourself a new code... or somewhat new because its going to be based on his....

and no, its not faster, its not much slower either...
jobobshishkabob is offline   Reply With Quote
Reply

Bookmarks

« Previous Thread in Forum | Next Thread in Forum »

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump




DaniWeb IT Discussion Community
All times are GMT -5. The time now is 6:04 PM.

Powered by vBulletin® Version 3.7.0, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Copyright ©2007 DaniWeb® LLC