Advertisement
Guest User

Untitled

a guest
Feb 25th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.93 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. bool check1(char a, char b)
  6. {
  7. if (a >= 'a' && a <= 'z' && b >= 'A' && b <= 'Z')
  8. {
  9. if (b == a - 'a' + 'A')
  10. return true;
  11. }
  12.  
  13. if (b >= 'a' && b <= 'z' && a >= 'A' && a <= 'Z')
  14. {
  15. if (a == b - 'a' + 'A')
  16. return true;
  17. }
  18. return false;
  19. }
  20.  
  21. bool check2(char a, char b)
  22. {
  23. if (a =='O')
  24. {
  25. if (b == '0' || b == 'o')
  26. return true;
  27. }
  28.  
  29. if (a =='o')
  30. {
  31. if (b == '0' || b == 'O')
  32. return true;
  33. }
  34.  
  35. if (a =='0')
  36. {
  37. if (b == 'O' || b == 'o')
  38. return true;
  39. }
  40. return false;
  41. }
  42.  
  43. bool check3(char a, char b)
  44. {
  45. if (a == '1')
  46. {
  47. if (b == 'I' || b == 'l' || b == 'i' || b == 'L')
  48. return true;
  49. }
  50.  
  51. if (a == 'l')
  52. {
  53. if (b == 'I' || b == '1' || b == 'i' || b == 'L')
  54. return true;
  55. }
  56.  
  57. if (a == 'I')
  58. {
  59. if (b == '1' || b == 'l' || b == 'i' || b == 'L')
  60. return true;
  61. }
  62.  
  63. if (a == 'i')
  64. {
  65. if (b == '1' || b == 'l' || b == 'I' || b == 'L')
  66. return true;
  67. }
  68.  
  69. if (a == 'L')
  70. {
  71. if (b == '1' || b == 'l' || b == 'I' || b == 'i')
  72. return true;
  73. }
  74. return false;
  75. }
  76.  
  77. int main()
  78. {
  79. string s,x;
  80. int n;
  81. cin >> s >> n;
  82. bool ans = true;
  83.  
  84. for (int i = 1; i <= n; i++)
  85. {
  86. cin >> x;
  87. if (x.size() != s.size())
  88. continue;
  89.  
  90. if (s == x)
  91. {
  92. ans = false;
  93. continue;
  94. }
  95.  
  96.  
  97. for (int j = 0; j < s.size(); j++)
  98. if (check1(s[j], x[j]) || check2(s[j], x[j]) || check3(s[j], x[j]))
  99. ans = false;
  100. else if (s[j] != x[j])
  101. break;
  102. }
  103.  
  104. if (ans)
  105. cout << "Yes" << endl;
  106. else
  107. cout << "No" << endl;
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement