0 / 0 / 0
Регистрация: 13.05.2014
Сообщений: 29
1

Time limit exceeded

04.08.2014, 21:15. Показов 4536. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
http://acm.timus.ru/problem.aspx?space=1&num=1196

Уже все перепробовал, и всегда возникает ошибка "Time limit exceeded" на 8-м тесте.
Кто-нибудь подскажите исходный код решения.

Мое вот(так-то все верно, но во время не укладывается на 8 тесте):
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
public class examscheck {
 
    public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
    List<Integer>teacherlist = new ArrayList();
    
    int countsame = 0;
 
    int count1 = in.nextInt();
    for(int i=0;i<count1;i++){
    
        
        teacherlist.add(in.nextInt());
        
    }
    int count2 = in.nextInt();
    
    for(int m=0;m<count2;m++){
         
        
        if(Collections.binarySearch(teacherlist,in.nextInt())>=0){
            countsame++;
        };
        
        
    }
    
System.out.println(countsame);
 
        
    }
 
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.08.2014, 21:15
Ответы с готовыми решениями:

Time limit exceeded
Решаю задачки на одном сайте, там есть онлайн компилятор. Моя VS справляется, но компилятор с сайта...

Time limit exceeded
Добрый день. Программа - бинарный поиск правой границы в упорядоченном множестве фраз. Возникает...

Timus Time limit exceeded (Bingo!)
Здравствуйте. Второй день уже пытаюсь решить проблемы &quot;Timus, C#, Time limit exceeded&quot;, у меня не...

Матрица инцидентности = Time-limit exceeded
Как переделать программу, чтобы время ее выполнения было &lt;0.250 sec? #include &lt;iostream&gt; using...

3
Эксперт Java
4092 / 3826 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11
04.08.2014, 23:29 2
Лучший ответ Сообщение было отмечено Wolfevg как решение

Решение

Wolfevg, Scanner слишком умный (читай - медленный) для вашей задачи. У вас же точно известно, что будет отдельное число на каждой строке. Можно обойтись обычным BufferedReader + parseInt.
Далее у вас известно количество строк - вы можете сразу выделять массив подходящего размера.
1
52 / 26 / 9
Регистрация: 04.05.2013
Сообщений: 80
05.08.2014, 08:38 3
Даты профессора лучше кидать в Set, и за O(1) проверять входит ли туда дата студента или нет. И как написано выше, от Scanner'а лучше отказаться.
0
0 / 0 / 0
Регистрация: 13.05.2014
Сообщений: 29
05.08.2014, 09:11  [ТС] 4
Воспользовался Вашим советом, спасибо, очень помогло, программа выполнилась всего за 0,3 секунды)
0
05.08.2014, 09:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.08.2014, 09:11
Помогаю со студенческими работами здесь

Acm.timus.ru Time limit exceeded
Добрый день. Сама задача http://acm.timus.ru/problem.aspx?space=1&amp;num=1021 и мое решение: ...

Количество делителей - Time-limit exceeded >1.000
Нужно определить, сколько делителей имеет данное натуральное число? Входные данные: В одной...

Посмотрела в логи - а там execution time limit exceeded by agent
Добрый день Есть много разных агентов, но, если проанализировать логи, то десяток раз за день...

Time limit exceeded Нужно оптимизировать код. ACMP Простые числа Постулат Бертрана
Задача 349 Простые числа из ******** (Время: 0,5 сек. Память: 32 Мб Сложность: 28%) Мое решение:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru