コード例 #1
0
void testQuickSort(){
    cout<<"***********************"<<endl;
    cout<<"******quick sort*******"<<endl;
    Deque<int> deque;
    deque.push_front(10);
    deque.push_back(3);
    deque.push_back(2);
    deque.push_front(4);
    deque.output();
    hds::quickSort(deque.begin(),deque.end());
    deque.output();
    hds::quickSort(deque.begin(),deque.end(),hds::Greater<int>());
    deque.output();

    deque.clear();
    for(int i=0;i < 20;++i){
        deque.push_back(i+10);
    }
    deque.insert(deque.begin()+10,2);
    deque.insert(deque.begin()+2,34);
    deque.insert(deque.begin()+16,6);
    deque.insert(deque.begin()+13,78);
    deque.output();
    hds::quickSort(deque.begin(),deque.end(),hds::Greater<int>());
    deque.output();
    cout<<"***********************"<<endl;
}
コード例 #2
0
ファイル: 10194.cpp プロジェクト: liuhb86/uva
int main(){

	int n;
	cin>>n;
	string s;
	getline(cin,s);
	Deque dteams;
	Map mteams;
	bool first=true;
	for(int i=0;i<n;i++){
		dteams.clear(); mteams.clear();
		if(first) first=false; else cout<<endl;
		getline(cin,s);
		cout<<s<<endl;
		int numTeam,numMatch;
		cin>>numTeam;
		getline(cin,s);
		for(int j=0;j<numTeam;j++){
			getline(cin,s);
			dteams.push_back(Team(s));
			mteams.insert(make_pair(s,&(dteams.back())));
		}
		cin>>numMatch;
		getline(cin,s);
		for(int j=0;j<numMatch;j++){
			Team* t1,*t2;
			int score1,score2;
			getline(cin,s,'#');
			t1=mteams.find(s)->second;
			cin>>score1;
			getline(cin,s,'@');
			cin>>score2;
			getline(cin,s,'#');
			getline(cin,s);
			t2=mteams.find(s)->second;
			t1->goalScored+=score1;
			t1->goalAgainst+=score2;
			t2->goalScored+=score2;
			t2->goalAgainst+=score1;
			if(score1>score2){t1->win++;t2->lose++;}
			else if(score1<score2){t1->lose++;t2->win++;}
			else {t1->tie++;t2->tie++;}
		}
		sort(dteams.begin(),dteams.end());
		int rank=1;
		for(Deque::iterator it=dteams.begin();it!=dteams.end();it++,rank++){
			cout<<rank<<") "<<it->name<<" "<<it->point()<<"p, "<<it->total()<<
				"g ("<<it->win<<"-"<<it->tie<<"-"<<it->lose<<"), "<<
				it->goalDiff()<<"gd ("<<it->goalScored<<"-"<<it->goalAgainst<<")"<<endl;
		}
		//cout<<endl;
	}	
}