Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- string s, s1;
- int p[26];
- vector<pair <char, char> > ans;
- int solve()
- {
- forn(i, 26)
- p[i] = i;
- cin >> s >> s1;
- forn(i, s.size())
- {
- if (s[i] == s1[i])
- {
- if (p[s[i] - 'a'] != s[i] - 'a')
- puts("-1"), exit(0);
- }
- else
- {
- if (p[s[i] - 'a'] == s[i] - 'a' && p[s1[i] - 'a'] == s1[i] - 'a')
- {
- p[s[i] - 'a'] = s1[i] - 'a';
- p[s1[i] - 'a'] = s[i] - 'a';
- ans.inb(mk(s[i], s1[i]));
- }
- else
- {
- if (p[s[i] - 'a'] != s1[i] - 'a' || p[s1[i] - 'a'] != s[i] - 'a')
- puts("-1"), exit(0);
- }
- }
- }
- cout << ans.size() << "\n";
- forn(i, ans.size())
- cout << ans[i].X << " " << ans[i].Y << "\n";
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement