Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstring>
- using namespace std;
- class TimRakomet{
- protected:
- char ime[30];
- float prosekGolovi;
- public:
- TimRakomet(char* ime,float prosekGolovi){
- strcpy(this->ime,ime);
- this->prosekGolovi=prosekGolovi;
- }
- virtual float dostignuvanje()=0;
- char* getIme(){
- return ime;
- }
- virtual ~TimRakomet(){}
- };
- class Klub:public TimRakomet{
- protected:
- int tituli;
- public:
- Klub(char* ime,float prosekGolovi,int tituli):TimRakomet(ime,prosekGolovi){
- this->tituli=tituli;
- }
- float dostignuvanje(){
- return (prosekGolovi*5) + (tituli*50);
- }
- };
- class Reprezentacija:public TimRakomet{
- protected:
- int rank[3];
- public:
- Reprezentacija(char* ime,float prosekGolovi,int* rank):TimRakomet(ime,prosekGolovi){
- for(int i=0;i<3;i++){
- this->rank[i]=rank[i];
- }
- }
- float dostignuvanje(){
- float d=prosekGolovi*5;
- for(int i=0;i<3;i++){
- if(rank[i]==1){
- d+=60;
- }
- if(rank[i]==2){
- d+=40;
- }
- if(rank[i]==3){
- d+=20;
- }
- }
- return d;
- }
- };
- void najdobar(TimRakomet** timovi,int n){
- TimRakomet* best=timovi[0];
- for(int i=1;i<n;i++){
- if(timovi[i]->dostignuvanje()>best->dostignuvanje()){
- best=timovi[i];
- }
- }
- cout<<best->getIme()<<endl<<best->dostignuvanje()<<endl;
- }
- int main() {
- int n;
- cin >> n;
- TimRakomet** timovi = new TimRakomet*[n];
- for(int i = 0; i < n; ++i) {
- char ime[30];
- float prosekGolovi;
- cin >> ime >> prosekGolovi;
- if(i % 2) {
- int tituli;
- cin >> tituli;
- timovi[i] = new Klub(ime, prosekGolovi, tituli);
- } else {
- int rank[] = {0, 0, 0};
- cin >> rank[0] >> rank[1] >> rank[2];
- timovi[i] = new Reprezentacija(ime, prosekGolovi, rank);
- }
- }
- najdobar(timovi, n);
- for(int i = 0; i < n; ++i) {
- delete timovi[i];
- }
- delete [] timovi;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement