fork download
  1. import java.io.InputStreamReader;
  2. import java.io.IOException;
  3. import java.io.BufferedReader;
  4. import java.io.OutputStream;
  5. import java.io.PrintWriter;
  6. import java.util.StringTokenizer;
  7. import java.util.Arrays;
  8. import java.io.InputStream;
  9.  
  10. class Main
  11. {
  12. public static void main(String[] args)throws Exception {
  13. InputStream inputStream = System.in;
  14. OutputStream outputStream = System.out;
  15. InputReader in = new InputReader(inputStream);
  16. PrintWriter out = new PrintWriter(outputStream);
  17. Algorithm maker = new Algorithm();
  18. maker.make(in, out);
  19. out.close();
  20. }
  21. }
  22. class Algorithm
  23. {
  24. boolean p[]=new boolean[51];
  25. public void make(InputReader in, PrintWriter out)
  26. {
  27. //try
  28. //{
  29. Arrays.fill(p, true);
  30. p[0]=false;
  31. p[1]=false;
  32. for(int i=2;i<p.length;i++)
  33. {
  34. if(p[i])
  35. {
  36. for(int j=2;(i*j)<p.length;j++)
  37. p[i*j]=false;
  38. }
  39. }
  40. int t=in.nextInt();
  41. for(int l=0;l<t;l++)
  42. {
  43. int r=in.nextInt();
  44. int c=in.nextInt();
  45. char a[][]=new char[r][c];
  46. int ctr=0;
  47. for(int i=0;i<r;i++)
  48. {
  49. String s=in.next();
  50. a[i]=s.toCharArray();
  51. }
  52. for(int i=0;i<r;i++)
  53. {
  54. for(int j=0;j<r;j++)
  55. {
  56. int lctr=0,rctr=0,tctr=0,bctr=0,min=0;
  57. if(a[i][j]!='#')
  58. {
  59. for(int k=j-1;k>=0;k--)
  60. if(a[i][k]!='^')
  61. break;
  62. else
  63. lctr++;
  64. for(int k=j+1;k<c;k++)
  65. if(a[i][k]!='^')
  66. break;
  67. else
  68. rctr++;
  69. for(int k=i-1;k>=0;k--)
  70. if(a[k][j]!='^')
  71. break;
  72. else
  73. tctr++;
  74. for(int k=i+1;k<r;k++)
  75. if(a[k][j]!='^')
  76. break;
  77. else
  78. bctr++;
  79. //System.out.println(i+","+j+" : ["+lctr+","+rctr+","+tctr+","+bctr+",]");
  80. min=(int)Math.min(lctr,Math.min(rctr,Math.min(tctr,bctr)));
  81. }
  82. for(int k=2;k<=min;k++)
  83. {
  84. if(p[k])
  85. {
  86. ctr++;
  87. break;
  88. }
  89. }
  90. }
  91. }
  92. out.println(ctr);
  93. }
  94. /* }
  95. catch(Exception e)
  96. {
  97. out.println(e);
  98. } */
  99. }
  100. }
  101.  
  102. class InputReader {
  103. private BufferedReader reader;
  104. private StringTokenizer tokenizer;
  105.  
  106. public InputReader(InputStream stream) {
  107. reader = new BufferedReader(new InputStreamReader(stream));
  108. tokenizer = null;
  109. }
  110.  
  111. public String next() {
  112. while (tokenizer == null || !tokenizer.hasMoreTokens()) {
  113. try {
  114. tokenizer = new StringTokenizer(reader.readLine());
  115. } catch (IOException e) {
  116. throw new RuntimeException(e);
  117. }
  118. }
  119. return tokenizer.nextToken();
  120. }
  121.  
  122. public int nextInt() {
  123. return Integer.parseInt(next());
  124. }
  125. public long nextLong() {
  126. return Long.parseLong(next());
  127. }
  128. public float nextFloat() {
  129. return Float.parseFloat(next());
  130. }
  131. }
Runtime error #stdin #stdout #stderr 0.09s 380480KB
stdin
5
5 5
^^^^^
^^^^^
^^^^#
^^^^^
^^^^^
5 7
^^#^^^^
^^#^#^#
#^^^^^^
^^#^^#^
^^^^^^^
5 50
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
50 50
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
50 5
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
^^^^^
stdout
Standard output is empty
stderr
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5
	at Algorithm.make(Main.java:57)
	at Main.main(Main.java:18)