Я пытаюсь представить решение (с помощью онлайн-компилятор, который имеет ограничения по времени компиляции) для сортировки в array- здесь мой код snippet-работает время Flush() для вывода потока
class TSORT {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
PrintWriter bw = new PrintWriter(System.out, false);
int t = Integer.parseInt(br.readLine());
int[] list = new int[1000001];
for(int i = 0; i < t; i++){
int n = Integer.parseInt(br.readLine());
list[n]++;
}
int r=0;
for(int i = 0; i < 1000001; i++){
if(list[i] > 0){
for(int j = 0; j < list[i]; j++){
bw.println(i); // if I use bw.flush() here, time limit gets exceeded.
}
}
}
bw.flush();
}
}
Этот код успешно отправляется, но если я использую flush() как true (автоматический сброс new PrintWriter(System.out, true);
), компилятор показывает TIME LIMIT EXCEEDED.
Мой вопрос: как я должен использовать flush()
, чтобы получить наилучшее время компиляции?
Возможно, что может произойти время слияния с очисткой «PrintStream»? –