Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <fstream>
- #include <cstring>
- using namespace std;
- ifstream cin("rime.in");
- ofstream cout("rime.out");
- char m[501][21];
- char suf[501][10];
- int main()
- {
- int n;
- cin >> n;
- for(int i = 1 ; i <= n ; ++i)
- {
- cin >> m[i];
- int j = strlen(m[i]);
- j--;
- while(!strchr("qwertyuiopasdfghjklzxcvbnm" , m[i][j]) && j >= 0)
- j--;
- if(m[i][j]<=0)
- i--;
- else
- j++ , m[i][j]='\0';
- }
- for(int i = 1 ; i < n ; ++i)
- for(int j = i+1 ; j <= n ; ++j)
- if(strcmp(m[i] , m[j]) > 0)
- swap(m[i] , m[j]);
- for(int i = 1 ; i <= n ; ++i)
- {
- int x = strlen(m[i]);
- int j = strlen(m[i]);
- j--;
- if(strchr("aeiou" , m[i][j]))
- {
- if(strlen(m[i]) > 1)
- j--;
- while(!strchr("aeiou" , m[i][j]) && j > 0)
- j--;
- int q = 0;
- for(int k = j ; k < x ; ++k)
- suf[i][q] = m[i][k] , q++;
- suf[i][q]='\0';
- }
- else
- {
- if(strlen(m[i]) > 1)
- j--;
- while(!strchr("aeiou" , m[i][j]) && j > 0)
- j--;
- int q = 0;
- for(int k = j ; k < x ; ++k)
- suf[i][q]=m[i][k] , q++;
- suf[i][q]='\0';
- }
- }
- int cnt = 0;
- for(int i = 1 ; i <= n ; ++i)
- {
- bool ok = true;
- for(int j = i+1 ; j <= n ; ++j)
- if(strcmp(suf[i] , suf[j])==0)
- ok=false;
- if(ok)
- cnt++;
- }
- cout << cnt << '\n';
- for(int i = 1 ; i <= n ; ++i)
- {
- if(suf[i][0]!='0')
- {
- cout << m[i] << ' ';
- for(int j = i + 1 ; j <= n ; ++j)
- if(strcmp(suf[i] , suf[j]) == 0)
- cout << m[j] << ' ' , suf[j][0]='0';
- cout << endl;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement