4.24 腾讯笔试质数,为啥本地编译结果正确,提交0ac呀
package test; import java.util.Arrays; import java.util.PriorityQueue; import java.util.Queue; import java.util.Scanner; public class Main{ public static void main(String args[]) { int[] a= {5,10,11,19}; System.out.print( getNumber(a)); } public static int getNumber (int[] a) { // write code here getNumber(100010); // System.out.println( a[1]); Queue<Integer> q1= new PriorityQueue<>(); Queue<Integer> q2= new PriorityQueue<>(); for(int j=0;j<a.length;j++) { q1.add(a[j]); //q2.poll(); } while(q1.size()>1) { // System.out.println( "++++++++++++++"); int c=q1.size(); for(int i=1;i<=c;i++) { if(pan[i]==true) { q1.poll(); // System.out.println(i); } else { q2.add(q1.peek()); //System.out.print(q1.peek() ); q1.poll(); } } int d=q2.size(); for(int j=1;j<=d;j++) { q1.add(q2.peek()); //System.out.print(q2.peek() ); q2.poll(); } //System.out.println( "-----------"); } return q1.peek(); } static boolean[] pan; public static void getNumber (int a) { pan=new boolean[a+1]; pan[1]=true; for(int i=2;i<=a;i++) { for(int j=2;i*j<=a;j++) { pan[i*j]=true; } } } }
#实习#