Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- ifstream in("kps.in");
- ofstream out("kps.out");
- int main()
- {
- string s;
- int t;
- in>>t;
- if(t==1)
- {
- in>>s;
- int k=0;
- string temp1,temp2;
- for(int i=0,j=s.size()-1;i<j;i++,j--)
- {
- temp1+=s[i],temp2+=s[j];
- reverse(temp2.begin(),temp2.end());
- if(temp1==temp2)
- k=temp1.size();
- reverse(temp2.begin(),temp2.end());
- }
- out<<k;
- }
- else
- {
- vector<vector<string>> v(102);
- int maxi=0;
- while(in>>s)
- {
- int k=0;
- string temp1,temp2;
- for(int i=0,j=s.size()-1;i<j;i++,j--)
- {
- temp1+=s[i],temp2+=s[j];
- reverse(temp2.begin(),temp2.end());
- if(temp1==temp2)
- k=temp1.size();
- reverse(temp2.begin(),temp2.end());
- }
- maxi=max(maxi,k);
- v[k].push_back(s);
- }
- int k=maxi;
- for(int i=0;i<=k;i++)
- sort(v[i].begin(),v[i].end());
- for(int i=0;i<=k;i++)
- {
- out<<v[i].size()<<" ";
- for(int j=0;j<v[i].size();j++)
- out<<v[i][j]<<" ";
- out<<'\n';
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement