Semior001

bjhfpgfhlkgfh

Dec 25th, 2016
299
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.46 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3. #include <algorithm>
  4. #include <string>
  5. #include <cstring>
  6. #include <vector>
  7. #include <cstdio>
  8. #include <map>
  9. #include <utility>
  10. #include <queue>
  11. #include <stack>
  12. #include <deque>
  13. #include <iomanip>
  14. #include <set>
  15. #include <fstream>
  16. #include <ctime>
  17. #include <cstdlib>
  18.  
  19. #define INF (1<<30)
  20. #define F first
  21. #define S second
  22. #define pb push_back
  23. #define mp make_pair
  24. #define ll long long
  25. #define ld long double
  26. #define lld long long double
  27. #define pii pair<ll,ll>
  28. #define mod 1000000007
  29. #define endl '\n'
  30. #define BYKKKSGIUT
  31.  
  32. // меняй все переменные
  33.  
  34. #define TASKNAME ""
  35.  
  36. using namespace std;
  37.  
  38. char used['z'+100];
  39.  
  40. int main(){
  41.     // freopen(TASKNAME".in", "r", stdin);
  42.     // freopen(TASKNAME".out", "w", stdout);
  43.     ios_base::sync_with_stdio(false);
  44.     cin.tie(NULL);
  45.     string s1,s2;
  46.     cin >> s1;
  47.     cin >> s2;
  48.     int n = s1.length();
  49.     int cnt = 0;
  50.     for(int i = 0; i < n; i++){
  51.         if(s1[i]!=s2[i]){
  52.             if((used[s1[i]]!=0 && used[s1[i]]!=s2[i]) || (used[s2[i]]!=0 && used[s2[i]]!=s1[i])){
  53.                 cout << -1 << endl;
  54.                 return 0;
  55.             }else{
  56.                 if(used[s1[i]]==0 && used[s2[i]] == 0){
  57.                     // cout << s1[i] << ' ' << s2[i] << endl;
  58.                     cnt++;
  59.                 }
  60.                 used[s1[i]] = s2[i];
  61.             }
  62.         }
  63.     }
  64.     cout << cnt << endl;
  65.     set<char> s;
  66.     for(char i = 'a'; i <= 'z'; i++){
  67.         if(used[i]!=0){
  68.             s.insert(used[i]);
  69.             if(s.find(i) == s.end())
  70.                 cout << i << ' ' << used[i] << endl;
  71.         }
  72.     }
  73.     return 0;
  74. }
Add Comment
Please, Sign In to add comment