int main(int argc, char *argv[]) { if (argc < 2) { cout<< "Invalid number of arguments.\n Usage: \n "<< argv[0] << " -p1 n <filename>\n OR \n " << argv[0] <<" -p2 <filename>\n "; } else if (strcmp(argv[1], "-p1") == 0) { // Code for reading input for Problem 1. if (argc != 4) { cout << "Invalid number of arguments.\nUsage: " << argv[0] << " -p1 n <filename>\n"; return -1; } int n = atoi(argv[2]); Vote* allVotes[n]; populateVotesArray(allVotes, argv[3]); //Helper loop for printing votes read from file. for (int i=0; i<n; i++){ allVotes[i]->print(); } // Call to findLeader. int leaderIndex = findLeader(allVotes,n); if (leaderIndex >= 0 && leaderIndex < n) { allVotes[leaderIndex]->print(); } else if (leaderIndex == -1) { cout <<"No leader.\n"; } else if (leaderIndex == -2) { cout <<"findLeader not implemented\n"; } return 0; } else if (strcmp(argv[1], "-p2") == 0 ) { // Code for reading input for Problem 2. if(argc != 3) { cout << "Invalid number of arguments.\nUsage: " << argv[0] << " -p2 <filename>\n"; return -1; } Matrix mat(argv[2]); //Helper function for printing matrix read from file. mat.print(); // Call to findMaxSubmatrixSum. int total = findMaxSubmatrixSum(mat); cout << endl << "Total = " << total << endl; return 0; } else { cout <<"Usage: \n "<< argv[0] << " -p1 n <filename>\n OR \n " << argv[0] <<" -p2 <filename>\n "; } }
int main(int argc, char *argv[]) { struct wormCdnaIterator *it; struct dnaSeq *seq; struct wormCdnaInfo info; char *cdnaName; struct cdaAli *ali; int cdnaCount = 0; int leaderPos; struct leader *leader; int leaderSize; struct leaderHit *hitList = NULL, *hit; int estHitCount = 0; int slen; wormSearchAllCdna(&it); while (nextWormCdnaAndInfo(it, &seq, &info)) { ++cdnaCount; if (cdnaCount%1000 == 0) { printf("Processing cDNA %d\n", cdnaCount); } cdnaName = info.name; slen = strlen(cdnaName); if ((ali = wormCdaAli(cdnaName)) != NULL) { if (cdnaName[slen-2] == '.' && cdnaName[slen-1] == '5') reverseComplement(seq->dna, seq->size); if (findLeader(seq, &leader, &leaderPos, &leaderSize)) { uglyf("Got %d of %d bases of %s leader at %d of %s\n", leaderSize, leader->size, leader->name, leaderPos, cdnaName); AllocVar(hit); hit->cdnaName = cloneString(cdnaName); hit->cdnaSize = seq->size; hit->hitPos = leaderPos; hit->hitSize = leaderSize; hit->leader = leader; slAddHead(&hitList, hit); } #ifdef SOON #endif /* SOON */ cdaFreeAli(ali); } wormFreeCdnaInfo(&info); freeDnaSeq(&seq); } freeWormCdnaIterator(&it); slReverse(&hitList); for (hit = hitList; hit != NULL; hit = hit->next) { char *name = hit->cdnaName; int nameLen = strlen(name); if (name[nameLen-2] == '.' && isdigit(name[nameLen-1])) { printf("%s hits %s at base %d of %d for %d bases\n", hit->leader->name, hit->cdnaName, hit->hitPos, hit->cdnaSize, hit->hitSize); ++estHitCount; } } printf("%d hits in all, %d in ESTs\n", slCount(hitList), estHitCount); return 0; }
n = PRpreprocess(n); #endif maxk = minCap; ForAllLeaderNodes(v) /* put input in right place in data structures */ { v->s_first = v->first; ForAllArcs(v, a) { a->s_prev = a->prev; a->s_next = a->next; a->s_cap = a->cap; } } pack = gabow_pack(findLeader(nodes), n, nodes, maxk); cut = pack->k; free_packing(pack); stop = timer(); printf("c ttime: %14.2f capacity: " stop-start); fprintf_wt(stdout, "%12", cut); printf("\n\n"); freegraph(); return 0; }