fork download
  1.  
  2.  
  3. /**
  4.  *
  5.  * @author Nirjhar
  6.  */
  7.  
  8. import java.io.*;
  9. class c2 {
  10. public static void main(String args[])throws IOException
  11. {
  12. int t= Integer.parseInt(br.readLine());
  13.  
  14. while(t>0)
  15. {
  16. String snum=br.readLine();
  17. int l=snum.length();
  18. int num[]= new int[l+1];
  19. for(int i=1;i<num.length;i++)
  20. {
  21. num[i]=snum.charAt(i-1)-48;
  22. }
  23. l=num.length;
  24. int pos=-1;
  25. int i=l-1;
  26. while(true)
  27. {
  28. if(num[0]!=0)
  29. {
  30. if(num[i]==num[l-i-1])
  31. i--;
  32.  
  33. else if(num[i]<num[l-i-1])
  34. {
  35. num[i]=num[l-i-1];
  36. i--;
  37. }
  38. else if(num[i]>num[l-i-1])
  39. {
  40. num[i]=num[l-i-1];
  41.  
  42. add(num,i-1);
  43.  
  44.  
  45. }
  46. if(isPal(num))
  47. {
  48. for(int k=1;k<num.length;k++)
  49. {
  50. if(k==0 && num[0]!=0)
  51. System.out.print(num[k]);
  52. else if(k!=0)
  53. System.out.print(num[k]);
  54. }
  55. System.out.println();
  56. break;
  57.  
  58. }
  59. if(i<0)
  60. break;
  61. }
  62. else
  63. {
  64. if(num[i]==num[l-i])
  65. i--;
  66.  
  67. else if(num[i]<num[l-i])
  68. {
  69. num[i]=num[l-i];
  70. i--;
  71. }
  72. else if(num[i]>num[l-i])
  73. {
  74. num[i]=num[l-i-1];
  75. add(num,i-1);
  76. }
  77. if(isPal(num))
  78. {
  79. for(int k=1;k<num.length;k++)
  80. {
  81. if(k==0 && num[0]!=0)
  82. System.out.print(num[k]);
  83. else if(k!=0)
  84. System.out.print(num[k]);
  85. }
  86. System.out.println();
  87. break;
  88.  
  89. }
  90. if(i<1)
  91. break;
  92. }
  93. }
  94.  
  95. t--;
  96. }
  97. }
  98.  
  99. public static void add(int num[], int i)
  100. {
  101. while(true){
  102. num[i]=(num[i]+1);
  103.  
  104. if(num[i]==10 && i>=0)
  105. {
  106. num[i]=0;
  107. i--;
  108. }
  109. else
  110. return;
  111. }
  112.  
  113.  
  114. }
  115. private static boolean isPal(int num[])
  116. {
  117. if(num[0]!=0)
  118. {
  119. int l=num.length;
  120. for(int i=0;i<=l/2;i++)
  121. {
  122. if(num[i]!=num[l-i-1])
  123. return false;
  124. }
  125. }
  126. else
  127. {
  128. int l=num.length;
  129. for(int i=1;i<=(l+1)/2;i++)
  130. {
  131. if(num[i]!=num[l-i])
  132. return false;
  133. }
  134. }
  135. return true;
  136. }
  137. }
  138.  
  139.  
Runtime error #stdin #stdout #stderr 4.99s 380352KB
stdin
1
6854651546546516549681651685165168516516516516516516546516516851651
stdout
Standard output is empty
stderr
/spoj/java_run: line 9:  2035 CPU time limit exceeded /opt/$VER/bin/java -client -Xbatch -Dfile.encoding=UTF-8 -jar tested.zip