Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <string.h>
- using namespace std;
- ifstream fin ("datapal.in");
- ofstream fout ("datapal.out");
- int str_to_int(char an[4])
- {
- int rez=0;
- for(int i=0; i<4; i++)
- {
- rez=rez*10+an[i]-'0';
- }
- return rez;
- }
- int main()
- {
- char data[10];
- char data_inv[10];
- char an[4];
- int nr_pali=0,n,secole_palindrom[101]= {0};
- int maxx=0;
- fin>>n;
- fin.get();
- for(int i=0; i<n; i++)
- {
- fin.getline(data,10);
- strcpy(an,data+4);
- strcpy(data_inv,data);
- for(int i=0;i<strlen(data)/2;i++)
- {
- swap(data_inv[i],data_inv[strlen(data)-1-i]);
- }
- int secol=str_to_int(an)/100+1;
- ///cout<<"anul "<<an<<" se afla in secolul "<<secol<<"\n";
- if(strcmp(data,data_inv)==0)///strrev returneaza inversul unui string
- {
- nr_pali++;
- secole_palindrom[secol]++;
- if(secole_palindrom[secol]>maxx)
- {
- maxx=secole_palindrom[secol];
- }
- }
- }
- cout<<nr_pali<<"\n";
- for(int i=0;i<100;i++)
- {
- if(secole_palindrom[i]==maxx)
- {
- cout<<i<<" ";
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement