Advertisement
Guest User

Untitled

a guest
May 29th, 2015
261
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.61 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. template <class T>
  4. class Read
  5. {
  6.   std::string& s;
  7.  
  8.   public:
  9.   Read(std::string& s) : s(s) {}
  10.   void operator()(const T& chr)
  11.   {
  12.     if (isalpha(chr))
  13.       s += chr;
  14.   }
  15. };
  16.  
  17. int main()
  18. {
  19.   freopen("STL3.in", "r", stdin);
  20.   std::string s, s_rev;
  21.   for_each(std::istream_iterator <char> (std::cin), std::istream_iterator <char> (), Read<char> (s));
  22.   std::transform(s.begin(), s.end(), s.begin(), tolower);
  23.   s_rev = s;
  24.   std::reverse(s_rev.begin(), s_rev.end());
  25.   if (s == s_rev)
  26.     std::cout << "palindrom";
  27.   else
  28.     std::cout << "not palindrom";
  29.   return 0;
  30. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement