Advertisement
Guest User

cuvant2

a guest
Feb 23rd, 2020
267
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.90 KB | None | 0 0
  1. #include <fstream>
  2. #include <string.h>
  3.  
  4. using namespace std;
  5. ifstream fin("cuvant2.in");
  6. ofstream fout("cuvant2.out");
  7. char cuv[256];
  8.  
  9. int sol,mx=0;
  10. bool e_palindrom(int st, int dr)
  11. {
  12. while(st<dr)
  13. {
  14. if(cuv[st]!=cuv[dr])
  15. return false;
  16. st++;
  17. dr--;
  18. }
  19. return true;
  20. }
  21.  
  22. int main()
  23. {
  24. fin>>cuv;
  25. int L=strlen(cuv);
  26. fin.close();
  27. int i,j,s[256],nrmin;
  28. for(i=0;i<L;i++)
  29. if(e_palindrom(0,i))
  30. {
  31. s[i]=1;
  32. mx=max(mx,i+1);;
  33. }
  34. else
  35. {
  36. nrmin=257;
  37. for(j=0;j<i;++j)
  38. if(e_palindrom(j+1,i) && s[j]<nrmin)
  39. {
  40. nrmin=s[j];
  41. mx=max(mx,i-j);
  42. }
  43.  
  44. s[i]=nrmin+1;
  45. }
  46. sol=s[L-1];
  47. fout<<sol<<' '<<mx;
  48. fout.close();
  49. return 0;
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement