摘要

题目链接 难度等级 完成状态 完成分数 最后编辑时间 需要注意
Mr. Kitayuta's Gift ★☆☆☆☆ 答案正确 100 2015-02-23 14:35:49

题意

给一个字符串,要求判断加入一位能否使得其变成回文字符串。

题解

  • 由于数据量很小,所以直接暴力插入,逐个验证就好了。

代码

505A.cpp代码已折叠
展开折叠内容
显示/移除行号
  1. #include <iostream>
  2. #include<cstdio>
  3. #include<algorithm>
  4. #include<cmath>
  5. #include<cstdlib>
  6. #include<climits>
  7. #include<queue>
  8. #include<vector>
  9. #define f(i,n) for(int i=1;i<=n;++i)
  10. #define fi(i,t,n)for(int i=t;i<=n;++i)
  11. #define fd(i,n) for(int i=n;i>=1;--i)
  12. #define fdi(i,t,n) for(int i=n;i>=t;--i)
  13. #define foreach(i,s) for(typeof(s.begin()) i=s.begin();i!=s.end();++i)
  14. #define rforeach(i,s) for(typeof(s.rbegin()) i=s.rbegin();i!=s.rend();++i)
  15. #define si(n) scanf("%d",&n)
  16. #define dsi(n) int n;scanf("%d",&n)
  17. #define llu unsigned long long
  18. #define lld long long
  19. #define ci const int &
  20. using namespace std;
  21. bool isPalindrome(const string &s)
  22. {
  23. for(int i=0;i!=s.size();++i)
  24. if(s[i]!=s[s.size()-1-i])
  25. return false;
  26. return true;
  27. }
  28. int main()
  29. {
  30. string s;
  31. cin>>s;
  32. int u=s.size();
  33. fi(i,0,s.size())
  34. {
  35. for(int p='a';p<='z';++p)
  36. {
  37. string t=s;
  38. t.insert(i,1,p);
  39. //cout<<t<<endl;
  40. if(isPalindrome(t))
  41. {
  42. cout<<t;
  43. return 0;
  44. }
  45. }
  46. }
  47. cout<<"NA";
  48. return 0;
  49. }

著作权声明[编辑]

关于[编辑]