0 / 0 / 0
Регистрация: 08.11.2015
Сообщений: 22

Превышено максимальное время работы программы

08.11.2015, 03:03. Показов 6813. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
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
#include <math.h>
#include <stdio.h>
#include <iostream>
 
using namespace std;
 
 
int main(int argc, char** argv)
{
    int T;
  
    cin >> T;
    
    while(T--)
    {
        int L,R;
        cin >> L >> R;
        int A = 0;
        
        for(int i = L; i <= R; i++){
            if(i%4==0 || i%7==0)
            {
                A = A + 1;
            }
                 
        
        }
        cout << A << endl;
    }
    return 0;
 
}
Превышено максимальное время работы программы, не должно превышать 1 сек, как исправить?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.11.2015, 03:03
Ответы с готовыми решениями:

Превышено время работы
Сабж:почему при загрузке задачи на сервер, выдается ошибка мол превышено время работы программы: Условие задачи:...

Написать программу вычисления величины дохода по вкладу. Процентная ставка (% годовых) и время хранения (дней) задаются во время работы программы
1. Написать программу вычисления величины дохода по вкладу. Процентная ставка (% годовых) и время хранения (дней) задаются во время работы...

Время работы программы
Имеется задача на CodeForces. С идеей ее решения проблем не было. 1)Вот рабочая версия, использующая лишь &quot;Сишные&quot; методы : ...

6
Модератор
Эксперт JS
 Аватар для Eva Rosalene
5241 / 2115 / 416
Регистрация: 06.01.2013
Сообщений: 4,846
08.11.2015, 03:49
Вместо этого
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
int A = 0;
        
        for(int i = L; i <= R; i++){
            if(i%4==0 || i%7==0)
            {
                A = A + 1;
            }
                 
        
        }
        cout << A << endl;

сделать нечто вроде... за точность не ручаюсь, мог ошибиться.
Но суть именно такова:

C++
1
2
3
4
5
6
int L1, L2, L3;
L1 = L % 4 ? L + 4 - L % 4 : L;
L2 = L % 7 ? L + 7 - L % 7 : L;
L3 = L % 28 ? L + 28 - L % 28 : L;
 
cout << ((R - L1 + 1) / 4) +((R - L2 + 1) / 7) - ((R - L3 + 1) / 28) << endl;
Добавлено через 5 минут
Да, там скорее округление должно быть в большую сторону при делении... В общем, суть вы поняли - считать циклом слишком накладно, такие задачи считаются математически.

Добавлено через 28 минут
Итоговый код:
C++
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
#include <iostream>
 
const int D1 = 4, D2 = 7;
 
inline int nearest_multiple (int n, int divider) {
    return n % divider ? n + divider - n % divider : n;
}
 
inline int count_multiplies (int left, int right, int divider) {
    int l = nearest_multiple(left, divider);
    if (l > right) return 0;
 
    return ((right - l) / divider) + 1;
}
 
int main ( ) {
    int times, left, right;
    int l1, l2, l3;
    std::cin >> times;
 
    for (int i = 0; i < times; ++i) {
        std::cin >> left >> right;
 
        std::cout <<
            count_multiplies(left, right, D1)
            + count_multiplies(left, right, D2)
            - count_multiplies(left, right, D1 * D2) <<
        std::endl;
    }
}
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
08.11.2015, 10:20
mGod, причем тут время компиляции?
0
Dimension
595 / 463 / 223
Регистрация: 08.04.2014
Сообщений: 1,710
08.11.2015, 10:45
условие задачи мы должны придумать сами ?
0
2688 / 2260 / 244
Регистрация: 03.07.2012
Сообщений: 8,231
Записей в блоге: 1
08.11.2015, 10:47
Вместо того, чтобы по-человечески сформулировать условие задания (типа олимпиадного теста) ТС предлагает улучшить свой кривой алгоритм. И по этому кривому алгоритму надо восстановить условие, предложить и реализовать новый алгоритм.

Не по теме:

Зачем ТС олимпиадные задачи, если он даже этого понять не может? :(

0
08.11.2015, 10:50

Не по теме:

Цитата Сообщение от zer0mail Посмотреть сообщение
Зачем ТС олимпиадные задачи, если он даже этого понять не может?
Затем же, зачем и депутаты себе докторские плагиатят. Для корочек.

0
2688 / 2260 / 244
Регистрация: 03.07.2012
Сообщений: 8,231
Записей в блоге: 1
08.11.2015, 11:01

Не по теме:

Кому нужны корочки С++ без знаний? Даже если примут на работу/в команду, через пару дней все равно выгонят


Этапы "большого пути".
1. Надо дополнить решение автора
2. Надо написать решение за автора
3. Надо написать решение за автора и объяснить
4. Надо объяснить условие, написать решение за автора и объяснить решение
5. Надо восстановить условие , написать решение за автора и объяснить решение
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
08.11.2015, 11:01
Помогаю со студенческими работами здесь

Время работы программы
как считать?и как микросекунды?именно микросекунды нужны.

Время работы программы
Здорова! Бывает в некоторых задачах нужно сравнить производительность программ, то есть время работы той или иной программы. Как их...

превышено максимальное количество открытых курсоров
Добрый день! Вот с чем я столкнулся - превышено максимальное количество открытых курсоров. Как же быть? Помогите кто может. ...

Тип соединение MYSQL. Превышено максимальное количество соединений
Для работы с БД использую MySQLConnector. Открывается постоянное соединение, которое мне не нужно. Пишу сервис; постоянное соединение не...

Время скрипта превышено
Здравствуйте! Радостно проверяла работающий код, как вдруг появилось сообщение о фатальной ошибке-время скрипта превышает 30 сек. Гугол...


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

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

Новые блоги и статьи
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru