Advertisement
Guest User

TOI_10_PoF

a guest
May 26th, 2015
253
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.63 KB | None | 0 0
  1. #include<stdio.h>
  2. int arr[1005][1005]={0},n,i,r,j,k;
  3. char wrd[1005][2]={'\0'};
  4. int main()
  5. {
  6. scanf("%d",&n);
  7. for(i=1;i<=n;i++)
  8. {
  9. scanf("%s",&wrd[i]);
  10. }
  11. for(r=1;r<=n;r++)
  12. {
  13. for(i=1;i+r-1<=n;i++)
  14. {
  15. j=i+r-1;
  16. if(wrd[i][0]==wrd[j][0]&&i!=j)
  17. {
  18. if(arr[i+1][j-1]+1>arr[i][j])
  19. arr[i][j]=arr[i+1][j-1]+1;
  20. }
  21. else
  22. {
  23. for(k=i;k<j;k++)
  24. {
  25. if(arr[i][k]+arr[k+1][j]>arr[i][j])
  26. arr[i][j]=arr[i][k]+arr[k+1][j];
  27. }
  28. }
  29. //printf("%d %d %d\n",i,j,arr[i][j]);
  30. }
  31. }
  32. printf("%d",arr[1][n]);
  33. return 0;
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement